Heres код:С этим вопросом что-то не так?
<?php
$post = htmlspecialchars($_GET["story"]);
$con = mysql_connect("localhost","xxx","xxx");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("xxx", $con);
$sql="
UPDATE `tool` SET
`title` = '".mysql_real_escape_string($_POST['title'])."',
`details` = '".mysql_real_escape_string($_POST['details'])."'
WHERE `id` = $post;";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "<a href=story.php?id=";
echo $post;
echo ">Back to the story</a>";
mysql_close($con)
?>
Итак, сначала позвольте мне описать то, что это должен делать. Предполагается, что это редактирование сообщения для моей системы новостей. Он всегда работал, вплоть до недавнего времени. Я понятия не имею, что я изменил, что заставило его перестать работать. Я пробовал все, что знаю, меняя каждую мелочь и удаляя/добавляя части кода.
Что происходит:
Когда я редактирую пост в первый раз, название, и детали полностью получить уничтожены. Понятия не имею почему. Это происходит только с каждым отдельным сообщением, 1 раз. Если я отредактирую второй раз, он останется прежним, никаких проблем вообще.
Возможно, если вы не найдете явных недостатков в моем вышеприведенном коде, тогда описанная ситуация поможет вам понять, что не так.
Я честно пробовал себя на этом, я не уверен, что происходит. Любая помощь всегда приветствуется.
Существует точка с запятой отсутствует после 'mysql_close ($ CON)' – ThiefMaster
бессмысленные ', используя htmlspecialchars для санобработки запроса. .. –
@ThiefMaster: точка с запятой не требуется в последнем утверждении в блоке. См. Http://www.php.net/manual/en/language.basic-syntax.instruction-separation.php – sdjuan