У меня проблемы с решением этого. Вот так, предположим, что у меня есть 5 книг в базе данных, я mysql_fetch_array
их, выполнив некоторое while
затем mysql_fetch_array
предположим, что создаю таблицу. Это сюжет
echo"
<td>
<form action='bookext.php' method='post'>
<input type='submit' value='".$row['book_title']."' style='border: 0; background: transparent';>WHAT TO PUT HERE</form></td>";
$row['book_title']
отлично работает, потому что он должен отображать то, что является названием книги в базе данных. Но как я могу получить это уникальное значение, которое является book_id
и отправить его в bookext.php
?
PS: Извините за мой титул, я не могу вытащить правильный английский
Прежде всего ваш текущий вход требует атрибута имени:
"<input type='submit' name="title" value='".$row['book_title']."' style='border: 0; background: transparent';>WHAT TO PUT HERE</form></td>";
Поскольку вы используете метод POST, это гарантирует, что значение доступно в массиве $_POST
, например $_POST['title']
.
Для идентификатора вы можете добавить скрытый ввод в свою форму:
"<input type='hidden' name='book_id' value='".$row['book_id']."'>"
Это будет доступно вам в $_POST['book_id']
при $_POST['book_id']
.
echo
название книги на опубликованной странице :(
$_POST['book_title']
на опубликованной странице, это сработает.
Просто вставьте скрытое поле в свою форму
<input type="hidden" name="POST_NAME" value="YOUR_VALUE_TO_IDENTIFY">
Не используйте формы в таблицах.
<form action='bookext.php' method='post'>
<table>
<tr>
<?php foreach($books AS $book){ ?>
<td>
<button type="submit" name="bookId" value="<?php echo $book['id']; ?>">
Title of the book
</button>
</td>
<?php } ?>
</tr>
</table>
</form>
bookext.php
<?php
$id = $_POST['bookId'];
buttons
для этого, на самом деле лучше, чем иметь дело со hidden
вводами
name
, напримерname="title"
name
?