У меня есть этот код здесь. это дает мне ошибку Синтаксической ошибки, неожиданной T_STRING, ожидающей "," или ";". я хочу иметь возможность отображать сообщение успеха на одной странице, а не открывать другую страницу. пожалуйста помоги.
} else {
$query = "SELECT title, author, post, id FROM news_posts WHERE id=$id";
$result = mysql_query($query);
$num = mysql_num_rows($result);
$row = mysql_fetch_array ($result, MYSQL_NUM);
$title = $row['0'];
$name = $row['1'];
$message = $row['2'];
if ($num == 1) {
echo '
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
<p><b>Post Title :</b><br />
<input type="text" class="form-control" name="title" value="'.$title.'" /></p>
<p><input type="hidden" name="name" size="15" maxlength="255" value="'.$name.'" /></p>
<p><b>Post Message :</b><br /><textarea rows="7" class="form-control" name="message">'.$message.'</textarea></p>
<p><input type="button" value="Back" onclick="history.back()"> <input type="submit" name="submit" value="Submit" /></p>
<input type="hidden" name="submitted" value="TRUE" /></p>
<input type="hidden" name="id" value="'.$id.'" /></form>';
} else {
echo 'News post could not be edited, please try again.';
}
}
?>
Это потому, что одинарные кавычки вокруг PHP_SELF прерывают одинарные кавычки в вашем эхом. Попробуйте это вместо этого:
<form action="' . $_SERVER['PHP_SELF'] . '" method="post">
mysql_query
. Это настолько ужасно и опасно, что его удалили в PHP 7. Заменить, например, PDO, нетрудно для изучения, а в руководстве, таком как PHP, «Правильный путь» объясняются лучшие практики. Ваши пользовательские данные не экранированы должным образом, есть ошибки внедрения SQL и могут быть использованы.