mysql_fetch_object (): предоставленный аргумент не является допустимым ресурсом результата MySQL - PullRequest
0 голосов
/ 17 августа 2010

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

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).Есть мысли?

Ответы [ 2 ]

1 голос
/ 17 августа 2010

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

1 голос
/ 17 августа 2010

Что произойдет, если вы назначите mysql_connect в качестве переменной и передадите его в качестве идентификатора ссылки в качестве второго параметра для функций mysql_select_db и 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))
{
     ....
}  

Также убедитесь, что вы запрашиваете синтаксисправильно и не содержит орфографических ошибок или опечаток

...