Головная боль при совместной работе php и sql server 2005

Ниже приведен код, с которым я не могу работать. Я знаю, что установил соединение с базой данных, но ничего не возвращает. Что я делаю не так?

$result = "SELECT * FROM images WHERE path = ?";
$params = array("blah");
$row = sqlsrv_query($conn, $result, $params);

$finished = sqlsrv_fetch_array($row);


if ($finished)
{
echo "blach";
}

Если все существует и правильно, возможно, вы тестируете запрос без результатов?

Vinko Vrsalovic 26.10.2008 20:54

Каково значение $ row после вашего звонка?

Tomalak 26.10.2008 21:05

$ row пуста после запроса

Keith 26.10.2008 21:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
3
1 570
3

Ответы 3

Возможно, вам потребуется заменить файл ntwdblib.dll, как описано в страница mssql_connect () руководства php.net.

Стоит ли проверять, что запрос не возвращает ошибку?

$result = "SELECT * FROM images WHERE path = ?";
$params = array("blah");
$row = sqlsrv_query($conn, $result, $params);

if ( $row === false ) {
    print_r(sqlsrv_errors());
}

Array ([0] => Array ([0] => IMSSP [SQLSTATE] => IMSSP [1] => -14 [code] => -14 [2]] => sqlsrv_query был передан недопустимый параметр. [Сообщение ] => В sqlsrv_query был передан недопустимый параметр.)) Это ошибка, которую он выдает. Ваше здоровье

Chris Jester-Young 26.10.2008 22:51

странно .. какой тип столбца формирует images.path?

Tom Haigh 26.10.2008 23:02

что произойдет, если вы сделаете $ params = array (array ('blah', SQLSRV_PARAM_IN, SQLSRV_PHPTYPE_STRING (SQLSRV_ENC_CHAR), SQLSRV_SQLTYPE_VARCHAR ('max')));

Tom Haigh 26.10.2008 23:40

Что делать, если вы не используете буквальное значение? Большинство Примеры MSDN используют переменные.

Я бы попробовал:

$result = "SELECT * FROM images WHERE path = ?";
$var = "blah";
$row = sqlsrv_query($conn, $result, array($var));

$finished = sqlsrv_fetch_array($row);

Другие вопросы по теме