반응형
왜 PHP가 오류 코드 없이 mysqli_connect에 고착됩니까?
온 라인
$conn = mysqli_connect($dbServername, $dbUsername, $dbPassword, $dbName);
PHP는 오류 없이 중지됩니다.
이것은 PHP 7.0, Apache 2 및 MariaDB 10을 실행하는 새로운 Linux 서버를 위한 것입니다."myql-server" 패키지를 설치했는데도 왜 MariaDB를 실행하는지 모르겠습니다.호환이 된다고 해서 괜찮을 것 같습니다.같은 결과로 다른 컴퓨터(Raspberry Pi 3)에 서버를 설치하려고 했습니다.
<?php
$dbServername = "localhost";
echo "passed dbServername <br>";
$dbUsername = "root";
echo "passed dbUsername <br>";
$dbPassword = "";
echo "passed dbPassword <br>";
$dbName = "cities";
echo "passed dbName <br>";
$conn = mysqli_connect($dbServername, $dbUsername, $dbPassword, $dbName);
echo "passed conn <br>";
if (!$conn) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
} else {
echo "success! <br>";
}
?>
웹 페이지에서 출력하는 내용은 다음과 같습니다.
passed dbServername
passed dbUsername
passed dbPassword
passed dbName
그리고 절대적으로 다른 건 없습니다.연결 여부와 상관없이 더 많은 출력을 기대하겠습니다.
편집:
흥미롭게도 다음과 같은 오류 보고를 삽입하면 다음과 같습니다.
$dbServername = "localhost";
echo "passed dbServername <br>";
$dbUsername = "root";
echo "passed dbUsername <br>";
mysqli_report(MYSQLI_REPORT_ALL);
$dbPassword = "";
echo "passed dbPassword <br>";
$dbName = "cities";
echo "passed dbName <br>";
출력을 확인합니다.
passed dbServername
passed dbUsername
따라서 MySqli와 관련된 모든 것을 추가하면 PHP가 동결될 것으로 보입니다.
오류 보고가 없으면 소스를 보면 다음과 같이 표시됩니다.
passed dbServername <br>passed dbUsername <br>passed dbPassword <br>passed dbName <br>
이것이 7개월 된 것은 알지만, 저도 같은 문제가 있었습니다.
솔루션은 쉬웠습니다.나는 아직 php-myql을 설치하지 않았습니다!
Ubuntu에서 실행
apt install php-mysql
언급URL : https://stackoverflow.com/questions/55311209/why-is-php-stuck-on-mysqli-connect-with-no-error-code
반응형
'programing' 카테고리의 다른 글
ImeOptions의 완료 버튼 클릭은 어떻게 처리합니까? (0) | 2023.09.04 |
---|---|
PowerShell에서 서브루틴을 정의하는 방법 (0) | 2023.09.04 |
jQuery를 사용하여 JavaScript 오브젝트 속성 반복 (0) | 2023.09.04 |
AlarmManager에 알람이 이미 설정되어 있는지 확인하는 방법은 무엇입니까? (0) | 2023.09.04 |
스판 태그 내부에 수직으로 정렬하려면 어떻게 해야 합니까? (0) | 2023.09.04 |