Я пытаюсь настроить сервер ЛАМПЫ на 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 расширение, но имеющий проблему, определяющую местоположение его.
ТАКИМ ОБРАЗОМ, то, что я сделал, было 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>
Ваш код имеет код права синтаксических ошибок для использования:
<?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
Вы говорите, что сделали это...
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 вывод файла как Ваш первый шаг отладки.
Много раз наличие этого простого вывода, быстро сложные проблемы твердости.