We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 7424
    • 6 Posts
    Привет всем ! У меня такая проблема: ставлю МОДх. Дохожу до пункта, в котором нужно ввести инфу о БД. Ввожу. Всё на 100% правильно. Жму "Нажмите здесь для проверки соединения с вашим сервером базы данных и получения сопоставления кодировки". Никакой реакции. Жму кнопку "Далее", выдаёт месаг: "Проверьте соединение с сервером базы данных!". И, собственно, дальше дело никуда не движется. Подскажите, в чём может быть проблема ? Ставлю МОДх версии 1.0.0
      • 15416
      • 28 Posts
      У тебя случаем права на создание новых баз не отсутствуют? У меня такая же фигня. Подозреваю именно то, что такая фигня происходит из-за отсутствия прав на создание, независимо от того, что по логике если база введенная существует - он должен сразу использовать. Похоже, что в любом случае он сначала пытается создать базу.
        хряк-самурай
        • 22668
        • 718 Posts
        У меня на хосте запрещено создавать базу.
        Все работает нормально. Проверено сотнями установок.
          • 15416
          • 28 Posts
          Короче у кого возникает подобная проблема - лезем в /install/action.connection.php и комментируем следующий фрагмент:

          if (!@ mysql_select_db($database_name, $conn)) {
                  // create database
                  $database_charset = substr($database_collation, 0, strpos($database_collation, '_'));
                  $query = "CREATE DATABASE `".$database_name."` CHARACTER SET ".$database_charset." COLLATE ".$database_collation.";";
          
                  if (!@ mysql_query($query)){
                      $output .= '<span style="color:#FF0000;">'.$_lang['status_failed_could_not_create_database'].'</span>';
                  }
                  else {
                      $output .= '<span style="color:#80c000;">'.$_lang['status_passed_database_created'].'</span>';
                  }
              }
              else


          После чего установка проходит гладко, без сучка и задоринки smiley

          P.S.
          Кто не понял - modX действительно сначала пытается создать базу, а потом уже проверяет на её наличие, поэтому если прав на создание нет - то установить не выйдет.
            хряк-самурай
          • Quote from: kas1e at Oct 05, 2009, 08:45 AM

            Кто не понял - modX действительно сначала пытается создать базу, а потом уже проверяет на её наличие, поэтому если прав на создание нет - то установить не выйдет.
            Глупость сказали. Да еще и другим советуете поступить глупо, что в 10 раз хуже!

            Этот код if (!@ mysql_select_db($database_name, $conn)) {...} означает:
            ТОЛЬКО в случае невозможности выбрать указанную БД, MODx попытается создать ее.

            Если нет прав на создание БД, создайте ее вручную перед установкой.

            P.S.: Не рекомендую пользоваться "решением" от kas1e.
              Разработка сайтов и программных модулей на MODX.
              Опыт работы на MODx с 2005 года. Высокое качество.
              Компания Baltic Design Colors: http://www.bdcolors.ru.
              • 15416
              • 28 Posts
              Вы думаете, что хостеры позволяют "вручную" клепать базы? Создадут вам - и пользуйтесь. Поэтому решение с "ручным созданием базы" - логически абсурдно. Если нет прав, как создать базу?
                хряк-самурай
              • Quote from: kas1e at Oct 05, 2009, 09:06 AM

                Вы думаете, что хостеры позволяют "вручную" клепать базы? Создадут вам - и пользуйтесь. Поэтому решение с "ручным созданием базы" - логически абсурдно. Если нет прав, как создать базу?
                Я не думаю. Я знаю, что это так и есть для нормальных хостеров.
                Но если уж Вам создали эту базу, то пользуйтесь ею. По крайней мере, имя БД вы же знаете. А больше ничего и не нужно.

                Но в общем вопрос был не в этом. Это Вы советуете как раз логически абсурдную вещь smiley Вы не понимаете, что делает код, который предлагаете закомментировать. А он как раз абсолютно логичен. И я объяснил, почему.
                  Разработка сайтов и программных модулей на MODX.
                  Опыт работы на MODx с 2005 года. Высокое качество.
                  Компания Baltic Design Colors: http://www.bdcolors.ru.
                  • 22668
                  • 718 Posts
                  Запретить создавать базы вашими скриптами могут в целях безопасности.
                  Например у моего хостера для создания баз своя админка. И свой phpmyadmin.
                  О вас же беспокоятся.
                    • 15416
                    • 28 Posts
                    Я уже говорил, что прав на создание нет - а скрипт пытается создать.

                    Единственное непонятно, почему не удается выполнить mysql_select_db($database_name, $conn) - ведь база существует.
                      хряк-самурай
                      • 22668
                      • 718 Posts
                      Какая у тебя подпись модная.