|
|
|
| Можно ли так делать выборку из базы? И если да, то правильно ли она написано в смысле пунктуации и последовательности операторов. А то ничего не отображается.
Нужно выбрать всё из таблицы, где категория =$categories и из них выбрать начиная $initialMsg - $maxMsg записей
$result = mysql_query( "SELECT * FROM video where categories1=$categories
ORDER BY id_video DESC LIMIT $initialMsg, $maxMsg" )
or error( mysql_error() );
|
Правильно или нет? | |
|
|
|
|
|
|
|
для: Port_Artur
(05.01.2010 в 23:13)
| |
$sql = "SELECT * FROM `video` WHERE `categories1`='{$categories}' ORDER BY `id_video` DESC LIMIT $initialMsg, $maxMsg";
$result = mysql_query($sql)
or die(mysql_error());
//а дальше проверяем отправился ли вообще запрос, так, на всякий:
if(is_resource($result))
echo "Запрос отправлен";
else
echo "Запрос сформирован неправильно";
|
Попробуйте так. | |
|
|
|
|
|
|
|
для: Boeing
(06.01.2010 в 00:36)
| | 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 'ORDER BY id_video DESC LIMIT ,' at line 1
Что он хочет? | |
|
|
|
|
|
|
|
для: Port_Artur
(06.01.2010 в 01:14)
| | - | |
|
|
|
|
|
|
|
для: Port_Artur
(06.01.2010 в 01:14)
| | А "LIMIT ," не смущает? | |
|
|
|
|
|
|
|
для: Вурдалак
(06.01.2010 в 02:19)
| | я ща у ся попробовал намеренно вызвать такую ошибку в запросе
$sql = "SELECT `cid`,`author`,`title`,`pubyear`,`price` FROM `catalog` WHERE `price`='{$p}' ORDER BY `{$ORDERBY1}` {$ASCDESC1} LIMIT $a,$b";
| и то, менял, и сё NULL-ил - никак=)
Ни запятая не вылезает, ни тем более целый запрос, - вылезает лишь часть, где ошибка | |
|
|
|
|
|
|
|
для: Boeing
(06.01.2010 в 02:26)
| | Что ты этим хотел мне сказать? | |
|
|
|
|
|
|
|
для: Вурдалак
(06.01.2010 в 02:40)
| | что я сам не могу понять где там ошибка | |
|
|
|
|
|
|
|
для: Boeing
(06.01.2010 в 03:01)
| | Запятой после LIMIT быть не должно. У него переменная $initialMsg пустая / не определена. | |
|
|
|
|
|
|
|
для: Вурдалак
(06.01.2010 в 03:05)
| | я приношу свои извинения
ответ:
Я переменные забыл указать.
Это значит что всё нормально с запросом?
так как при попытке вывести результат на экран
ничего кроме
на экране нет, хотя в таблице 12 записей, только что проверил:
Все переменные заданы:
$categories=1;
$initialMsg=3;
$maxMsg=3;
|
Что не так? | |
|
|
|
|
|
|
|
для: Port_Artur
(06.01.2010 в 09:39)
| | Для начала Вам стоит написать echo $sql;
И внимательно посмотреть на сам запрос.
Текст до подстановки и текст после подстановки подчас существенно отличаются . | |
|
|
|
|
|
|
|
для: Trianon
(06.01.2010 в 11:55)
| | Да вроде всё правильно:
SELECT * FROM video WHERE categories1=1 ORDER BY id_video DESC LIMIT 3, 3
Запрос отправлен | |
|
|
|
|
|
|
|
для: Port_Artur
(06.01.2010 в 12:19)
| | Ну раз запрос отправлен - значит выполнился.
Теперь вытягивайте результат с помощью mysql_fetch_assoc() в цикле. | |
|
|
|