Доброго времени суток. Прошу подсказки, как сделать редактирование записи. вот то, что уже есть(вывод нужной строки из таблицы): Код (Text): <?php include ('connect.php'); $sql = mysql_query("SELECT * FROM posts WHERE id=".$_GET['id']); if($sql) { echo '<form action="change.php" method="post">'; echo "<h4>Заголовок:</h4>"; while($res = mysql_fetch_array($sql)) { echo '<input type = "text" name = "topic" value = "'.htmlspecialchars($res['topic'],ENT_QUOTES).'"><br>'; echo '<h4>Текст:</h4><textarea name = "content" >'.htmlspecialchars($res['content'],ENT_QUOTES).'</textarea><br>'; echo '</form>'; } } else { echo "<p><b>Error: ".mysql_error()."</b><p>"; exit(); } ?> // до этого места был обычный вывод из таблицы, а вот дальше примерный код ввода, // только нужно на кнопку повесить ввод, как это сделать не соображу пока, прошу у вас подсказки. // <? $topic = $_POST['topic']; $content = $_POST['content']; $sql = 'INSERT INTO posts(topic, content) VALUES("'.$topic.'", "'.$content.'")'; if(!mysql_query($sql)) {echo '<center><p><b>Ошибка при добавлении данных!</b></p></center>';} else {echo '<center><p><b>Данные добавлены!</b></p><br><br><a href=newpost.php>Добавить еще одну запись</a><br><a href=admin.php>на главную</a></center>';} ?>
Так, запрос сделал вроде работает, только после нажатия на кнопку, сохраняется пустая строка, любая запись становится пустой, ощущение, что ничего в нее не передается после редактирования, но тогда почему запись пустая становится? вот код: Код (Text): <?php include ('connect.php'); $sql = mysql_query("SELECT * FROM posts WHERE id=".$_GET['id']); if($sql) { echo '<form action="change.php" method="post">'; echo "<h4>Заголовок:</h4>"; while($res = mysql_fetch_array($sql)) { echo '<input type = "text" name = "topic" value = "'.htmlspecialchars($res['topic'],ENT_QUOTES).'"><br>'; echo '<h4>Текст:</h4><textarea name = "content" >'.htmlspecialchars($res['content'],ENT_QUOTES).'</textarea><br>'; echo '</form>'; } } else { echo "<p><b>Error: ".mysql_error()."</b><p>"; exit(); } ?> <? $topic = $_POST['topic']; $content = $_POST['content']; $upd = "UPDATE posts SET topic='".$topic."', content='".$content."' WHERE id=".$_GET['id']; echo '<form action="" method="post"><input type="submit" value="сохранить"></form>'; if(!mysql_query($upd)) {echo '<center><p><b>Ошибка при добавлении данных!</b></p></center>';} else {echo '<center><p><b>Данные добавлены!</b></p><br><br><a href=newpost.php>Добавить еще одну запись</a><br><a href=admin.php>В начало</a></center>';} ?> Да и еще, после нажатия кнопки форма опять вылезает, но пустая. И похоже именно в этот момент запись в базу и происходит) а как на кнопку апдэйт повесить? Или тут вообще другая ошибка?
а когда ты сабмитишь форму, откуда у тебя берется $_GET['id']? <offtop> блин, что за каша в коде? </offtop>
не совсем понял вопрос из пути он берется указывается в admin.php, при выборе записи из списка там такой код Код (Text): include ('connect.php'); $sql= "SELECT * FROM posts"; $res=mysql_query($sql); echo 'Выбранные данные:'; while ($inf=mysql_fetch_array($res)) { echo "<table border=3 width=400px><tr><td>".$inf['topic']."</td><td width=50px><a href=change.php?id=".$inf['id'].">edit</a></td><td width=50px><a href=delpost.php?id=".$inf['id'].">удалить</a></td></tr></table>"; } Вот где ссылка в коде, туда id добавляю. Если ты об этом спрашивал Про кашу это да.
спс Мамонт) только это у меня есть уже(мое 2е сообщение) по клику обновление страницы происходит, но в базе пустая строка(