Проблема, соединяющаяся с mysql, использующим php5 сервер ЛАМПЫ

Я пытаюсь настроить сервер ЛАМПЫ на lubuntu 14.04.5, я стер index.html и заменил его:

/var/www/html/index.php

Проблема состоит в том что все перед этим <?php тег выполняется, и это, кажется, разрушает его. Я не знаю, почему, это, потому что у меня ДОЛЖЕН быть index.html?

<?php
$dbhost = "localhost:3306";
$dbuser = "user1";
$dbpass = "pass1";
$connection = mysqli_connect($dbhost, $dbuser, $dbpass);
if(!$connection){
die("connection error " . mysqli_error());
}
echo "connected successfully";
mysqli_close($connection);
?>

Таким образом в моем php журнале ошибок я получаю неопределенную функцию mysqli_connect (). Как я делаю это доступной функцией?

Когда я делаю поиск способности php5-mysql я разоблачает то, чтобы подразумевать, что он установлен. И нет никаких других mysql модулей за исключением mysqlnd, который я не думаю, что мне нужно начиная с его просто собственного каталога и mysqlnd-мс, Как я разрешаю это?

править: Я думаю, что должен добавить mysqli расширение, но имеющий проблему, определяющую местоположение его.

1
задан 29 August 2017 в 22:02

3 ответа

ТАКИМ ОБРАЗОМ, то, что я сделал, было sudo apt-get install php5-mysql Затем, я все еще получал ту же веб-страницу, таким образом, я думал, что ничего не произошло, но после проверки /var/log/php5/error.log оказывается, что ошибка, измененная от "неопределенной команды mysqli_connect ()" к некоторой связанной с кодом ошибке как "mysqli_error, требует, чтобы 1 параметр и "объект класса mysqli не могли быть преобразованы в строку" и "неизвестный mysql сервер 'localhost:3306'". localhost:3306 был изменен на просто locahost. поэтому после обновления моего кода, все хорошо работает.

<html>
   <head>
      <title>Connecting MySQL Server</title>
   </head>
   <body>
      <?php
         $dbhost = 'localhost';
         $dbuser = 'user1';
         $dbpass = 'pass1';
         $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
         if(! $conn ) {
            die('Could not connect: ' . mysql_connect_error());
         }
         echo 'Connected successfully';
         mysqli_close($conn);
      ?>
   </body>
</html>
2
ответ дан 3 December 2019 в 06:53

Ваш код имеет код права синтаксических ошибок для использования:

<?php
    $dbhost = "localhost:3306";
    $dbuser = "user1";
    $dbpass = "pass1";
    $connection = mysqli_connect($dbhost, $dbuser, $dbpass);
    if(!$connection){
        die("connection error " . mysqli_error());
    }
    echo "connected successfully";
    mysqli_close($connection);
?>

Ошибки:

  • mysqli_erro() ==> mysqli_error()
  • dbpass ==> $dbpass
2
ответ дан 3 December 2019 в 06:53

Вы говорите, что сделали это...

sudo apt-get install php5-mysql

И Вы никогда не упоминаете, что делали это, которое также требуется...

sudo service apache2 restart

Просто, потому что Вы устанавливаете php5-mysql, не означает, что Apache загрузил или PHP или модуль MySQL PHP.

можно узнать наверняка, что происходит путем создания phpinfo.php файла, содержащего...

<?php
print_r (phpinfo());
?>

Затем проверка + гарантирует обоим, какой PHP загружается + PHP mysql, модуль загружается.

, Когда в сомнении, всегда проверяйте свой phpinfo.php вывод файла как Ваш первый шаг отладки.

Много раз наличие этого простого вывода, быстро сложные проблемы твердости.

0
ответ дан 3 December 2019 в 06:53

Другие вопросы по тегам:

Похожие вопросы: