Я пытаюсь написать проект PHP. На этом сайте люди могут обмениваться фотографиями путем входа в систему, а фотографии отображаются в index.php, который является главной страницей программы. Теперь у меня есть три пользователя и изображения пользователей базы данных. может предоставить пользователям возможность делиться фотографиями, сохраняя информацию о фотографиях, а затем извлекать их из базы данных из таблицы изображений. Теперь я хочу предоставить пользователю возможность сделать комментарий о фотографии на главной странице. Есть текстовое поле и сообщение под изображениями. Но когда я делаю комментарий для изображения, он регистрируется не только связанным идентификатором изображения, но и другими идентификаторами изображения. Почему это происходит?Почему я не могу отправить только один комментарий в PHP?
Вот некоторая часть PHP-кода, я также открываю и закрываю соединение с базой данных в необходимых частях.
while($x < mysql_num_rows($result))
{
$picid=mysql_result($result, $x, 'id');
$name=mysql_result($result, $x, 'imageName');
$date=mysql_result($result, $x, 'imageDate');
echo "<div><img src = 'upload/$name' height='300 width='300' /></div>";
echo "Name: $name Date: $date";
echo "<br/>";
?>
<p>Post a Comment</p>
<form action="<?= $_SERVER['PHP_SELF']?>" method="POST">
<textarea name="message" cols="70" rows="6" placeholder="Enter a comment">
</textarea><br/><br/><br/><br/><br/><br/>
<input type="submit" name="submit" value="Post" style="float:left"><br/><br/>
<br/>
</form>
<!--<textarea name="message" cols="70" rows="6" ></textarea><br/><br/><br/><br/>
<br/><br/>-->
<?php
extract($_REQUEST);
if (isset($submit)) {
$y=0;
$email=$_SESSION['email'];
$asdf = mysql_query("SELECT * from users WHERE email='$email'");
//var_dump(mysql_error());
while($y<mysql_num_rows($asdf))
{
$iduser=mysql_result($asdf,$y,'id');
$y++;
}
echo "$iduser";
$sql ="INSERT INTO messages (id_user, message,picid) VALUES
('$iduser','$message','$picid');";
$rslt = mysql_query($sql);
if ($rslt== false) {
echo '<p>Error: cannot execute query</p>';
}
} ?>
<?php
$x++;
}
yourpage.com?message= '); УДАЛИТЬ * ОТ сообщений # –
Почему это в цикле while. – Orangepill
@ Находите сначала первое, чтобы получить количество фотографий из таблицы изображений базы данных. Второй, для которого пользователь отправляет этот комментарий, чтобы найти пользователя из таблицы пользователей с совпадением с текущим пользователем. – user1548222