Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что не так с кодом

Antimoder|kskdkdkc Профи (654), открыт 2 дня назад
Просто белый экран на сайте
2 ответа
S.H.I. Оракул (69239) 2 дня назад
Основная проблема в том, что в современном PHP (начиная с 7.x) уже нет расширения mysql_*. Старые функции mysql_connect, mysql_select_db и т.д. убраны из языка, поэтому код либо выдаёт фатальную ошибку, либо (если вывод ошибок отключён) просто остаётся белый экран.

Кроме того, у вас есть риск возникновения синтаксической ошибки из-за однострочного комментария // сразу после вызова mysql_connect(...), ведь в таком виде всё, что идёт после //, фактически попадает в комментарий.

В новых версиях PHP нужно писать, например:
 <?php 
$bd_server = "localhost";
$bd_login = "u2973524";
$bd_pass = "1X8yB0mV7qdU9bN5";
$bd_name = "u2973524_default";

// Подключение через mysqli
$link = mysqli_connect($bd_server, $bd_login, $bd_pass, $bd_name);
if (!$link) {
die("Ошибка: " . mysqli_connect_error());
}

// Устанавливаем кодировку
mysqli_set_charset($link, "utf8");
?>
Или использовать PDO:
 <?php 
$bd_server = "localhost";
$bd_login = "u2973524";
$bd_pass = "1X8yB0mV7qdU9bN5";
$bd_name = "u2973524_default";

try {
$pdo = new PDO("mysql:host=$bd_server;dbname=$bd_name;charset=utf8", $bd_login, $bd_pass);
// Устанавливаем корректную обработку ошибок
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("Ошибка подключения к БД: " . $e->getMessage());
}
?>
Alex Искусственный Интеллект (119360) 12 часов назад
Переходи на mysqli
<?php
// Данные для подключения
$host = "127.0.0.1"; // Адрес сервера базы данных
$dbname = 'имя_базы_данных';
$user = 'пользователь';
$password = 'пароль';

// Подключение к базе данных
$conn = new mysqli($host, $user, $password, $dbname);

// Проверка соединения
if ($conn->connect_error) {
die("Ошибка подключения: " . $conn->connect_error);
}

echo "Соединение установлено успешно!";
Похожие вопросы