2010-08-17 4 views
0

Я пытаюсь установить простой скрипт cron для выполнения некоторого обновления базы данных, и я довольно бесполезен для MySQL без ActiveRecord (я использую CodeIgniter). Я получаю сообщение об ошибке,mysql_fetch_object(): предоставленный аргумент не является допустимым ресурсом результата MySQL

mysql_fetch_object(): supplied argument is not a valid MySQL result resource 

со следующим кодом:

mysql_connect("localhost", "user", "pass") or die(mysql_error()); 
mysql_select_db("my_db") or die(mysql_error()); 
$query = "select visit_e_id, visit_e_type from visits"; 
$result = mysql_query($query) 
or die("Query failed: ".mysql_error()." Actual query: ".$query); 

while($row=mysql_fetch_object($result)) 
{ 
    .... 
} 

Как я уже сказал, я не большой с прямым PHP и MySQL (было бы признателен за любые советы о том, как включить какой-то каркас или ActiveRecords, которые могут быть использованы как часть задания cron). Есть предположения?

+1

не распечатывает ли сообщение об ошибке «Query failed:»? try 'var_dump ($ result);' - единственная возможная причина - простой mistype –

+0

Возможный дубликат [mysql_fetch_assoc(): предоставленный аргумент не является допустимым ресурсом результата MySQL в php] (http://stackoverflow.com/questions/ 1858304/MySQL-выборка-ассоциативными поставляются-аргумент-это-не-а-действительное-MySQL-результат-ресурс-в-Ph) –

ответ

1

Что произойдет, если вы назначаете mysql_connect в качестве переменной и передаете ее в качестве идентификатора ссылки в качестве второго параметра в функции 2102 и query?

$db = mysql_connect("localhost", "user", "pass") or die(mysql_error()); 
// Check to see if valid connection 
var_dump($db); 

mysql_select_db("my_db", $db) or die(mysql_error()); 
$query = "select visit_e_id, visit_e_type from visits"; 
$result = mysql_query($query, $db) 
or die("Query failed: ".mysql_error()." Actual query: ".$query); 

while($row=mysql_fetch_object($result)) 
{ 
    .... 
} 

обеспечивает также, что вы запрашиваете синтаксис является правильным и не имеет орфографические ошибки или опечатки

1

Эта ошибка является довольно простой и самим за себя - это переменные $ результата имеет неожиданный вид.
Таким образом, вам нужно провести некоторую отладку. Добавьте var_dump($result); до и внутри цикла и изучите выход.

Смежные вопросы

 Смежные вопросы