Всем доброго дня. Написал скрипт обновления данных: PHP: <?php $hostname = "localhost"; $username = "root"; $password = ""; $dbName = "personal"; $table = "promo"; mysql_connect($hostname, $username, $password) or die ("Не могу создать соединение"); mysql_select_db($dbName) or die (mysql_error()); if(@$submit_edit) { $query = "UPDATE $table SET fname='$fname', sname='$tname', tname='$tname', date_birth='$date_birth', pas_ser='$pas_ser', pas_num='$pas_num',vidan_who='$vidan_who',vidan_when='$vidan_when',liveplace_city='$liveplace_city', liveplace_street='$liveplace_street',liveplace_house='$liveplace_house',liveplace_flat='$liveplace_flat', flat_phone='$flat_phone',mobile_phone='$date_birth',drive_lic='$drive_lic',WHERE id='$update'"; mysql_query($query) or die (mysql_error()); } $q = "SELECT * FROM $table"; $res = mysql_query($q) or die(mysql_error()); $row = mysql_num_rows($res); echo (" <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> <html xmlns=\"http://www.w3.org/1999/xhtml\"> <head> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" /> <title>Редактирование и обновление данных</title> <style type=\"text/css\"> <!-- body { font: 12px Georgia; color: #666; } h3 { font-size: 16px; text-align: center; } table { width: 400px; border-collapse: collapse; margin: 5px auto; background: #E6E6E6; } td { padding: 3px; vertical-align: middle; } input { width: 250px; border: solid 1px #CCC; color: #FF6666; } textarea { width: 250px; height: 100px; border: solid 1px #CCC; color: #FF6666; } .buttons { width: auto; border: double 1px #666; background: #D6D6D6; color: #000; } #num { width: 20px; text-align: right; margin-right: 5px; float: right; } --> </style> </head> <body> <h3>Редактирование и обновление данных в таблице</h3> "); while ($row = mysql_fetch_array($res)) { echo "<form action=\"update_data.php\" method=\"post\" name=\"edit_form\">\n"; echo "<input type=\"hidden\" name=\"update\" value=\"".$row["id"]."\" />\n"; echo "<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\">\n"; echo "<tr>\n"; echo "<td colspan=\"2\" style=\"border-bottom:solid 1px #CCCCCC;\"><b><i><div id=\"num\">#".$row["id"]."</div>".$row['data']."</b></i></td>\n"; echo "</tr><tr>\n"; echo "<td>Фамилия :</td><td><input type=\"text\" value=\"".$row['sname']."\" name=\"sname\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Имя :</td><td><input type=\"text\" value=\"".$row['fname']."\" name=\"fname\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Отчество :</td><td><input type=\"text\" value=\"".$row['tname']."\" name=\"tname\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Дата рождения :</td><td><input type=\"text\" value=\"".$row['date_birth']."\" name=\"date_birth\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Номер паспорта :</td><td><input type=\"text\" value=\"".$row['pas_num']."\" name=\"pas_num\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Серия паспорта :</td><td><input type=\"text\" value=\"".$row['pas_ser']."\" name=\"pas_ser\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Кем выдан :</td><td><input type=\"text\" value=\"".$row['vidan_who']."\" name=\"vidan_who\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Когда выдан :</td><td><input type=\"text\" value=\"".$row['vidan_when']."\" name=\"vidan_when\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Город проживания :</td><td><input type=\"text\" value=\"".$row['liveplace_city']."\" name=\"liveplace_city\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Улица :</td><td><input type=\"text\" value=\"".$row['liveplace_street']."\" name=\"liveplace_street\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Дом :</td><td><input type=\"text\" value=\"".$row['liveplace_house']."\" name=\"liveplace_house\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Квартира :</td><td><input type=\"text\" value=\"".$row['liveplace_flat']."\" name=\"liveplace_flat\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Домашний телефон :</td><td><input type=\"text\" value=\"".$row['flat_phone']."\" name=\"flat_phone\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Мобильный телефон :</td><td><input type=\"text\" value=\"".$row['mobile_phone']."\" name=\"mobile_phone\" /></td>\n"; echo "</tr><tr>\n"; echo "<td>Водительские права :</td><td><input type=\"text\" value=\"".$row['drive_lic']."\" name=\"drive_lic\" /></td>\n"; echo "</tr><tr>\n"; echo "<td colspan=\"2\" align=\"center\"><input type=\"submit\" name=\"submit_edit\" class=\"buttons\" value=\"Сохранить изменения\" /></td>\n"; echo "</tr></table></form>\n\n"; } mysql_close(); echo ("<div style=\"text-align: center; margin-top: 10px;\"><a href=\"index.php\">Вернуться назад</a></div>"); ?> в чем ошибся, подскажите пожалуйста? Данные забирает нормально, но не обновляет (( Всем спасибо)
Замени тег Код (Text): на тег [php], пожалуйста. Зеленые строчки, они так однообразны :( убери @ из if(@$submit_edit) { - и никогда не ставь. Тогда ты увидишь нотайс, повествующий о том, что нет никакого $submit_edit. И его действительно нет. Есть $_POST['submit_edit']. А в идеале даже isset($_POST['submit_edit'])
извинись за такую простыню и убери ее. раздели сохранение и вывод на два файла. тогда самому будет понятнее, не только нам. последовательно проходи отладку: - есть ли соединение с базой - принимаются ли параметры и как - как выглядит запрос после его формирования
учебник выкинуть - он от царя гороха. http://phpfaq.ru/globals и УБЕРИ простыню. от которой разъезжается страница.
да убрал..... у меня все в норме отображается.... теперь ошибочка: 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 'WHERE id=''' at line 1
1Touch2Heaven для проверки напиши echo $query посмотри какой запрос ты получаешь и проверь его, правильно ли там все...
всё окей... пошел по другому пути и разбил ввод и сохранение на 2 файла.... все заработала и конструкция, действительно, стала понятней... спасибо... что бы я без Вас делал - ума не приложу... P.S. учебник у меня действительно какое-то гуано.... сейчас за новым поеду....
1Touch2Heaven 1. Запрос не безопасен (можно провести SQL-инъекцию) - читаем про http://www.php.net/mysql_real_escape_string 2. http://www.phpfaq.ru/globals - Вы изменили названия переменных? 3. Целые числа можно не брать в кавычки