2016-10-05 1 views
0

So habe ich eine Datei mit PHP und HTML drin. Der HTML-Code funktioniert einwandfrei, aber wenn ich den PHP-Code eingeben, wird aus irgendeinem Grund nichts wiedergegeben. Siehe Code für Beter Refrence. Auch Protokolle sagen nicht wirklich etwas über das Problem.php im Konflikt mit html

Dies scheitert alles

<?php 
 

 
echo $_POST['naam']; 
 
die(); 
 

 
?> 
 

 
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <title>Scouts Permeke</title> 
 
    <link rel="stylesheet" type="text/css" href="siteStyle.css"> 
 
</head> 
 
<body> 
 
    <H2>Login</H2> 
 

 
    <form action="login.php" method="POST"> 
 
     <input name="naam" type="text" id="naam" class="form-control" placeholder="Gebruikersnaam"/><br> 
 
     <input name="psw" type="password" id="psw" class="form-control" placeholder="Passwoord"/><br> 
 
     <button type="submit">Login</button> 
 
    </form> \t 
 
</body> 
 
</html>

Aber das zeigt meine HTML wie beabsichtigt zu tun.

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <title>Scouts Permeke</title> 
 
    <link rel="stylesheet" type="text/css" href="siteStyle.css"> 
 
</head> 
 
<body> 
 
    <H2>Login</H2> 
 

 
    <form action="login.php" method="POST"> 
 
     <input name="naam" type="text" id="naam" class="form-control" placeholder="Gebruikersnaam"/><br> 
 
     <input name="psw" type="password" id="psw" class="form-control" placeholder="Passwoord"/><br> 
 
     <button type="submit">Login</button> 
 
    </form> \t 
 
</body> 
 
</html>

+0

Ist die Dateiendung '.html' oder' .php'? – RiggsFolly

+0

Wenn es keine POST-Variable namens 'naam' gibt, erhalten Sie einen Fehler und einen leeren Bildschirm - was sehen Sie? – RamRaider

+4

Es wird nichts gerendert, weil Sie 'echo $ _POST ['naam']' (was wahrscheinlich Null ist) und 'die()' unmittelbar danach (damit der Code nicht mehr läuft). – Dekel

Antwort

1

Sie müssen sonst eigentlich gesetzt, wenn die Variable prüfen ist, wird es immer aus dem Inhalt von $_POST['naam'] drucken, ohne sich, wenn der Benutzer bereits Daten eingegeben und drückte auf den Absenden-Button.

if(isset($_POST['naam'])) { 
    echo $_POST['naam']; 
    die(); 
} 
+0

Dies behoben das Problem, danke für die Antwort! –

0

Das ist, weil es einen Fehler ignoriert, wie die $ _POST Array nicht die „Naam“ hat Variable und der php.ini für Anzeigefehler ausgeschaltet ist. Wenn das Array in php den Schlüssel nicht enthält, wird ein Fehler ausgegeben, und in diesem Fall wird der Fehler aufgrund der Produktionseinstellungen ignoriert. Dies ist auch der Grund, warum die "sterben();" Zeile wird nicht interpretiert. Bitte überprüfen Sie, ob php.ini hat oder kommentiert

display_errors: Off 

und machen es in

display_errors: On 

Starten Sie Apache, um die Einstellungen der Arbeit zu bekommen.

Sie können auch die erste Codezeile im PHP-Tag entfernen und kommentieren, um zu sehen, ob die Funktion Die() funktioniert. Bitte lassen Sie uns wissen, wenn dies Ihren Fehler behoben hat.