Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Ошибка при получении результата запроса
Форумы портала PHP.SU » » Работа с СУБД » Ошибка при получении результата запроса

Страниц (1): [1]
 

1. JROUD - 21 Февраля, 2012 - 01:26:31 - перейти к сообщению
Привет, подскажите, почему ошибка (описал ошибки в комментариях в коде)?
PHP:
скопировать код в буфер обмена
  1. $query = mysql_query('SELET MAX(id) AS max_id FROM `ov_users`', $lconfig['db_connection']);
  2. // Тут ошибка: Warning: mysql_result(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\register.php on line 100
  3. // Это у меня строка №100, типа.
  4. $result = mysql_result($query, 0);
  5. // Тут переменную $result использую первый раз, если что...
  6. $query = mysql_query('INSERT INTO `ov_users`
  7. (`id`,
  8. `login`,
  9. `email`,
  10. `firstname`,
  11. `lastname`,
  12. `middlename`,
  13. `whois`,
  14. `about`,
  15. `view_my_photo`,
  16. `show_my_name`,
  17. `permission`,
  18. `password_salt`,
  19. `password_hash`,
  20. `keypart`,
  21. `keyhash`,
  22. `register_at`,
  23. `lastlogin_at`)
  24. VALUES
  25. ('.$result.',
  26. \''.$_POST['login'].'\',
  27. \''.$_POST['e-mail'].'\',
  28. \''.$_POST['firstname'].'\',
  29. \''.$_POST['lastname'].'\',
  30. \''.$_POST['middlename'].'\',
  31. \''.$_POST['whois'].'\',
  32. \''.$_POST['about'].'\',
  33. '.$_POST['view_my_photo'].',
  34. '.$_POST['show_my_name'].',
  35. 0,
  36. \''.($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15))).'\',
  37. \''.(md5(md5($result).md5($_POST["password"]))).'\',
  38. \''.($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15))).'\',
  39. \''.(md5(md5($result).md5(($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)))))).'\',
  40. \''.date('Y-m-d H:m:s').'\',
  41. \''.date('Y-m-d H:m:s').'\')', $lconfig['db_connection']);
  42. // Тут ошибка: Warning: mysql_result(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\register.php on line 137
  43. // Это у меня строка №137, типа.
  44. if (mysql_result($query, 0))
  45. {
  46.     setcookie('login_user', $_POST['login']);
  47.     setcookie('keypart', $result);
  48.     echo('Регистрация завершена успешно.');
  49. }
2. Okula - 21 Февраля, 2012 - 06:02:23 - перейти к сообщению
Запрос к базе через mysql_query() вернул FALSE или пустой результат.
В ошибке же всё описано.
3. JROUD - 22 Февраля, 2012 - 01:01:39 - перейти к сообщению
Okula, спасибо, но всё же, когда делаю такой вот запрос:
PHP:
скопировать код в буфер обмена
  1. $query = mysql_query('INSERT INTO `ov_users`
  2.            (
  3.            `login`,
  4.            `email`,
  5.            `firstname`,
  6.            `lastname`,
  7.            `middlename`,
  8.            `whois`,
  9.            `about`,
  10.            `view_my_photo`,
  11.            `show_my_name`,
  12.            `permission`,
  13.            `password_salt`,
  14.            `password_hash`,
  15.            `keypart`,
  16.            `keyhash`,
  17.            `register_at`,
  18.            `lastlogin_at`)
  19.            VALUES
  20.            (
  21.            \''.$_POST['login'].'\',
  22.            \''.$_POST['e-mail'].'\',
  23.            \''.$_POST['firstname'].'\',
  24.            \''.$_POST['lastname'].'\',
  25.            \''.$_POST['middlename'].'\',
  26.            \''.$_POST['whois'].'\',
  27.            \''.$_POST['about'].'\',
  28.            '.$_POST['view_my_photo'].',
  29.            '.$_POST['show_my_name'].',
  30.            0,
  31.            \''.($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15))).'\',
  32.            \''.(md5(md5($result).md5($_POST["password"]))).'\',
  33.            \''.($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15))).'\',
  34.            \''.(md5(md5($result).md5(($result = dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)).dechex(rand(0, 15)))))).'\',
  35.            \''.date('Y-m-d H:m:s').'\',
  36.            \''.date('Y-m-d H:m:s').'\')', $lconfig['db_connection']) or die (mysql_error());

то mysql_result всё равно выдаёт ошибку. Я тут добавил or die после запроса, как видите. Данные в таблицу попадают нормально.
4. DelphinPRO - 22 Февраля, 2012 - 01:10:12 - перейти к сообщению
JROUD пишет:
то mysql_result всё равно выдаёт ошибку.
в mysql_result нужно передавать результат SELECT запроса.
INSERT, DELETE, UPDATE.. возвращают булево значение (true\false)
(Добавление)
JROUD пишет:
$query = mysql_query('SELET MAX(id) AS max_id FROM `ov_users`', $lconfig['db_connection']);

// Тут ошибка: Warning: mysql_result(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\register.php on line 100

// Это у меня строка №100, типа.

$result = mysql_result($query, 0);


Ошибка может быть из-за опечатки: SELET вместо SELECT

 

Powered by ExBB FM 1.0 RC1