Я пытался решить эту проблему и мне нужна помощь. У меня есть пользователь, который входит в систему, и я передаю эту переменную через сеансы. Основными страницами являются шаблоны, которые заполняются на основе поиска по ключевым словам (я передаю переменную как POST) и заполняем на основе информации в базе данных. Теперь я создаю способ для комментариев пользователей. Ниже моя основная форма. Я застреваю, когда хочу передать одно из значений базы данных. Я назову это $ место для этого объяснения.
while($row = mysqli_fetch_array($result)) {
$place=$row['place'];}
<form action="post_comment.php" method="POST">
<textarea name="comment" cols="50" rows="6" placeholder="Give Your Review!"></textarea><br/>
<input type="submit" value="Comment" class="btn btn-custom" role="button"/>
</form>
в post_comment.php у меня есть следующее
$ query = «ВЫБЕРИТЕ отображаемое имя из пользователей, ГДЕ id = ‘». $ _ SESSION [‘ id ‘]. «‘ LIMIT 1»;
$result2 = mysqli_query($link,$query);
$row = mysqli_fetch_array($result2);
$name=$row['name'];
$query="INSERT INTO `comments` (`comment`, `user`, `place`) VALUES ('".mysqli_real_escape_string($link, $_POST['comment'])."', '".mysqli_real_escape_string($link, $name)."', '".mysqli_real_escape_string($link, $place)."'";
mysqli_query($link, $query);
Может кто-нибудь объяснить, как перенести $ place на post_comment?
Спасибо!
Гадать $place
это идентификатор, я бы написал его в форме как скрытое поле, а затем вы можете прочитать его в своем посте.
Таким образом, вы бы написали свою форму так:
<form action="post_comment.php" method="POST">
<input type="hidden" name="place" value="<? echo $place; ?>" />
<textarea name="comment" cols="50" rows="6" placeholder="Give Your Review!"></textarea><br/>
<input type="submit" value="Comment" class="btn btn-custom" role="button"/>
</form>
Там нет проблем с вашим $name
переменная.
Однако для $place
Вы можете использовать сессию PHP. Использование PHP-сессии более безопасно, чем использование скрытого поля, если у вас есть конфиденциальная информация. Наличие скрытого поля позволит пользователям вручную редактировать информацию с помощью Inspect Element.
1st PHP File
while($row = mysqli_fetch_array($result)) {
$place=$row['place'];}
session_start();
$_SESSION["place"] = $place;
post_comment.php
session_start(); //include at the start of your PHP Script
$comment = mysqli_real_escape_string($link, $_POST['comment']);
$name = mysqli_real_escape_string($link, $_POST["name"]);
$place = mysqli_real_escape_string($link, $_SESSION["place"]);
$query="INSERT INTO `comments` (`comment`, `user`, `place`) VALUES ('$comment', '$name', '$place')";