HTML-POST-Methode lädt das entsprechende PHP herunter

HTML-POST-Methode lädt das entsprechende PHP herunter

Ich erstelle ein Authentifizierungsformular in HTML und versuche, es mit PHP zu verknüpfen. Der HTML-Code ist

<!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>

Die entsprechende auth.php-Datei (die ich erstellt habe, um die grundlegende Funktion der POST-Methode sicherzustellen, bevor ich sie erweitere) lautet:

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

Aber wenn ich die HTML-Datei in Chrome öffne und auf die Schaltfläche „Anmelden“ klicke, wird die Datei auth.php einfach heruntergeladen. Es findet keine Aktion statt. Sowohl die HTML- als auch die PHP-Datei befinden sich im selben Ordner.

Übersehe ich eine Syntax/einen Operator/eine Methode?

Antwort1

Wenn der Webserver den Dateityp nicht erkennt, neigt er zum Herunterladen statt zur Ausführung.

Stellen Sie zunächst sicher, dass Sie php5module installiert und aktiviert haben. Sie können dies über die Befehlszeile überprüfen:

$ a2enmod -l

Aktionen Alias ​​auth_basic authn_file authz_host authz_groupfile authz_user Autoindex CGI-Dir Umgebung läuft ab Include log_config MIME-Verhandlung Setenvif SSL Socache_shmcb Benutzerverzeichnis reqtimeout authn_core mcrypt mod_rewritephp5authz_core

Überprüfen Sie dann auch Ihre httpd.conf oder default-server.conf und stellen Sie sicher, dass sie Folgendes enthält:Typ hinzufügen

Dokumentstammverzeichnis "/srv/www/htdocs"

VerzeichnisIndex index.html index.htm index.php index.php5 index.php4 index.php3

AddType-Anwendung/x-httpd-php .php .php3 .php4 .php5

Vergessen Sie nicht, Ihren Webserver für Ubuntu neu zu starten: sudo service apache2 restart

verwandte Informationen