<?php
include 'bd.php';
if (isset($_POST['descript']) && (isset($_GET['id_good']))) {
$descript=$_POST['descript'];
$id_good=$_GET['id_good'];
$sql_add_descript="INSERT INTO descripton (descript, id_good) VALUES('$descript', $id_good)";
$query_add_descript=miysql_query($sql_add_descript) or die(mysql_error());
if ($query_add_descript)
echo '<h3>Запрос в базу данных на добавление описания товара прошел. Вернитесь на <a href="add_description.php">предыдущую страницу</a></h3>';
}
?>
Вся проблема в том, что не добавляется в базу Mysql значение id_good, передаваемое методом GET и при этом не добавляется само описание, передаваемое методом POST. При использовании лишь одного метода POST описание добавляется, но id_good нужен для того чтобы потом вывести добавленное описание для каждого из товаров.
Посоветуйте, что делать?
Спустя 14 минут, 15 секунд (13.06.2012 - 14:40) alexbel2404 написал(а):
в кавычки заключи, плюс обрабатывай приходящие данные через mysql_real_escape_string
Спустя 3 минуты, 35 секунд (13.06.2012 - 14:44) neadekvat написал(а):
Цитата (alexbel2404 @ 13.06.2012 - 15:40) |
обрабатывай приходящие данные через mysql_real_escape_string |
А если это числовое значение?
Спустя 1 минута, 14 секунд (13.06.2012 - 14:45) Placido написал(а):
1. Включить вывод ошибок error_reporting(E_ALL)
2. Проверить, приходит ли что-нибудь в $_GET['id_good']
3. miysql_query -> mysql_query
4. if ($query_add_descript) -> if ( mysql_affected_rows($query_add_descript))
2. Проверить, приходит ли что-нибудь в $_GET['id_good']
3. miysql_query -> mysql_query
4. if ($query_add_descript) -> if ( mysql_affected_rows($query_add_descript))
Спустя 1 час, 13 минут, 26 секунд (13.06.2012 - 15:58) gtadownload написал(а):
Спасибо за ответы.
Спустя 16 часов, 32 минуты, 50 секунд (14.06.2012 - 08:31) linker написал(а):
neadekvat
Для mysql_real_escape_string пофигу числовое или не числовое, как и мускулу.
Для mysql_real_escape_string пофигу числовое или не числовое, как и мускулу.
Спустя 6 часов, 1 минута, 14 секунд (14.06.2012 - 14:32) neadekvat написал(а):
Цитата (linker @ 14.06.2012 - 09:31) |
Для mysql_real_escape_string пофигу числовое или не числовое, как и мускулу. |
Более того, из _POST'а все значения будут строковыми, и только программист может знать, какое из них должно быть числовое.
Но приводить и проверять числовые значения нужно не только, чтобы защититься, но и чтобы защитить пользователя от случайных фейлов с вводом числовых значений.