Bouton confirmation php

Résolu
salut
j'ai développer un bout de code (php) qui permet le vérification d'un nom dans une base de donne, si le nom existe il affiche un message "nom existant" si nom il enregistre le nouveau nom dans la base mon problème c'est que je veut que l'utilisateur confirme avant d'enregistré le nouveau nom, comment faire pour sa voici mon code :
-----------------------------------------------------------------------------------------------------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>

<body>
<form method= "post" name="2" > nom <input type= "text" name="nom" ><br>
<input type= "submit" name= "submit" value= "OK" ><br>

<?php

if (isset($_POST['submit']))
{
if (empty($_POST['nom']))
{
echo "saisir le nom";
echo "<br>" ;
}
else
{
echo $_POST['nom'] ;
echo " <br> " ;

//connection au serveur .
mysql_connect ( "localhost" , "root" , "" ) or die ( "connection au serveur impossible" );
//selection de la base .
mysql_select_db ( "amin" ) or die ( "impossible de ce connecter a la base de donnee" );
$req = " select nom from user ";
$res = mysql_query ($req) ; //execution de la requete "req"

$ok=false;
while ($tab = mysql_fetch_array ( $res ) ) //tester l'exsistance du nom
{
if ($tab['nom'] == $_POST['nom'])
$ok=true;
}

if ( $ok == true )
echo "nom exsistant" ;
else
{
echo "nom non exsistant" ;
echo "<br>" ;
echo "enregistrer ?";
$a=$_POST['nom'] ;
$eq = " INSERT INTO user VALUES (NULL,'$a',545) " ;
$es = mysql_query ($eq) ;
}
}

}

?>

</form>
</body>
</html>
-----------------------------------------------------------------------------------------------------------------
merci d'avance

16 réponses

  1. Probleme résolu.
    Form a l'interieur d'un form + condition if du deuxieme formulaire a sortir du premier.
    1. on utilise TeamViewer ?si vous pouvez?
      1. Si tu veux. Mp moi l'ID et le pass dans ce cas.
      2. je vous envoi un message perso
    2. Et si tu fait :

      $nom = $_POST['nom'];
      echo "<form method=\"post\">   
                   <input type=\"hidden\" name=\"verif\" value=\"$nom\" />   
                   <input type=\"submit\" name=\"envoi\" value=\"Envoyer\" /> 
               </form>";  
      


      Ca marche ?
      1. et lorque j'enlève echo "<form method=\"post\">
        <input type=\"hidden\" name=\"verif\" value=".$_POST['nom']." />
        <input type=\"submit\" name=\"envoi\" value=\"Envoyer\" />
        </form>";
        if(isset($_POST['envoi'])){

        sa fonctionne
        1. sa ne fonctionne pas je pence qu'il y a une erreur quelque part ,aucun enregistrement et fait
          1. if ( $ok == true )    
                echo "nom exsistant" ;    
            else {    
                echo "nom non exsistant" ;    
                echo "<br>" ;    
                echo "enregistrer ?";   
                echo "<form method=\"post\">   
                         <input type=\"hidden\" name=\"verif\" value=".$_POST['nom']." />   
                         <input type=\"submit\" name=\"envoi\" value=\"Envoyer\" /> 
                     </form>";   
                if(isset($_POST['envoi'])){   
                    $a=$_POST['verif'] ;    
                    $eq = " INSERT INTO user VALUES (NULL,'$a',545) " ;    
                    $es = mysql_query ($eq); 
                    if($es) 
                        echo "Nom enregistré !"; 
                    else 
                        echo "Erreur. Nom non enregistré !"; 
                }
            1. comment peut on afficher un message a la fin de l'enregistrement "nom enregistrer"
              merci d'avance
              1. sa n'a pas marcher
                -------------------------------------------------------------------------------------------------------

                <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
                <html xmlns="http://www.w3.org/1999/xhtml">
                <head>
                <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                <title>Document sans titre</title>
                </head>

                <body>
                <form method= "post" name="2" > nom <input type= "text" name="nom" ><br>
                <input type= "submit" name= "submit" value= "OK" ><br>

                <?php

                if (isset($_POST['submit']))
                {
                if (empty($_POST['nom']))
                {
                echo "saisir le nom";
                echo "<br>" ;
                }
                else
                {
                echo $_POST['nom'] ;
                echo " <br> " ;

                //connection au serveur .
                mysql_connect ( "localhost" , "root" , "" ) or die ( "connection au serveur impossible" );
                //selection de la base .
                mysql_select_db ( "amin" ) or die ( "impossible de ce connecter a la base de donnee" );
                $req = " select nom from user ";
                $res = mysql_query ($req) ; //execution de la requete "req"

                $ok=false;
                while ($tab = mysql_fetch_array ( $res ) )
                {
                if ($tab['nom'] == $_POST['nom'])
                $ok=true;
                }

                if ( $ok == true )
                echo "nom exsistant" ;
                else
                {
                echo "nom non exsistant" ;
                echo "<br>" ;
                echo "enregistrer ?";

                echo "<form method='post'>
                <input type='hidden' name='verif' value=".$_POST['nom']." > <input type='submit' name='envoi' value='Envoyer' >
                </form>";
                if(isset($_POST['envoi']))
                {
                $a=$_POST['verif'] ;
                $eq = " INSERT INTO user VALUES (NULL,'$a',545) " ;
                $es = mysql_query ($eq) ;
                }
                }
                }
                }

                ?>

                </form>
                </body>
                </html>
                1. Qu'est ce qui n'a pas marché ?
                  Le bouton ? Ton code ?
              2. Javascript peux t'aider.

                if (confirm("Etes vous sûr ?"))    
                 // Execution du code Php    
                else    
                 // Si l'utilisateur n'a pas confirmé    
                


                Ou alors, tu refait tout simplement un <form> à ce niveau :

                if ( $ok == true )   
                    echo "nom exsistant" ;   
                else {   
                    echo "nom non exsistant" ;   
                    echo "<br>" ;   
                    echo "enregistrer ?";  
                    echo "<form method=\"post\">  
                             <input type=\"hidden\" name=\"verif\" value=".$_POST['nom']." />  
                             <input type=\"submit\" name=\"envoi\" value=\"Envoyer\" />
                         </form>";  
                    if(isset($_POST['envoi'])){  
                        $a=$_POST['verif'] ;   
                        $eq = " INSERT INTO user VALUES (NULL,'$a',545) " ;   
                        $es = mysql_query ($eq);   
                    }  
                }    
                


                Et pense à sécuriser tes requete SQL ... La n'importe quoi peux rentrer.
                Regarde la fonction mysql_real_escape_string()