2017-05-13 1 views
0

Das ist mein Admin-Panel Code:Wie man einen PHP-Code ausführt, nur wenn der "Senden" -Button Sie umleitet.

<form action="connectdb.php" method="post"> 
    <input type="text" name="name"> 
    <input type="submit"> 
</form> 

Also, Es ist der Code in connectdb.php wird so, nur ausgeführt, wenn die Schaltfläche "Senden" einen Benutzer es umleitet. Es wird nicht ausgeführt, wenn ein Benutzer die Seite /connectdb.php direkt öffnet.

Muss ich etwas Sitzung, so etwas starten?

Hinweis: Ich bin ein Neuling, so wenden Sie sich bitte im Detail erklären.

Antwort

1

Da Ihr Formular method="post" verwendet Sie den folgenden Code am Anfang Ihres connectdb.php Datei platzieren können:

<?php 
if (empty($_POST)){ 
    exit; 
} 

//The rest of your code goes here 

Diese überprüft, ob die $ _POST Variable ist entweder nicht vorhanden oder nicht vorhanden ist aber ist leer. Wenn das Ergebnis wahr ist, bedeutet dies, dass das Formular nicht gesendet wurde und ein Nutzer direkt zur Seite gegangen ist. Das Skript wird dann beendet und ein leerer Bildschirm wird angezeigt.

Statt einen leeren Bildschirm anzuzeigen, können Sie stattdessen wollen auf eine andere Seite, wie dies umleiten:

<?php 
if (empty($_POST)){ 
    header("Location: index.html"); 
    exit; 
} 

//The rest of your code goes here 

Jedes Mal, wenn Sie eine Umleitung wie dies zu tun, ist es wichtig, einen Ausgang zu setzen; Anweisung direkt danach, andernfalls könnte Ihr Skript noch einige der anderen Anweisungen verarbeiten und Daten an den Browser senden, die nicht gesendet werden sollten. Dies könnte in einigen Fällen ein Sicherheitsrisiko darstellen. Eine Exit-Anweisung verhindert diese Art von Sicherheitsrisiko.

0

Nicht sicher, ob Sie es wirklich brauchen, aber man kann ein name Attribut wie folgt hinzu:

<input name="submit_button" type="submit"> 

Also, wenn Sie auf diese Schaltfläche klicken, um eine $_POST['submit_button'] Variable wird auf der PHP-Seite erstellt werden, und dann Sie verwenden können, um es zu überprüfen, ob die Schaltfläche geklickt wurde:

if(isset($_POST['submit_button'])){ 
    // your code 
} 
0
<input type="submit" name="submit_btn"> 

Jetzt in Ihrem connectdb.php Scheck,

<?php 
if(isset($_POST['submit_btn'])) 
{ 
    //do your code 
} 
else 
{ 
//redirect to your home page 
} 
?> 
Verwandte Themen