Итак, у меня есть этот код:
foreach ($_SESSION['basket'] as $item) {
$ref = $_SESSION['basket'][$counter];
$result = pg_query ($conn, 'SELECT * from music WHERE ref='.$ref.' ORDER BY artist');
}
Это приведет к Warning: pg_fetch_row() expects parameter 1 to be resource, boolean given
штрафа, однако он выдает это Warning: pg_fetch_row() expects parameter 1 to be resource, boolean given
если я попытаюсь получить более одной строки. Я не понимаю, как я указываю boolean на параметр 1, это код в строке 46, где он получает ошибку: ($row = pg_fetch_row($result))
заранее спасибо
Вы можете использовать $row =pg_fetch_array($result)
а затем $row['field_name']
чтобы принимать значения в цикле foreach.
Ошибка может быть вызвана тем, что ваша переменная соединения $conn
не подключается к вашей базе данных.
Попробуйте все возможности. Спасибо.
Взгляните на примеры в PHP-документе: http://php.net/manual/en/function.pg-query.php.
ЗАПОМНИ:
В общем, документы PHP - отличное место, когда они борются с деталями PHP-api, которые иногда... менее интуитивными, чем они могли бы быть. :-)
Если ваш запрос не выполняется, pg_query
возвращает FALSE
. Кроме того, вместо предотвращения использования SQL вы должны использовать pg_query_params
.
pg_fetch_row
?while ($row = pg_fetch_row($result)) {