2016-06-06 2 views
-1

Ich entwickle eine Webanwendung und möchte die Antwort (Ja oder Nein) vom Benutzer erhalten, wenn die Deaktiviertaste gedrückt wird. Ich möchte ihn fragen, ob Sie den Account deaktivieren möchten oder nicht. Ich benutze PHP, um den aktiven Status auf = 1 zu setzen, wenn deaktiviert und 0 bis aktiviert.Bestätige Box in PHP?

Ich möchte das Ergebnis erhalten und in PHP überprüfen, ob die Abfrage ausgeführt wird oder nicht.

Ich würde mich freuen, wenn mir jemand hilft, danke. Hier ist der Code:

if(isset($_POST['desativar'])) 
{ 

    $login = $_SESSION['login']; 


    mysqli_query($conexao,"UPDATE usuarios SET ativo_usuario = 1 WHERE login_usuario='$login'"); 

} 
+2

[Kleine Bobby] (http : //bobby-tables.com/) sagt [Ihr Skript ist für SQL-Injektionsattacken gefährdet.] (http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in- php) Erfahren Sie mehr über [vorbereitet] (http://en.wikipedia.org/wiki/Prepared_statement) Anweisungen für [MySQLi] (http://php.net/manual/en/mysqli.quickstart.prepared-statements.php) . Sogar [die Zeichenfolge zu entkommen] (http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string) ist nicht sicher! –

+0

Ich habe keine Ahnung, worum es bei dieser Frage geht. –

+0

... geht jetzt weiter. –

Antwort

0
**JS** 

    <script type="text/javascript"> 
    function confirmDesactiv() 
    { 
     var flag = confirm("Are you sure ?"); 
     if(flag) 
      window.open("yourphp.php?id=" + 1); 
     else 
      window.open("yourphp.php?id=" + 0); 
    } 

</script> 
**HTML**  



    <form method="POST" action=""> 
    <button type="submit" onclick="confirmDesactiv()">Desactiv my account</button> 
    </form> 



**PHP** 

<?php 
echo $_GET['id']; 
if(isset($_GET['id']) && $_GET['id']) 
{ 
    //your update query will come here 
} 
?>                        
+0

Wie bekomme ich das Ergebnis, dass PHP die Abfrage ausführt oder nicht? Vielen Dank. – VitorTech

+0

können Sie Ihren Code mit uns teilen? –

+0

Ich habe den Post bearbeitet und den Code in PHP eingefügt. – VitorTech

0

es versuchen.

function confirm_delete(){ 
    if(confirm("Are you sure you want to delete this..?") === true){ 
     return true; 
    }else{ 
     return false; 
    } 
} 

<input type="button" Onclick="confirm_delete()"> 
+1

Warum sollte das OP "das versuchen"? Eine *** gute Antwort *** wird immer eine Erklärung haben, was getan wurde und warum es so gemacht wurde, nicht nur für das OP, sondern auch für zukünftige Besucher von SO. –

+0

Wie kann ich von false in PHP verwenden? – VitorTech

0

können Sie verwenden onsubmit Attribut.

Beispiel

function confirmDesactiv() 
 
{ 
 
    if(confirm("Are you sure ?")) 
 
    return true; 
 
    
 
    return false; 
 
}
<form method="POST" action="yourphp.php" onsubmit="return confirmDesactiv()"> 
 
<button type="submit">Desactiv my account</button> 
 
</form>

0

Sie PHP so etwas wie ein Bestätigungsfeld vornehmen können. Im Folgenden finden Sie ein wenig smaple Code zu zeigen, wie:

<?php 
session_start(); 

if (isset($_POST['submit'])) { 
    $_SESSION['postdata'] = $_POST; 
    header("Location: ".$_SERVER['PHP_SELF']); 
    exit; 
} else if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes') { 
    // Do stuff that should only be done after confirming 
} elseif (isset($_POST['confirm']) && $_POST['confirm'] == 'no') { 
    // Cancelled, redirect back to page 
    header("Location: ".$_SERVER['PHP_SELF']); 
    exit; 
} 
?> 

<?php if (isset($_SESSION['postdata']) && !isset($_POST['confirm'])): ?> 
    <form method="POST" action="<?= $_SERVER['PHP_SELF']; ?>"> 
     Are you sure you want to do this?<br /> 
     <input type="submit" name="confirm" value="yes"> 
     <input type="submit" name="confirm" value="no"> 
    </form> 
<?php else: ?> 
    <!-- Your form here --> 
<?php endif; ?> 
0

Wenn Sie nicht AJAX verwenden wollen, und Ihre Seite unter der Annahme, index.php aufgerufen:

<? 
    $deactivateStatusDisplay = "display: none"; // Initially, do not display a status. 
    $deactivateStatusMsg = ""; //Status message is initialized as blank. 
    $queryRan = false; // Just a flag to know if the user clicked deactivation link. 

    if(1 === $_GET['deactivate']){ 
     $deactivateStatusDisplay = "display: block"; 
     $deactivateStatusMsg = "Your account will be deactivated."; 
     $queryRan = true; 
    } 
?> 

<!DOCTYPE html > 
<html> 
    <head> 
     <!-- ALL YOUR METADATA --> 
    </head> 
    <body> 
     <div>Do you want to deactivate your account?</div> 
     <a href="index.php?deactivate=1">DEACTIVATE</a> 
     <div id="status" style="<? echo $deactivateStatusDisplay ?>"><? echo $deactivateStatusMsg ?></div> 
    </body> 
</html>