переменная speciality_f текстовая (пм или эк) берется из формы при нажатии кнопки
$sql= "SELECT * FROM fakultet WHERE speciality = " . $_POST['speciality_f'];
$result = mysql_query($sql);
echo "Студенты специальности " . $_POST['speciality_f']. ":";
while ($rows=mysql_fetch_assoc($result))
{
echo '<li>', $rows[name], ' ', $rows[surname],' ', $rows[middle_name],' ', $rows[date];
}
...
при выполнении пишет ошибку "Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource" в строке while ($rows=mysql_fetch_assoc($result)).
если заменить поиск по числовым переменным то всё работает.
может кто сталкивался с такой проблемкой. заранее благодарен любой помощи.
Спустя 6 минут, 34 секунды (21.03.2011 - 22:45) sharki написал(а):
А как насчет ковычек? =)
и здесь тоже
$sql= "SELECT * FROM `fakultet` WHERE `speciality` = ' " . $_POST['speciality_f'] . " ' ";
и здесь тоже
echo '<li>' . $rows['name'] . ' ' . $rows['surname'] . ' ' . $rows['middle_name'] . ' ' . $rows['date'];
Спустя 8 минут, 41 секунда (21.03.2011 - 22:53) Lexus-best написал(а):
http://voronko.hut2.ru/ - тут я всё проверяю.
заменил. ошибка пропала, но и не выводит....
ковычки не всегда обязательны.
заменил. ошибка пропала, но и не выводит....
ковычки не всегда обязательны.
Спустя 19 минут, 28 секунд (21.03.2011 - 23:13) Lexus-best написал(а):
вопрос по прежнему открыт.
Спустя 18 минут, 26 секунд (21.03.2011 - 23:31) inpost написал(а):
Lexus-best
Кавычки не нужны, когда там целое число, а у тебя явно не целое, и скорее всего не число.
Не выводит, потому что записей нету таких, проверяй через mysql_num_rows
Кавычки не нужны, когда там целое число, а у тебя явно не целое, и скорее всего не число.
Не выводит, потому что записей нету таких, проверяй через mysql_num_rows
Спустя 6 минут, 6 секунд (21.03.2011 - 23:37) Lexus-best написал(а):
переменная speciality_f текстовая ( принимает значения пм или эк)
ок. проверю mysql_num_rows......
потестирую выводы массивов.
потом отпишусь
ок. проверю mysql_num_rows......
потестирую выводы массивов.
потом отпишусь
Спустя 19 часов, 8 минут, 37 секунд (22.03.2011 - 18:46) Lexus-best написал(а):
проблема решилась путём обнесения переменной $_POST['speciality_f'] фигурными скобками {} . B)
в итоге строка выглядит
всем спасибо за внимание!
в итоге строка выглядит
$sql= "SELECT * FROM `fakultet` WHERE `speciality` = '{$_POST['speciality_f']}' ";
всем спасибо за внимание!
Спустя 40 минут, 34 секунды (22.03.2011 - 19:26) sharki написал(а):
Правильнее делается так
$sql= "SELECT * FROM `fakultet` WHERE `speciality` = '" . $_POST['speciality_f'] . "' ";
_____________
fan lexus =|