source

HTML php 스크립트를 통해 mysql 데이터베이스에 연결할 수 없습니다.

lovecheck 2022. 11. 18. 21:30
반응형

HTML php 스크립트를 통해 mysql 데이터베이스에 연결할 수 없습니다.

MariaDB를 실행하고 있는 라즈베리 파이(OS: Ubuntu 18.04, 로컬 IP: 192.168.1.84)를 가지고 있으며 데스크톱(OS: Ubuntu 18.04, 로컬 IP: 192.168.1.76)에서 액세스할 수 있도록 구성되어 있습니다.데스크톱에서 인터랙티브한 php 쉘을 실행했는데 모든 것이 정상이었습니다.

$ php -v
PHP 7.2.24-0ubuntu0.18.04.6 (cli) (built: May 26 2020 13:09:11) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.24-0ubuntu0.18.04.6, Copyright (c) 1999-2018, by Zend Technologies
$ php -a
php > $conn = new mysqli("192.168.1.84", "root", "", "test");
php > $result = $conn->query("SELECT * FROM testing");
php > echo $result->num_rows;
3

다만, 이러한 정보를 표시하기 위해서, 퀵 html 스크립트를 작성했습니다.

<html>
<body>

<?php
$conn = new mysqli("192.168.1.84", "root", "", "test");
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

echo "<p>Connection successful</p>";
?>

</body>
</html>

브라우저에서 html 파일을 열려고 하면 (php 코드 섹션이 기재된 페이지) 이렇게 됩니다.그 페이지에 무슨 일이 일어나고 있는지 전혀 모르겠어요.

저는 html/php에 익숙하지 않습니다.어떤 도움도 감사합니다.

PHP는 서버 측 스크립팅 언어입니다.PHP 파일을 브라우저에 여는 것만으로 직접 실행할 수 없습니다. 왜냐하면 PHP 파일은 인터프리터가 필요하기 때문입니다.그러면 원하는 출력을 얻을 수 있습니다.

당신이 명령행에서 한 일은 정확히 작동 방식이었어PHP 인터랙티브셸에 php 코드를 입력하시면 인터프리터를 사용하여 코드가 실행되어 출력이 표시됩니다.

Ubuntu를 사용하고 있다고 말씀하셨듯이 브라우저에서 코드를 실행하기 위해서는 Apache나 Nginx 등의 HTTP 서버와 함께 PHP를 설치해야 합니다.

양쪽을 인스톨 한 후, HTTP 서버 프로세스를 개시해, 다음의 파일을 작성합니다..php의 연장./var/www/html/Apache HTTP 서버를 설치한 것으로 가정합니다.

이렇게 하면 다음 링크를 사용하여 브라우저를 통해 파일을 볼 수 있습니다.

http://localhost/index.php

다음 명령을 실행하여 Ubuntu에서 작동하는 서버를 가져올 수 있습니다.

sudo add-apt-repository ppa:ondrej/apache2

sudo apt-get update

sudo apt-get install apache2

sudo apt-get install php7.2

sudo service apache2 start

항상 권장되는 VHOST를 설정하려면 다음과 같은 방법을 사용할 수 있습니다.

다음 명령을 실행하여 VHOST 설정 파일을 만듭니다.

sudo nano /etc/apache2/sites-available/project1.loc.conf

그런 다음 다음 설정을 복사하여 파일에 붙여넣고 conf 파일을 저장합니다.

<VirtualHost *:80>
    ServerName project1.loc
    ServerAlias project1.loc
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/project1.loc
    <Directory /var/www/html/project1.loc/>
            Options All
            AllowOverride All
            Require all granted
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

그런 다음 VHOST를 사용하도록 설정하고 apache를 다시 시작합니다.

sudo a2ensite project1.loc.conf

sudo systemctl restart apache2

다음 행을 에 추가합니다./etc/hosts또, 다음과 같이 합니다.

127.0.0.1 project1.loc

를 변경할 때마다 DNS 캐시를 플러시합니다.hosts 삭제:

sudo systemd-resolve --flush-cache

다음으로 다음 명령을 실행하여 프로젝트 디렉토리를 만듭니다.

sudo mkdir /var/www/html/project1.loc

다음으로 다음 명령을 실행하여 PHP 파일(코드 저장 위치)을 만듭니다.

touch /var/www/html/project1.loc/index.php

그런 다음 브라우저에서 다음 링크를 사용하여 파일을 볼 수 있습니다.

http://project1.loc/index.php

에는 물론 이지만 편집만 하면 .집해해편/var/www/html/project1.loc/index.php을 빌어요행운을 빕니다.

할 수 . 파일 로 변경합니다. 이치노index.phpHTML 스크립트 같은 것은 없습니다.HTML은 HyperText Markup Language의 약자로 스크립팅에 대해서는 언급하지 않습니다.

가 「」의 되어 있는 는, HTTP 「」가 됩니다.*.phpextension에서는extension과 할 수 .

또한 XAMPP와 같은 HTTP 서버를 설치하고 가상 호스트를 추가해야 합니다.당신은 단지 브라우저에서 PHP 파일을 열고 그것이 작동하기를 바라며 살 수는 없습니다.

에 Ubuntu를 사용하여 할 수 .apt이 아리클을 봐

먼저 파일 확장자를 from으로 변경합니다..html로로 합니다..php.

둘째, PHP를 실행하기 위해 WAMP, XAMPP 또는 Laragon(또는 시스템에 적합한 기타)과 같은 로컬 HTTP 서버를 사용합니다.

언급URL : https://stackoverflow.com/questions/63332704/unable-to-connect-to-mysql-database-through-html-php-script

반응형