| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > проблемы с MySql (ф-ия mysql_fetch_array) |
| Автор: capricorn 28.10.2007, 12:37 | ||||||
есть такая ф-ия:
далее где-то в коде:
во здесь и проблема. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\test3\www\sql.php on line 14 но, если вызвать mysql_fetch_array с параметром, возвращаемым напрямую mysql_query, то всё ок. (напр. так
ЗЫ это просто пример, я хочу узнать, почему так происходит.... Помогите! Зарание спасибо! |
| Автор: skyboy 28.10.2007, 16:12 | ||||||
давай посмотрим на твой код:
Если ошибка соеднения - то выдаем текст ошибки.
Если не получилось выбрать базу - выдаем ошибку.
Если запрос не был выполнен из-за ошибки, то... тупо игнорируем? скорее всего, твой запрос просто вызывает ошибку. Ну, мало ли, кавычки не закрыл, или прав на выполнение запросов нет... Но ошибки этой ты не видишь... Вот, вариант. |
| Автор: capricorn 28.10.2007, 16:51 | ||
| да нет же. вопрос понят неправильно. mysql_query($query, $PublicSqlBase); - возвращает мне результат запроса, а вот МОЯ ФУНКЦИЯ (function SQL_QUERY($query)) - этот самый результат возвращает неверно =( посему mysql_fetch_array и ругается. но вот если оформить ф-ию так, то всё пойдёт нормально:
просекаешь в чём суть? вот я и не поймю почему моя ф-ия возвращает "кривой" результат. А может дело в реализации ПХП, или надо сначала как-то обработать этот результат, хз... :( |
| Автор: HotHead 28.10.2007, 18:02 |
| capricorn, я бы первым делом попробовал написать "SELECT * FROM Gallery WHERE id=0". Или этот глюк только на форуме? Иначе всё должно работать. |
| Автор: capricorn 28.10.2007, 18:14 |
| это я когда на форум код переносил - опечятку сделал а решение найдено (в переустановке сервера (т.е. апача, и мускл/пхп вместе с ним) %)). тема закрыта, всем спасибо! |
| Автор: NiCketT 29.10.2007, 23:34 | ||||||
Есть запрос
Пишу
а оно выдает ошибку
В чем дело?! Через phpMyAdmin работает нормально |
| Автор: skyboy 30.10.2007, 00:10 | ||||
сделай так:
что выдает? |
| Автор: NiCketT 30.10.2007, 00:42 | ||||||
| skyboy Сначала попрежнему выдает
затем, когда поставил вездле кавычки
(кстати, что эти кавычки означают?) выдало вот-такое
|
| Автор: skyboy 30.10.2007, 14:00 | ||||
конечно. как же я сразу просмотрел?! ты же обращаешься к переменной $resul, а не $result!
Прямые кавычки(в отличие от обратных "`", которые позволяют отличать имена полей/таблиц/БД от зарезервированных слов) как и двойные кавычки " указывают на строковые константы. Т.е. ты свои запросом
ты пытаешься вытянуть 6 строковых констант('name', 'city', 'country', 'year', 'level', 'score' и 'public_date') не из таблицы, а из двух строковых констант('ten_users' и 'ten_records'), что есть неправильно и вызывает смуту и возражения сервера. |