|
|
|
| Есть таблица news, поля id, date, text
Нужно чтобы в административной новости открывались сразу же для редактирования, т.е. в полях формы <input... value="">...
Нашел тут у вас похожу давнишнюю тему, но там много не то.
Новости выводятся так
<?php
$dbhost = "localhost"; // Хост
$dbuser = "12345"; // Имя пользователя
$dbpassword = "12345"; // Пароль
$dbname = "12345"; // Имя базы данных
$link = mysql_connect($dbhost, $dbuser, $dbpassword);
mysql_select_db($dbname, $link);
$query="SELECT * FROM 'news' ORDER BY `id` ASC LIMIT 0, 30";
$result=mysql_query($query, $link);
echo('<table>');
while ($row = mysql_fetch_row($result)) {
print("<tr><td>". $row[1]. " ' </td>");
print("<td>". $row[2]. " ' </td>");
print("<td>". $row[3]. "</td></tr>");
};
echo('</table>');
mysql_close($link);
?>
На первый взгляд вроде это легко, но чего то неполучается... | |
|
|
|
|
|
|
|
для: Sergeous
(18.03.2007 в 00:55)
| | Не понятно, что вызывает сложности... выводите напротив каждой новостной позиции ссылку
editnews.php?id=$row[id]. В файле editnews.php выполняйте и обрабатывайте запрос
SELECT * FROM news WHERE id = $_GET[id];
Полученные значения подставляйте в атрибут value тэга input. | |
|
|
|
|
|
|
|
для: cheops
(18.03.2007 в 01:52)
| | А вот что значит, мне выводится You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'news WHERE id=2' at line 1 ? | |
|
|
|
|
|
|
|
для: Sergeous
(18.03.2007 в 02:03)
| | Это означает, что в SQL-запросе синтаксическая ошибка перед news - выведите полностью весь запрос в окно браузера - как он сейчас выглядит? | |
|
|
|
|
|
|
|
для: cheops
(18.03.2007 в 12:52)
| | Вот запрос
$query = "SELECT * FROM news WHERE id = $_GET[id]"; | |
|
|
|
|
|
|
|
для: cheops
(18.03.2007 в 12:52)
| | С этим я разобрался, но вот почему изменения не заносятся в базу данных
Осуществляется следующий запрос
$query = "UPDATE news SET text = '".$_POST['name']."', time = '".$_POST['text']."' WHERE id=".$_POST['id']." ";
К запросу попадаем через форму
<form method=post action=edit.php>
<input type=hidden name=id value=1>
<input name=name value=Новость!>
<input name=text value=Сегодня эта новость>
<input type=submit value=Ред.></form>
Это уже готовая новость, факт в том, что изменения не происходит, запрос выполняется, ошибок не пишет, но ничего не происходит... | |
|
|
|
|
|
|
|
для: Sergeous
(18.03.2007 в 21:01)
| | text = (name)
time= (text)
так и должно быть? | |
|
|
|
|
|
|
|
для: Trianon
(18.03.2007 в 21:37)
| | Нет, так не должно быть, но проблема от этого не исчезает
$query = "UPDATE news SET name = '".$_POST['name']."', text = '".$_POST['text']."' WHERE id=".$_POST['id']." "; | |
|
|
|
|
|
|
|
для: Sergeous
(18.03.2007 в 22:00)
| | что показывает echo $query .' / '. mysql_error()? | |
|
|
|
|
|
|
|
для: Trianon
(19.03.2007 в 09:44)
| | В том о и дело, ошибок нникаких не показывает... | |
|
|
|
|
|
|
|
для: Sergeous
(19.03.2007 в 14:09)
| | echo $query в любом случае что-нибудь да должен показать. | |
|
|
|
|
|
|
|
для: Trianon
(19.03.2007 в 14:12)
| | Файлы скрипта... | |
|
|
|
|
|
|
|
для: Sergeous
(19.03.2007 в 14:09)
| | А что за echo $query .' / '. mysql_error()?
Вы имеете ввиду вписать это в код? | |
|
|
|
|
|
|
|
для: Sergeous
(19.03.2007 в 14:21)
| | Я имею в виду следующее.
Не могли бы Вы привести здесь оконечный текст sql-запроса. Такой, каким он приходит внутрь mysql_query(). Потому что не зная запроса, трудно гадать о причинах его неработоспособности.
Как этот текст получить - непринципиально. Наиболее простой способ - выполнить echo $query; сразу перед mysql_query($query);
mysql_error() же выдает причину ошибки. И его тоже стоит хотя бы иногда смотреть. | |
|
|
|
|
|
|
|
для: Trianon
(19.03.2007 в 14:25)
| | К сожалению, так и не понял что нужно привести... чуть выше я выложил файлы скрипта, может быть взгляните?... | |
|
|
|
|
|
|
|
для: Sergeous
(19.03.2007 в 22:38)
| | Ок. Завтра, если никто не опередит.... | |
|
|
|
|
|
|
|
для: Sergeous
(19.03.2007 в 22:38)
| | Имя таблицы изменилось с news на match . При этом в запросе UPDATE Вы не заключили его в `такие` кавычки. А ведь это зарезервированное слово. | |
|
|
|
|
|
|
|
для: Trianon
(20.03.2007 в 09:30)
| | Большое спасибо! Именно в таких кавычках и заключалась проблема! | |
|
|
|