[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Непонимаю, зачем еще какой-то параметр
lostbananan
В рнр создается SQL-запрос:
    $sql = "SELECT 
books.id,
books.name,
books.pages,
books.`date`,
books.url,
books.tetx_book,
autor.name AS `autor.name`,
autor.patronymic,
autor.surname,
publish.name
FROM
autor
INNER JOIN book_aut ON (autor.id = book_aut.autor_id)
INNER JOIN books ON (book_aut.book_id = books.id)
INNER JOIN publish ON (books.pub_id = publish.id)"
;
if(!empty($_GET['sort']))
{
$sort = $_GET['sort'];
}
echo "1. sort=$sort<br>";
switch($sort){
case "name":
$sql+= "ORDER BY
books.name"
;
break;
case "autor":
$sql+= "ORDER BY
books.autor"
;
break;
case "publish":
$sql+= "ORDER BY
books.books_id"
;
break;
case "date":
$sql+= "ORDER BY
books.date"
;
break;
case page:
$sql+= "ORDER BY
books.pages"
;
break;
default:
echo "щось не те!<br>";
}

Но вызов
while($row = mysql_fetch_array($rez))
{
Выдает предупреждение:
( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\OpenServer\domains\sunduk\index.php on line 71
В чем моя ошибка?
bestxp
а ты проверял свой SQL запрос просто выполнив его в бд?
sergeiss
В строке
case page:

слово page надо в кавычках написать. Без них тоже сработает, но будет нотис.

И второе. Что за "+=" ты пишешь? В ПХП строки соединяются оператором "точка". В данном случае можно написать ".=" ("точка и равно") вместо "+=".

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
rooor
Цитата
В чем моя ошибка?

запрос в $sql, а в цикл сунул $rez
Цитата
$sql = "SELECT
while($row = mysql_fetch_array($rez))


и не нашёл самого запроса...
lostbananan
В Бд выдает такую ошибку:не нравится ему ORDER BY
books.name";
по поводу рнр кода:
$sql = "SELECT 
books.id,
books.name,
books.pages,
books.`date`,
books.url,
books.tetx_book,
autor.name AS `autor.name`,
autor.patronymic,
autor.surname,
publish.name
FROM
autor
INNER JOIN book_aut ON (autor.id = book_aut.autor_id)
INNER JOIN books ON (book_aut.book_id = books.id)
INNER JOIN publish ON (books.pub_id = publish.id)"
;
. . .

$rez = mysql_query($sql, $link);
while($row = mysql_fetch_array($rez))
lostbananan
Люди добрые помогите, подскажите, очень надо!
Dezigo
Цитата
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in

По русски:
Внимание: mysql_fetch_array() ожидает что первый параметр будет как ресурс, тип boolean подан. (true or false)
Как вы хотите вытащить данные из ресурса, если Вы туда подали 1 или 0.
lostbananan
1 - true? 0 - false. Разве не так?
sergeiss
Цитата (lostbananan @ 25.06.2014 - 16:13)
Люди добрые помогите, подскажите, очень надо!

Цитата (sergeiss @ 25.06.2014 - 14:57)
Что за "+=" ты пишешь? В ПХП строки соединяются оператором "точка".

Ты знаешь... ОЧЕНЬ СЛОЖНО помочь человеку, который не умеет читать.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
bestxp
Цитата (lostbananan @ 25.06.2014 - 15:30)
В Бд выдает такую ошибку:не нравится ему ORDER BY
books.name";
по поводу рнр кода:
$sql = "SELECT 
books.id,
books.name,
books.pages,
books.`date`,
books.url,
books.tetx_book,
autor.name AS `autor.name`,
autor.patronymic,
autor.surname,
publish.name
FROM
autor
INNER JOIN book_aut ON (autor.id = book_aut.autor_id)
INNER JOIN books ON (book_aut.book_id = books.id)
INNER JOIN publish ON (books.pub_id = publish.id)"
;
. . .

$rez = mysql_query($sql, $link);
while($row = mysql_fetch_array($rez))

пробелы перед ORDER BY поставь

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.