возникла проблема с установкой скрипта

Discussion in 'PHP' started by GOODmen, 13 Jul 2015.

  1. GOODmen

    GOODmen Member

    Joined:
    8 Nov 2008
    Messages:
    45
    Likes Received:
    76
    Reputations:
    10
    Скачал денвер, закидываю все файлы в папку. в config.php прописал путь до БД со всеми данными. Запускаю install.php, выдает такую ошибку
    Code:
    Fatal error: Call to undefined method db::exec() in /home/u920989913/public_html/1/install.php on line 7
    в 7 строке вот такой код

    Code:
    $db->exec("CREATE TABLE IF NOT EXISTS `".db::real_tablename('user_roles')."` (
      `rid` int(10) unsigned NOT NULL AUTO_INCREMENT,
      `rname` varchar(100) NOT NULL,
      `have_admin_access` int(1) NOT NULL,
      `can_add_quest` int(1) NOT NULL,
      `can_update_quest` int(1) NOT NULL,
      `can_delete_quest` int(1) NOT NULL,
      `can_add_level` int(1) NOT NULL,
      `can_update_level` int(1) NOT NULL,
      `can_delete_level` int(1) NOT NULL,
      `can_upload_file` int(1) NOT NULL,
      `can_delete_file` int(1) NOT NULL,
      PRIMARY KEY (`rid`)
    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8");
    что не так? почему не хочет ставится?
     
    #1 GOODmen, 13 Jul 2015
    Last edited: 13 Jul 2015
  2. winstrool

    winstrool ~~*MasterBlind*~~

    Joined:
    6 Mar 2007
    Messages:
    1,414
    Likes Received:
    911
    Reputations:
    863
    Написано же что undefined method db::exec(), перепишите запрос создания таблиц ручками и в бд его!
     
    _________________________
  3. GOODmen

    GOODmen Member

    Joined:
    8 Nov 2008
    Messages:
    45
    Likes Received:
    76
    Reputations:
    10
    А можно подробнее? Если вам не сложно, я просто в этом вообще не силен.
    Мучаюсь уже 7 часов. Весь гугл перерыл. Понять не могу
     
  4. winstrool

    winstrool ~~*MasterBlind*~~

    Joined:
    6 Mar 2007
    Messages:
    1,414
    Likes Received:
    911
    Reputations:
    863
    А по подробней, нужно болие детальней увидеть что вы там пытаитесь установить! по идее, если XXX табла отсутствует то создаем ее с колонками что указано в вашем посте! возможно название таблы и есть user_roles
     
    _________________________
  5. GOODmen

    GOODmen Member

    Joined:
    8 Nov 2008
    Messages:
    45
    Likes Received:
    76
    Reputations:
    10
  6. Fepsis

    Fepsis Elder - Старейшина

    Joined:
    17 Sep 2008
    Messages:
    791
    Likes Received:
    391
    Reputations:
    72
    Там действительно в классе для работы с БД нет метода exec.

    Открой файл /includes/utils/class.db.php и после
    PHP:
       public function query_first_pdo($sql,$params=array()){
            
    $query_id $this->_query_pdo($sql,$params);
            if(
    $query_id === false)
                return 
    false;
            
    $out $this->_fetch_pdo();
            
    $this->_free_result_pdo();
            return 
    $out;
        }
    добавь
    PHP:
       public function exec($sql,$params=array()){
            
    $query_id $this->_query_pdo($sql,$params);
        }
    после этого должно все прокатить, или руками создай таблицы, как предложил winstrool.
     
  7. GOODmen

    GOODmen Member

    Joined:
    8 Nov 2008
    Messages:
    45
    Likes Received:
    76
    Reputations:
    10
    Да, действительно, теперь скрипт выполняется. Пишет "Done".
    По крайней мере на хостинге создались таблицы. Теперь буду дальше разбираться. Спасибо огромное за помощь
     
    #7 GOODmen, 14 Jul 2015
    Last edited: 14 Jul 2015
  8. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    У вас что Денвер на линуксе?