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
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
-
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() -
merci je test
-
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> -
comment peut on afficher un message a la fin de l'enregistrement "nom enregistrer"
merci d'avance -
c qua le problem Thiphariel ?
-
le bouton ne marche pas
-
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é !"; } -
je teste
merci -
sa ne fonctionne pas je pence qu'il y a une erreur quelque part ,aucun enregistrement et fait
-
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 -
je n arrive pas a identifier l'erreur
-
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 ? -
je test
-
non sa marche pas ;(
-
on utilise TeamViewer ?si vous pouvez?
-
Probleme résolu.
Form a l'interieur d'un form + condition if du deuxieme formulaire a sortir du premier.