Доброго времени суток друзья. Не получается почему-то обновить данные, которые вытаскиваю из бд по средствам формы. Вот код: Код (Text): <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>title</title> <link rel="stylesheet" href="style.css" type="text/css" /> </head> <body> <center> <?php //Хост подключения к БД define('PHP_HOST', 'localhost'); //Пользователь define('PHP_USER', 'root'); //Пароль define('PHP_PASS','11111'); //Базаданных define('PHP_DB', 'database'); // Подключение к СУБД $link = mysql_connect(PHP_HOST, PHP_USER, PHP_PASS) or die (mysql_error()); // Выбираем базу данных mysql_select_db(PHP_DB, $link); mysql_query ("SET NAMES utf8"); mysql_query ("set character_set_client='utf8'"); mysql_query ("set character_set_results='utf8'"); mysql_query ("set collation_connection='utf8_general_ci'"); if (isset($_POST["edit"])) { $_POST['id'] = $id; $_POST['date'] = $date; $_POST['news'] = $news; $_POST['comments'] = $comments; $_POST['kef'] = $kef; $_POST['result'] = $result; //Редактируем данные $update_sql = "UPDATE live SET date='$date', news='$news', comments='$comments', kef='$kef', result='$result' WHERE id='$id'"; mysql_query($update_sql) or die("Ошибка вставки" . mysql_error()); echo '<p>Запись успешно обновлена!</p>'; } $sql= "SELECT * FROM live ORDER BY id DESC"; // Скармливаем наш запрос MySQL $result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql); // Рисуем табличку $table = "<table class=simple-little-table cellspacing=0 align=center>\n"; $table .= "<tr>\n"; $table .= "<th><center>ID</center></th>\n"; $table .= "<th><center>Время</center></th>\n"; $table .= "<th><center>Событие</center></th>\n"; $table .= "<th><center>Комментарии</center></th>\n"; $table .= "<th><center>КФ</center></th>\n"; $table .= "<th><center>Результат</center></th>\n"; $table .= "<th><center>Редактировать</center></th>\n"; $table .= "<form method=post action=edit.php>\n"; while ($row = mysql_fetch_assoc($result)) { $table .= "<tr>\n"; $table .= "<td><input type=text size=2 name=id value=\"$row[id]\"></td>\n"; $table .= "<td><input type=text size=2 name=date value=\"$row[date]\"></td>\n"; $table .= "<td><input type=text size=54 name=news value=\"$row[news]\"></td>\n"; $table .= "<td><input type=text size=18 name=comments value=\"$row[comments]\"></td>\n"; $table .= "<td><input type=text size=2 name=kef value=\"$row[kef]\"></td>\n"; $table .= "<td><input type=text size=6 name=result value=\"$row[result]\"></td>\n"; $table .= "<td><input name=edit type=submit value=Изменить></td>\n"; $table .= "</tr>\n"; } $table .= "</form>\n"; $table .= "</table>\n"; // Выводим заполненую таблицу на экран echo $table; ?> </center> </body> </html> В итоге мне выдаёт Подскажите пожалуйста, в чём проблема, понять не могу..
Как все запущено((( Где prognoz match если выполняется апдейт который в этом коде? Подсказывать не буду учись читать маны http://php.ru/manual/function.mysql-set-charset.html http://php.ru/manual/function.mysql-real-escape-string.html
Я только учусь, prognoz, match - эти переменные раньше были, я их поменял.. подскажите пожалуйста в чём проблема, уже пол дня сижу.. Для меня сейчас степень защищенности скрипта не важна, мне сначала нужно, чтобы это хотя бы заработало)
У тебя sql дает ошибку. Выведи на экран echo $update_sql и выполни в базе. Думаю сразу увидишь ошибку.
Подставил одинарные кавычки к переменным. и теперь мне пишет, что Данные успешно добавлены, но на самом деле они не изменяются.. что теперь не так?))..
У тебя хотя бы элементарные знания имеются? Покажи sql с данными на пр. UPDATE `live` SET `id`=1,`date`='2014-06-02',`match`='dasd',`prognoz`=''dd',`kef`='sdasd',`result`='2' WHERE `id`= 1 Только не говори что ты пытаешься обновить данные не подставляя данные((( Зачем id обновлять? Может стоит книжку почитать?
Ну вообще имелись три года назад id убрал, запрос вот: UPDATE `live` SET `date`='2014-06-15',`match`='Финал. Теннис.',`prognoz`=''Победа Надаля',`kef`='1.86',`result`='Выигрыш' WHERE `id`= 1 Значения берутся из бд, заносятся в текстбоксы, там я их редактирую и пытаюсь обновить.. но теперь они просто не обнавляются, а ошибок нет).. но ведь я подставляю переменные в запрос
((( Sice, я верю в твои способности в тебе сокрыт удивительный талант развивай его и ты постигнешь великий дзен.
Сейчас понял, вот что. У меня 4 записи. Редактирование Работает только с первым айди. Нажимая кнопки на другие записи, он везде подставляет id=1. почему ? Добавлено спустя 3 минуты 39 секунд: Всё, разобрался. Нужно было форму внутри цикла засунуть. Спасибо всем большое