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. VestCoastman - 03 Июля, 2011 - 01:51:00 - перейти к сообщению
Не первую неделю мучаюсь с ошибками при установке движка clipbucket:
CODE (text):
скопировать код в буфер обмена
  1. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\webserver\vhost\test.vbg\www\includes\classes\my_queries.class.php on line 76 Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\webserver\vhost\test.vbg\www\includes\classes\my_queries.class.php on line 76 Warning: Invalid argument supplied for foreach() in C:\webserver\vhost\test.vbg\www\includes\classes\user.class.php on line 90


Чуть ниже вот это:
CODE (text):
скопировать код в буфер обмена
  1. UPDATE test.vbg.cb_config SET value='http://test.vbg' WHERE name='baseurl'
  2. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.cb_config SET value='http://test.vbg' WHERE name='baseurl'' at line 1


Я подразумеваю, что не в коде тут дело, а в сервере или ОС, так как ошибка только у меня вылазит, у знакомых все норм.
В чем тут все таки дело?
ОС - XP3(Zwer)
Серв - apache 2.2, php 5.3.6
2. SofiaKit - 03 Июля, 2011 - 02:51:30 - перейти к сообщению
на денвере запускаешь? а знакомый как запускает? через твой-же денвер?
3. Slavenin - 03 Июля, 2011 - 08:57:44 - перейти к сообщению
в первом случае смотрим значение переменной которая передается в mysql_fetch_array() там должен быть параметр типа resource, у вас же передается значение типа boolean, скорее всего где-то ошибка в запросе.

во втором случае, очень смущает конструкция test.vbg.cb_config ошибка возникает именно в ней. проверяйте.
4. Мелкий - 03 Июля, 2011 - 09:37:44 - перейти к сообщению
Slavenin пишет:
во втором случае, очень смущает конструкция test.vbg.cb_config ошибка возникает именно в ней. проверяйте.

+1 к тому, что ошибка именно в конфигурировании. Как называется рабочая БД и есть ли в ней таблица cb_config?
А первая ошибка - почти наверняка следствие этой.
5. VestCoastman - 03 Июля, 2011 - 15:21:26 - перейти к сообщению
SofiaKit, нет, не денвер. Знакомый запускает через свой сервер.
Slavenin,Мелкий, версия движка уже 2.5.1, а у меня до сих пор та же ошибка, в то время как у других пользователей ее нет.
Попробуйте сами установить у себя, вот ссылка на оф сайт движка, а вот ссылка на скачивание(прямая).
Сервер я переустанавливал ~3 месяца назад, до этого стоял такой же сервер, только версии php, apache, mysql другие, какие не помню.
6. Slavenin - 03 Июля, 2011 - 15:27:49 - перейти к сообщению
VestCoastman пишет:
Slavenin,Мелкий, версия движка уже 2.5.1, а у меня до сих пор та же ошибка, в то время как у других пользователей ее нет.

Slavenin пишет:
смотрим значение переменной которая передается в mysql_fetch_array()
Мелкий пишет:
и. Как называется рабочая БД и есть ли в ней таблица cb_config?

это было проверено??? Хм
7. VestCoastman - 03 Июля, 2011 - 15:46:17 - перейти к сообщению
Slavenin, бд называется test.vbg таблица cb_config есть
my_queries.class.php, строчки с 72 по 82:
PHP:
скопировать код в буфер обмена
  1. function Get_Website_Details()
  2.         {
  3.                
  4.                 $query = mysql_query("SELECT * FROM ".tbl("config"));
  5.                 while($row = mysql_fetch_array($query))
  6.                 {
  7.                         $name = $row['name'];
  8.                         $data[$name] = $row['value'];
  9.                 }
  10.                 return $data;
  11.         }


user.class.php строчки с 89 по 95
PHP:
скопировать код в буфер обмена
  1. $levels = $this->get_levels();
  2.                 foreach($levels as $level)
  3.                 {
  4.                         $this->usr_levels[$level['user_level_id']]=$level["user_level_name"];
  5.                 }
  6.                
  7.                 $udetails = "";


прикрепил эти 2 файла.
8. Мелкий - 03 Июля, 2011 - 15:57:48 - перейти к сообщению
VestCoastman пишет:
бд называется test.vbg

У вас есть 2 варианта:
0) переписать движок, чтобы он:
а) генерировал адрес типа `имя базы`.`имя таблицы` (обратите внимание на `)
б) не подставлял имя базы
1) переименовать базу данных. Точка - зарезервированный символ, используется для разделения имён баз данных, таблиц и полей.
9. VestCoastman - 03 Июля, 2011 - 16:10:24 - перейти к сообщению
Мелкий, переименовал бд, ошибка в этом шаге установки пропала, но на следующем появилась эта:
PHP:
скопировать код в буфер обмена
  1. INSERT INTO testbd.cb_action_log (action_type,action_username,action_userid,action_useremail,action_ip,date_added,action_success,action_details,action_userlevel,action_obj_id,action_done_id) VALUES ('login','admin','','','127.0.0.1','2011-07-03 17:07:35','no','User Doesn’t Exist','','','')
  2. Field 'action_link' doesn't have a default value

Причем doesn't написано так Doesn&# 8 2 1 7 ;t(без пробелов)
10. OrmaJever - 03 Июля, 2011 - 16:15:12 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. INSERT INTO testbd.cb_action_log (action_type,action_username,action_userid,action_useremail,action_ip,date_added,action_success,action_details,action_userlevel,action_obj_id,action_done_id,action_link) VALUES ('login','admin','','','127.0.0.1','2011-07-03 17:07:35','no','User Doesn’t Exist','','','', '')

а так?
11. VestCoastman - 03 Июля, 2011 - 16:21:47 - перейти к сообщению
OrmaJever
Как я понял - это просто в БД пихнуть, нет так не прокатывает(#1366 - Incorrect integer value: '' for column 'action_userid' at row 1)
(Добавление)
От ошибок избавился, всем огромное спасибо за помощь!
Последнюю ошибку исправил поменяв в my.ini строку
CODE (text):
скопировать код в буфер обмена
  1. sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

на
CODE (text):
скопировать код в буфер обмена
  1. sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"


Тему можно закрывать

 

Powered by ExBB FM 1.0 RC1