HTML POSTメソッドは対応するphpをダウンロードします

HTML POSTメソッドは対応するphpをダウンロードします

私はHTMLで認証フォームを作成し、それをPHPにリンクさせようとしています。HTMLコードは次のとおりです。

<!DOCTYPE html>
<html>
<head>
    <title>Authorized logged in</title>
</head>

<div id = "adminBoard">

<form method = "POST" action = "auth.php">
<input type="text" class = "credentialInputL" name="loginInput" value = "login" size = 30>
<input type="password" class = "credentialInputP" name="passwordInput" value = "pass" size = 30>
<input class="loginLogoutButton" type = "submit" value = "Sign in" name="loginLogout">
</form>
</div>

</body>
</html>

対応する auth.php ファイル (拡張する前に POST メソッドの基本的な動作を確認するために作成したもの) は次のとおりです。

<?php
    if (isset($_POST['loginInput']) && isset($_POST['passwordInput'])){
        $username = $_POST['loginInput'];
        $password = $_POST['passwordInput'];
        echo "The username is :" . $username;
        echo "The password is :" . $password;
    }
?>

しかし、Chrome で HTML ファイルを開いて [サインイン] ボタンをクリックすると、auth.php ファイルがダウンロードされるだけです。何もアクションは実行されません。html ファイルと php ファイルの両方が同じフォルダーにあります。

構文/演算子/メソッドが不足していますか?

答え1

Web サーバーは、ファイルの種類を認識できない場合、実行ではなくダウンロードする傾向があります。

まず、php5module がインストールされ、有効になっていることを確認します。コマンドラインから確認できます:

$ a2enmod -l

アクション エイリアス auth_basic authn_file authz_host authz_groupfile authz_user autoindex cgi dir env expires include log_config mime negotiation setenvif ssl socache_shmcb userdir reqtimeout authn_core mcrypt mod_rewritephp5認証コア

次に、httpd.confまたはdefault-server.confをチェックして、次の内容が含まれていることを確認します。追加タイプ

ドキュメントルート "/srv/www/htdocs"

ディレクトリインデックス index.html index.htm index.php index.php5 index.php4 index.php3

アプリケーション/x-httpd-php .php .php3 .php4 .php5 にタイプを追加します

UbuntuのWebサーバーを再起動することを忘れないでください: sudo service apache2 restart

関連情報