Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка идентификации? в ленте новостей нельзя редактировать 
:(
    Опции темы
*^angel^*
  Дата 6.1.2005, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 5.3.2003
Где: Столица нашей нео бъятной Родины

Репутация: нет
Всего: нет



Добрый день!

Недавно начала изучать PHP. Необходимость возникла по причине сдачи диплома летом.
Мне необходимо разработать web-интерфейс, который позволял бы добавлять/ редактировать/ удалять новости.
Технологии - php и MySQL.

Я практически все сделала, но с редактированием новостей у меня не получается. При нажатии на ссылку "редактировать новость" отображается форма, содержащая соответствующую информацию выбранной новости (все корректно). Но после нажатия на кнопку "редактировать" появляется информация об ошибки идентификации переменных, при этом сообщение, что новость изменена появляется.
Помогите плиз разобраться. smile
вот исходники:
код формы
Код
<?php
 
 include "../config.php";
 // Извлекаем из таблицы news запись, соответствующую
 // исправляемой новостной позиции
 $query = "SELECT * FROM news
           WHERE id_news=".$_GET['id_news'];
 $new = mysql_query($query);
 if($new)
 {
   $row = mysql_fetch_array($new);
   // Берём информацию для оставшихся переменных из базы данных
   $zagolov = $row['zagolovok'];
   $info = $row['info'];
   $_GET['id_news'] = $row['id_news'];
   $id = $row['id_news'];
// Включаем HTML-форму в полях, которой будут размещены
   // редактируемая информация из таблицы news
?>
   <form action="editnews.php" method="post" name=editform>
<table cellspacing="0" cellpadding="0" border="0" width="500">
 <tr>
     <td align="left" valign="top">Id:</td>
     <td><input disabled type="text" name="id" size="10" value="<?php echo $id; ?>"></td>
 </tr>
 <tr>
     <td width="200" align="left" valign="top">Заголовок новости:<br></td>
     <td width="300"><input type="text" name="ezagolov" size="30" maxlength="255" value="<?php echo $zagolov; ?>"></td>
 </tr>
 <tr>
     <td align="left" valign="top">Текст новости:</td>
     <td><textarea cols="35" rows="20" name="einfo"><?php echo $info; ?></textarea></td>
 </tr>
 <tr>
     <td>&nbsp;</td>
     <td><input type="submit" name="edit" value="Редактировать"></td>
 </tr>
</table>
</form>
 <?}
 else puterror("Ошибка запроса к таблице новостей.");
?>


код скрипта, который заполняет форму
Код
<?php
include "../config.php";
/* Проверим - достаточно ли информации для занесения в базу данных
if(empty($_POST['zagolov'])) links("Отсутствует заголовок");
if(empty($_POST['info'])) links("Содержание не введено");*/

/* Заменяем одинарные кавычки обратными, чтобы избежать конфликта
// при добавлении информации в таблицу
$_POST['zagolov'] = str_replace("'", "`", $_POST['zagolov']);
$_POST['info'] = str_replace("'", "`", $_POST['info']);*/

// Формируем и выполняем SQL-запрос на обновление новости
 $query = "UPDATE $userstable
    SET zagolovok='".$_POST['zagolov']."',
               info='".$_POST['info']."',
   d_o_n=now()
           WHERE id_news='".$_POST['id_news']."'";
 $new = mysql_query($query) or die(mysql_error());
 if($new)
 {
echo "<b>Новость отредактирована и внесена в базу данных.</b><br>";
echo "<a href=\"index-a.php\">Перейти на страницу администрирования новостей</a>";
 }
?>


а вот ошибка:
Код

Notice: Undefined index: zagolov in z:\home\wssite00.ru\www\admin\editnews.php on line 28

Notice: Undefined index: info in z:\home\wssite00.ru\www\admin\editnews.php on line 29

Notice: Undefined index: id_news in z:\home\wssite00.ru\www\admin\editnews.php on line 31
Новость отредактирована и внесена в базу данных.
Перейти на страницу администрирования новостей


Очень нужно решить эту проблему.
Заранее спасибо.

PM MAIL ICQ   Вверх
Secandr
Дата 6.1.2005, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



А где у тебя подключение к бд?


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
IZ@TOP
Дата 6.1.2005, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Цитата
<td width="300"><input type="text" name="ezagolov" size="30" maxlength="255" value="<?php echo $zagolov; ?>"></td>

Ищменить имя на zagolov.
Цитата
<td><textarea cols="35" rows="20" name="einfo"><?php echo $info; ?></textarea></td>

изменить имя на info.
Цитата
<td><input disabled type="text" name="id" size="10" value="<?php echo $id; ?>"></td>

изменить имя на id_news.
Добавлено @ 17:37
Secandr, тут видны ошибки идентификации переменных а не подключения к базе smile надо рыть именно в них smile


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Secandr
Дата 6.1.2005, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



IZ@TOP логично


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
*^angel^*
Дата 6.1.2005, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 5.3.2003
Где: Столица нашей нео бъятной Родины

Репутация: нет
Всего: нет



Исправила
практически помогло...

сейчас ругается на строку WHERE id_news='".$_POST['id_news']."'"; во втором коде.
PM MAIL ICQ   Вверх
Mal Hack
Дата 6.1.2005, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



А че за ошибку-то пишет?
Попробуй так: WHERE id_news=".$_POST['id_news']."";

PM ICQ   Вверх
IZ@TOP
Дата 6.1.2005, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Попробуй так:

Код

$query = "UPDATE $userstable".
   " SET zagolovok='".mysql_escape_string($_POST['zagolov'])."',".
   " info='".mysql_escape_string($_POST['info'])."',".
   " d_o_n=now() WHERE id_news=".intval($_POST['id_news']);



--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
*^angel^*
Дата 6.1.2005, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 5.3.2003
Где: Столица нашей нео бъятной Родины

Репутация: нет
Всего: нет



2 IZ@TOP
сейчас попробую

2 Mal Hack
пишет:
Parse error: parse error in z:\home\wssite00.ru\www\admin\editnews.php on line 31
Добавлено @ 18:01
31-ая строка содержит как раз условие, которое я указала выше.
Добавлено @ 18:03
не получается.. говорит синтаксис неправильный..
вот:
Notice: Undefined index: id_news in z:\home\wssite00.ru\www\admin\editnews.php on line 31
You have an error in your SQL syntax near '' at line 5


ps на то же условие ругается smile
PM MAIL ICQ   Вверх
Mal Hack
Дата 6.1.2005, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



WHERE id_news=".$_POST['id_news'];
PM ICQ   Вверх
*^angel^*
Дата 6.1.2005, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 5.3.2003
Где: Столица нашей нео бъятной Родины

Репутация: нет
Всего: нет



2 IZ@TOP
вставила... ругается:
Notice: Undefined index: id_news in z:\home\wssite00.ru\www\admin\editnews.php on line 30
Новость отредактирована и внесена в базу данных.
Перейти на страницу администрирования новостей

Добавлено @ 18:08
2 Mal Hack
говорит синтаксис неверный:
Notice: Undefined index: id_news in z:\home\wssite00.ru\www\admin\editnews.php on line 31
You have an error in your SQL syntax near '' at line 5
PM MAIL ICQ   Вверх
IZ@TOP
Дата 6.1.2005, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



*^angel^*, проверь еще раз форму и имена, может у тебя имя идентификатора новости не id_news а там id_nwes... и сделай print_r($_POST), посмотри что получится и сделай выводы.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
*^angel^*
Дата 6.1.2005, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 5.3.2003
Где: Столица нашей нео бъятной Родины

Репутация: нет
Всего: нет



Ура!
все получилось... я в форме убрала вывод id_news, из-за этого ничего не получалось.

Спасибо ВАМ огромное smile)

еще вопросик появился - а можно не используя javascript сделать окно фиксированное и убрать меню и панели?
PM MAIL ICQ   Вверх
IZ@TOP
Дата 6.1.2005, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



*^angel^*, нельзя.
PS один топик - один вопрос.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0604 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.