Евгений З.
73 сообщения
#17 лет назад
<?php 
if (isset ($name)
&& isset ($father_name)
&& isset ($family_name)
&& isset ($day_delivery)
&& isset ($mobile_telephone)
&& isset ($home_telephone)
&& isset ($another_telephone)
&& isset ($mail)
&& isset ($name_company)
&& isset ($position)
&& isset ($charge))

{$result = mysql_query ("UPDATE aho SET name='$name', father_name='$father_name', family_name='$family_name', day_delivery='$day_delivery', mobile_telephone='$mobile_telephone', home_telephone='$home_telephone', another_telephone='$another_telephone', mail='$mail', name_company='$name_company', position='$position', charge='$charge' WHERE id='$id'");

if ($result == 'true') {echo "<p>Обновлен!</p>";}
else {echo "<p>Ошибка!</p>";}}
else {echo "<p>Не все поля заполнены!</p>";}
?>


После submit скрипт говорит: Обновлен! Но реально нет обновления. Почему? Как исправить? INSERT работает.
Павел Хребто
35 сообщений
#17 лет назад
Может, такого id как тот, который посылается в запросе в $id не существует? И вообще впринципе я в скрипте не видел $id кроме как в запросе. Суньте перед резалтом echo $id;
Вадим С.
49 сообщений
#17 лет назад
Я реально со стула упал с такого:

if ($result == 'true') {echo "<p>Обновлен!</p>";}


Попробуйте свой запрос вывести куда-нибудь в файл или на экран, а потом запустите его из консольки, может он и не должен ничего вставлять
Евгений З.
73 сообщения
#17 лет назад
Id летит из формы в которую id выдерут в масиве.

<input name="id" type="hidden" value="$myrow=">


Что то все ни как не могу обновить, может есть еще идеи как обоновить?
Андрей Халецкий
3562 сообщения
#17 лет назад
Выведите вопрос вместо выполнения, я не уверен что он правильно формируется (скорее всего ID недолетает).
Андрей Д.
1267 сообщений
#17 лет назад
Omg

...

{

if (mysql_query ("UPDATE aho SET name='$name', father_name='$father_name', family_name='$family_name', day_delivery='$day_delivery', mobile_telephone='$mobile_telephone', home_telephone='$home_telephone', another_telephone='$another_telephone', mail='$mail', name_company='$name_company', position='$position', charge='$charge' WHERE id='$id'")) echo "<p>Обновлен!</p>";
else echo "<p>Ошибка!</p>";

}
else echo "<p>Не все поля заполнены!</p>";

...
Алексей Б.
897 сообщений
#17 лет назад
Цитата ("ezdorov"):
<input name="id" type="hidden" value="$myrow=">

это что за садо-мазо? )))
Евгений З.
73 сообщения
#17 лет назад
да, точно id не долетает... только не знаю как это исправить?
Алексей Б.
897 сообщений
#17 лет назад
$myrow может это?
Андрей Д.
1267 сообщений
#17 лет назад
Цитата ("lyoxa"):
Цитата ("ezdorov"):
<input name="id" type="hidden" value="$myrow=">

это что за садо-мазо? )))

А я этого извращения не заметил xDDD


<input name="id" type="hidden" value="<?php echo $myrow; ?>">

....

$id = $_REQUEST;


это не топик, а чемпионат по хардкодингу)))
Алексей Б.
897 сообщений
#17 лет назад
Там видимо echo "<input....../>";
Андрей Д.
1267 сообщений
#17 лет назад
Цитата ("lyoxa"):
Там видимо echo "<input....../>";

да пофиг, автор может не совсем енот и сам поймёт где ошибка была оО
Андрей Халецкий
3562 сообщения
#17 лет назад
Хотя конечно этот код лучше спрятать и никому не показывать.

Если злой "кулхацкер" запишет в ваш хиден строку ' OR '1'='1

То вся таблица заполниться теми данными что он введет в поля формы...
Андрей Д.
1267 сообщений
#17 лет назад
DROP DATABASE ... лучше работает при скл инжекшн
Андрей Халецкий
3562 сообщения
#17 лет назад
Цитата ("Zionit"):
DROP DATABASE ... лучше работает при скл инжекшн
Можно на этом примере показать как сделать дроп?
Александр В.
276 сообщений
#17 лет назад
Мдааа суровый код......
Вообще говоря если закрыть глаза на прочие ошибки и ответить только на вопрос выдвинутый в тему. Есть очень полезная функция mysql_error()...... Она может много чего интересного рассказать....
Вадим С.
49 сообщений
#17 лет назад
SmartDesign, можно просто ' OR 1
1';DROP TABLE aho;--
Андрей Д.
1267 сообщений
#17 лет назад
Цитата:
' OR 1; DROP DATABASE db_name /*

Вроде так, в конце /* чтобы код после айди не сработал.
Андрей Д.
1267 сообщений
#17 лет назад
Интересно, думаю можно даже написать СКЛ запрос который удалит все базы или все таблицы
Болатов А.
1090 сообщений
#17 лет назад
Ерунда, нельзя дропнуть активную базу данных.
Хотя от MySQL всего можно ожидать.