Подключение PHP к MySQL и получение данных

Я новичок в PHP, и я пытаюсь создать простое соединение из HTML в MySQL с помощью PHP. Я столкнулся с некоторыми проблемами при запуске моих кодов.

это мой код:

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "database";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT username FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br> id: ". $row["userid"]. ;
}
} else {
echo "0 results";
}

$conn->close();
?>

после запуска в браузере это отображается:

connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "SELECT username FROM users"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "id: ". $row["userid"]. ; } } else { echo "0 results"; } $conn->close(); ?>

0

Решение

MySQL работает на вашем локальном компьютере? Прежде чем вы сможете подключиться через php, вы должны убедиться, что он работает. Кроме того, убедитесь, что у вас есть открытые сокеты TCP / IP в mysql, и убедитесь, что они не просто слушают через сокеты unix.

3

Другие решения

  echo "<br> id: ". $row["userid"]. ;

это синтаксическая ошибка, нет необходимости завершать ее полной остановкой. Также правильный синтаксис для подключения к серверу SQL

mysqli_connect("localhost","my_user","my_password","my_db") or die("");

Отладка кода перед публикацией здесь.

1

возможно попробуйте проверить это с помощью оператора try catch. Это то, что я сделал. таким образом, вы можете отображать свои сообщения об ошибках немного лучше. Что касается причины, PressingOnAlways, вероятно, прав

0

Если вы используете wampserver или любой другой сервер, вам нужно поместить ваши php-файлы в папку c: \ wamp \ www и запустить их в браузере, введя localhost / nameofyourfile.php (измените c: \ wapm \ www в качестве пути установки вашего сервера или тип)

0

у вас есть синтаксическая ошибка в линии разрыва

echo "<br> id: ". $row["userid"]. ;

. (точка) не должно быть там.

второй вы получаете имя пользователясильный текст по следующему запросу

$sql = "SELECT username FROM users";

но вы пытаетесь получить Идентификатор пользователя

echo "<br> id: ". $row["userid"]. ;

попробуйте ниже код.

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "databasename";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT usersname FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br> id: ". $row["usersname"] ;
}
} else {
echo "0 results";
}

$conn->close();
?>
0