2013-12-13 2 views
0

Я получаю следующий блок ошибок (стоит отметить, что она повторяется сразу же после того, как я скопировал только одну итерацию ради): простотеНевозможно перейти к строке 0 по индексу результата MySQL ..?

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 89 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 91 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 93 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 95 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 97 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 99 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 101 

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/a-slsa/www/classes/ASC/ASCStaffData.php on line 103 

Линии ссылки следующим образом (и да, я знаю, это ужасно, используя устаревшие функции, но это не мой код - унаследовали довольно большой проект от кого-то другого):

$ascStaff['staffId'] = (mysql_result($dbStaffData->fetch,0,"STAFF_ID") ? 
           mysql_result($dbStaffData->fetch,0,"STAFF_ID") : NULL); 

    $ascStaff['ownership'] = (mysql_result($dbStaffData->fetch,0,"OWNERSHIP") ? 
           mysql_result($dbStaffData->fetch,0,"OWNERSHIP") : NULL);  

    $ascStaff['firstName'] = (mysql_result($dbStaffData->fetch,0,"FIRST_NAME") ? 
           mysql_result($dbStaffData->fetch,0,"FIRST_NAME") : NULL); 

    $ascStaff['lastName'] = (mysql_result($dbStaffData->fetch,0,"LAST_NAME") ? 
           mysql_result($dbStaffData->fetch,0,"LAST_NAME") : NULL); 

    $ascStaff['ritEmail'] = (mysql_result($dbStaffData->fetch,0,"RIT_EMAIL") ? 
           mysql_result($dbStaffData->fetch,0,"RIT_EMAIL") : NULL); 

    $ascStaff['otherEmail'] = (mysql_result($dbStaffData->fetch,0,"OTHER_EMAIL") ? 
           mysql_result($dbStaffData->fetch,0,"OTHER_EMAIL") : NULL); 

    $ascStaff['address'] = (mysql_result($dbStaffData->fetch,0,"ADDRESS") ? 
           mysql_result($dbStaffData->fetch,0,"ADDRESS") : NULL); 

    $ascStaff['phoneNumber'] = (mysql_result($dbStaffData->fetch,0,"PHONE_NUMBER") ? 
            mysql_result($dbStaffData->fetch,0,"PHONE_NUMBER") : NULL); 

дело в том, что сбивает с толку меня, что запрос, когда введенный вручную в MySQL, работ в совершенстве.

Любая идея, почему я получаю эту ошибку или как ее исправить?

+0

переключатель для 'расширения mysqli',' расширение mysql' осуждается – hammus

+0

@leemo MySQL является СУБД и, безусловно, не амортизируется !! Я думаю, вы имели в виду, что функции 'mysql_' обесцениваются как из PHP 5.5.0. – James

+0

@leemo вы правы, и я согласен, к сожалению, этот проект достаточно далек и сдерживает время, что было бы невозможно полностью переключиться. – Prefix

ответ

0

В соответствии с моим комментарием: расширение mysql устарело, поэтому даже если вы работаете на старой базе кода, вы должны рассмотреть возможность обновления до mysqli.

Учитывая, что, как правило, эта ошибка указывает на то, что запрос не удался.

Проверьте запрос каким-то образом похож на это:

$result = mysql_query("SELECT foo FROM bar WHERE foo = 1"); 
if(!$result || !mysql_num_rows($result)) 
{ 
    die("Empty dataset."); 
} 
Смежные вопросы