Правила Форума редакция от 22.06.2020 |
|
|
|
|
|
Опции темы | Опции просмотра | Language |
20.02.2008, 16:46 | #1 |
Неактивный пользователь
Пол: Регистрация: 31.12.2006
Сообщений: 4
Репутация: 1
|
Не выполняется запрос
Пишу запрос на обновление строки в базе, переменные все присутствуют, но если в 1 форме в теге
Код:
<form method = "post"> Код:
<? require_once ("config.php"); //////////////////////////////////////////////// $phone = mysql_query ('SELECT * FROM phones where phone_id = '.$_GET['id']); $result = mysql_fetch_array ($phone); //print_r ($_GET); //print_r ($result); ?> <form method = "post"> <table border = 1> <td>Имя<td>параметр<tr> <td> Ф.И.О. <td> <input type = "text" name = "name" size = 50 value = "<?=$result['name'];?>"> <tr> <td> Дисл (служебное поле) <td> <input type = "text" name = "disl" size = 50 value = "<?=$result['disl'];?>"> <tr> <td> Департ (служебное поле) <td> <input type = "text" name = "depart" size = 50 value = "<?=$result['depart'];?>"> <tr> <td> Должность <td> <input type = "text" name = "rank" size = 50 value = "<?=$result['rank'];?>"> <tr> <td> IP-адрес <td> <input type = "text" name = "ip" size = 50 value = "<?=$result['ip'];?>"> <tr> <td> Имя компьютера <td> <input type = "text" name = "pc_name" size = 50 value = "<?=$result['pc_name'];?>"> <tr> <td> Дата уст. компьютера <td> <input type = "text" name = "pc_date" size = 50 value = "<?=$result['pc_date'];?>"> <tr> <td> Инвент. номер комп-ра <td> <input type = "text" name = "pc_inv" size = 50 value = "<?=$result['pc_inv'];?>"> <tr> <td> Логин <td> <input type = "text" name = "login" size = 50 value = "<?=$result['login'];?>"> <tr> <td> Пароль <td> <input type = "text" name = "pass" size = 50 value = "<?=$result['pass'];?>"> <tr> <td> № СИМ-карты <td> <input type = "text" name = "sim" size = 50 value = "<?=$result['sim'];?>"> <tr> <td> Телефон <td> <input type = "text" name = "phone" size = 50 value = "<?=$result['phone'];?>"> <tr> <td> IP-телефон <td> <input type = "text" name = "phone_ip" size = 50 value = "<?=$result['phone_ip'];?>"> <tr> <td> Мобильный телефон <td> <input type = "text" name = "phone_mob" size = 50 value = "<?=$result['phone_mob'];?>"> <tr> <td> E-mail <td> <input type = "text" name = "e_mail" size = 50 value = "<?=$result['e_mail'];?>"> <tr> <td> Добавочный тел. <td> <input type = "text" name = "phone_add" size = 50 value = "<?=$result['phone_add'];?>"> <tr> <td> Адрес <td> <input type = "text" name = "adress" size = 50 value = "<?=$result['adress'];?>"> <tr> </table> <input type = "hidden" name="TxtPhone" value="<?=$_GET['TxtPhone']?>"> <input type = "hidden" name="LstDisl" value="<?=$_GET['LstDisl']?>"> <input type = "hidden" name="LstDepart" value="<?=$_GET['LstDepart']?>"> <? //print_r($_POST); $query = "UPDATE phones SET name = '".$_POST['name']."', disl = ".$_POST['disl'].", depart = ".$_POST['depart'].", rank = '".$_POST['rank']."', ip = '".$_POST['ip']."', pc_name = '".$_POST['pc_name']."', pc_date = '".$_POST['pc_date']."', pc_inv = '".$_POST['pc_inv']."', login = '".$_POST['login']."', pass = '".$_POST['pass']."', sim = '".$_POST['sim']."', phone = '".$_POST['phone']."', phone_ip = '".$_POST['phone_ip']."', phone_mob = '".$_POST['phone_mob']."', e_mail = '".$_POST['e_mail']."', phone_add = '".$_POST['phone_add']."', adress = '".$_POST['adress']."' WHERE phone_id = ".$_GET['id']; if (isset($query) && isset($_POST['name'])) { mysql_query($query); } ?> <input type = "submit"> </form> <form method = "post" action = "phones.php"> <input type = "submit" value = "вернуться"> <input type = "hidden" name="TxtPhone" value="<?=$_GET['TxtPhone']?>"> <input type = "hidden" name="LstDisl" value="<?=$_GET['LstDisl']?>"> <input type = "hidden" name="LstDepart" value="<?=$_GET['LstDepart']?>"> </form> |
Реклама: | Хорошее предложение в KNS на процессоры 1200 сокет - более 50-ти тысяч наименований товаров со склада в Москве | мария куликова афиша спектаклей | ручной клапан shuft dcr 125 | Рекомендуем супермаркет KNS - серверы dell купить - более 50-ти тысяч наименований товаров со склада в Москве | фильмы hd |
21.02.2008, 04:38 | #2 |
Неактивный пользователь
Пол: Регистрация: 26.01.2008
Сообщений: 54
Репутация: 12
|
Ответ: Не выполняется запрос
На вскидку. Для первой формы не указан актион. лучше указать. Во вторых. Ничаво не понятно. Код:
mysql_query($query); Ну копни сам. Код:
if (isset($query) && isset($_POST['name'])) { mysql_query($query); echo "Запрос может выполниться."; } Код:
if (isset($query) && isset($_POST['name'])) { mysql_query($query); echo mysql_error(); } Код:
echo $query."<br>"; echo $_POST['name']."<br>"; if (isset($query) && isset($_POST['name'])) { mysql_query($query); } А еще лучше добавь такую конструкцию после </html> Код:
<?php echo '<br>$_GET<br><pre>'; print_r($_GET); echo '</pre><br><br>'; echo '<br>$_POST<br><pre>'; print_r($_POST); echo '</pre><br><br>'; echo '<br>$GLOBALS<br><pre>'; print_r($GLOBALS); echo '</pre><br><br>'; ?> Ну а вобще пользуйся отладчиком. Время поиска ошибок уменьшиться |
24.02.2008, 03:48 | #3 |
Неактивный пользователь
Пол: Регистрация: 03.08.2007
Сообщений: 4
Репутация: 0
|
Ответ: Не выполняется запрос
Запрос вроде и не должен выполнятся... насколько я понимаю ты не сделал ни одной проверки (действительно очень доверяешь своему пользователю - но предположим ты упрастил форму для выкладки ), но самое главное запрос по UPDATE вроде (поверхностно смотрел) неправильно написан. Вроде как depart не закавыченная (если будет текст не сработает), то же самое с disl. К тому же непонятно как настроена база данных (может выставлен флаг NOT NULL, а будет попытка записать пустую строку, что приведет к ошибке)... скрипт сырой на самом деле (мне так кажется). Кстати не забудь пробел перед WHERE (частенько люди попадаются особенно при такой конструкции написания кода).
|
26.02.2008, 10:57 | #4 |
Пользователь
Пол: Регистрация: 27.01.2007
Адрес: Киев
Сообщений: 103
Репутация: 130
|
Ответ: Не выполняется запрос
print $query
а потом вставляешь запрос в клиент базы данных (phpmyadmin или тп) он уже выдаст ошибку. |
25.03.2008, 15:38 | #5 |
Ответ: Не выполняется запрос
А чего он должен выполняться? Ты сразу берешь в первой строке кода: $phone = mysql_query ('SELECT * FROM phones where phone_id = '.$_GET['id']); А action у тебя равно phones.php где $_GET['id']? какой ид? если нет его у тебя в action.
|
|
22.05.2011, 23:05 | #6 | |||||||||||||||||||||||
Неактивный пользователь
Пол: Регистрация: 22.05.2011
Сообщений: 4
Репутация: 0
|
Re: Ответ: Не выполняется запрос
Правильно говориш. Надо добавить ид в верхней строчке и всё заработает. |
|||||||||||||||||||||||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запрос игр для Pocket PC | PIB | Игры | 162 | 22.05.2011 23:02 |
SQL Запрос McAccess2007 (Запрос с 3 таблиц - дублирование ) | Dr Evil | Базы данных | 3 | 23.07.2009 10:06 |
не выполняется команда msconfig | Rezus | Microsoft Windows | 4 | 07.11.2007 11:46 |
Запрос по SQL | porokh | Архив | 4 | 08.06.2007 14:56 |
|
|