Le code n'accede pas a ce bouton php
andy1508
-
andy1508 -
andy1508 -
Bonjour,
je travaille sur un form ou je demande de remplir un champs affiche les infos relatifs , puis demande une confirmation pour enregistrer voila la stucture du code
//(l 'entete+ connex )
//les champs
<input type="submit" name="ok" value="ok" /> </br> // bouton d ordre d affichage
<?php
if(isset($_POST["ok"]))
{
?>
<input type="submit" name="yes" value="yes" /> </br>
<?php
if(isset($_POST["yes"]))
{
traitement apres le click sur yes
}
}
?>
mais meme kan je clicke le traitement de "yes" ne s'execute pas mais il passe a la page definie dans "action" du form
je travaille sur un form ou je demande de remplir un champs affiche les infos relatifs , puis demande une confirmation pour enregistrer voila la stucture du code
//(l 'entete+ connex )
//les champs
<input type="submit" name="ok" value="ok" /> </br> // bouton d ordre d affichage
<?php
if(isset($_POST["ok"]))
{
?>
<input type="submit" name="yes" value="yes" /> </br>
<?php
if(isset($_POST["yes"]))
{
traitement apres le click sur yes
}
}
?>
mais meme kan je clicke le traitement de "yes" ne s'execute pas mais il passe a la page definie dans "action" du form
A voir également:
- Le code n'accede pas a ce bouton php
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
17 réponses
Je comprend pas tout, lorsque l' utilisateur clique sur OK, tu veux que ca affiche un récapitulatif des informations qu' il a renseigné et qu' il les corfirme en cliquant sur YES ?
Je pense que le problème vient du fait que l' action du YES est imbriquée dans le OK. Quand tu cliques sur YES, tout ce qui est après
ne sera pas interprété puisque tu cliques sur YES et non sur OK
if(isset($_POST["ok"])) {
ne sera pas interprété puisque tu cliques sur YES et non sur OK
Quelque chose comme ca
if(isset($_POST["ok"]))
{
echo '<input type="submit" name="yes" value="yes" /> </br>';
}
if(isset($_POST["yes"]))
{
traitement apres le click sur yes
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
tu peux nous mettre ton code en entier ?
c trop long le code
en somme je vous explique l algo
je rentre un id_user je clike sur ok
si le user est trouve il m affiche son prenom et le bouton yes (yes va supprimer )
si je clicke sur yes il est supprimee
s'il trouve pas le user il maffiche un prompt
c tres simple sauf que le bouton yes refuse de s'executer avec du php (genre onsubmit = //j'execute )
mais avec javascript ca va
sauf que j'arrive pas a inclure le traitement d'une requete en php dans la focntion javascript
en somme je vous explique l algo
je rentre un id_user je clike sur ok
si le user est trouve il m affiche son prenom et le bouton yes (yes va supprimer )
si je clicke sur yes il est supprimee
s'il trouve pas le user il maffiche un prompt
c tres simple sauf que le bouton yes refuse de s'executer avec du php (genre onsubmit = //j'execute )
mais avec javascript ca va
sauf que j'arrive pas a inclure le traitement d'une requete en php dans la focntion javascript
Donc tu vas devoir apporter quelques modifications à ton code
-transformer ton bouton YES
-ajouter une DIV
echo '<input type="button" name="yes" value="yes" onclick="Deluser();" /></br>
<div id="reponse"></div>';
Entre les balises <head> et </head>
tu mets:
<script type="text/javascript">
function Deluser(){
var a_object = null;
if(window.XMLHttpRequest){
a_object = new XMLHttpRequest();
}else if(window.ActiveXObject){
a_object = new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert('Votre navigateur de supporte pas la technologie AJAX(XMLHttpRequest)...');
return;
}
a_object.open("POST","delete.php",true);
a_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
a_object.onreadystatechange = function(){
if(a_object.readyState==4){
if(a_object.status==200){
document.getElementById("reponse").innerHTML = a_object.responseText;
}
}
}
}
</script>
Ensuite tu crées une page delete.php
tu récupères la variable utilisateur
<?php
$utilisateur= trim(str_replace("+"," plus ",$_POST['delete']));
là avec la variable, tu fais ta requète pour supprimer l' utilisateur
et tu affiches un message
echo "$utilisateur a bien été supprimé";
(Ca affichera le message dans le div réponse que l' on a mis sous le bouton YES
Important
Dans la fonction Deluser() on envoit une variable $utilisateur
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
Il faut bien entendu que quand on clique sur YES la variable soit transmise
-transformer ton bouton YES
-ajouter une DIV
echo '<input type="button" name="yes" value="yes" onclick="Deluser();" /></br>
<div id="reponse"></div>';
Entre les balises <head> et </head>
tu mets:
<script type="text/javascript">
function Deluser(){
var a_object = null;
if(window.XMLHttpRequest){
a_object = new XMLHttpRequest();
}else if(window.ActiveXObject){
a_object = new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert('Votre navigateur de supporte pas la technologie AJAX(XMLHttpRequest)...');
return;
}
a_object.open("POST","delete.php",true);
a_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
a_object.onreadystatechange = function(){
if(a_object.readyState==4){
if(a_object.status==200){
document.getElementById("reponse").innerHTML = a_object.responseText;
}
}
}
}
</script>
Ensuite tu crées une page delete.php
tu récupères la variable utilisateur
<?php
$utilisateur= trim(str_replace("+"," plus ",$_POST['delete']));
là avec la variable, tu fais ta requète pour supprimer l' utilisateur
et tu affiches un message
echo "$utilisateur a bien été supprimé";
(Ca affichera le message dans le div réponse que l' on a mis sous le bouton YES
Important
Dans la fonction Deluser() on envoit une variable $utilisateur
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
Il faut bien entendu que quand on clique sur YES la variable soit transmise
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
Va envoyer a delete.php l' UserID
A mon avis c est quand on clique sur OK la page se réactualise et c est là que tu dois récupérer l' UserID j' ai appeler la variable $utlisateur mais tu peux changer, le tout c est quelle contienne la valeur de l' UserID
Ensuite sur la page delete.php
$_POST['delete'] c est justement la valeur de l' UserID que l' on a envoyé avec la requete
Va envoyer a delete.php l' UserID
A mon avis c est quand on clique sur OK la page se réactualise et c est là que tu dois récupérer l' UserID j' ai appeler la variable $utlisateur mais tu peux changer, le tout c est quelle contienne la valeur de l' UserID
Ensuite sur la page delete.php
$_POST['delete'] c est justement la valeur de l' UserID que l' on a envoyé avec la requete
Mince tout à l' heure j' ai coupé la ligne au lieu de la copier xD
Je te redonne la fonction complete
Je te redonne la fonction complete
<script type="text/javascript">
function Deluser(){
var a_object = null;
if(window.XMLHttpRequest){
a_object = new XMLHttpRequest();
}else if(window.ActiveXObject){
a_object = new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert('Votre navigateur de supporte pas la technologie AJAX(XMLHttpRequest)...');
return;
}
a_object.open("POST","delete.php",true);
a_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
a_object.onreadystatechange = function(){
if(a_object.readyState==4){
if(a_object.status==200){
document.getElementById("reponse").innerHTML = a_object.responseText;
}
}
}
}
</script>
Clique sur ton premier bouton "OK" ensuite tu regardes le code source de la page pour voir si la variable $utilisateur est bien renseignée
tu deverais voir
a_object.send("delete=user_48");
Ps; je viens de voir que j' ai pas fermé la parenthèse
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
a_object.send("delete=<? echo '.'$utilisateur.''; ?>");
tu deverais voir
a_object.send("delete=user_48");
Ps; je viens de voir que j' ai pas fermé la parenthèse
a_object.send("delete=<? echo '.'$utilisateur.''; ?>";
a_object.send("delete=<? echo '.'$utilisateur.''; ?>");
Voici la ligne correcte; je viens de la tester
a_object.send("delete=<?php echo ''.$utilisateur.''; ?>");
a_object.send("delete=<?php echo ''.$utilisateur.''; ?>");
voila un peu la vrai application , bon j ai parler de suppression mais c est just un exemple pour faire des test mais la vrai application se trouve ici
fichier emprunt
<?php //connection base donnee
$db = mysql_connect('localhost', 'root' );
mysql_select_db('mediatheque',$db);
?>
<HEAD>
<script type="text/javascript">
function Deluser(){
var a_object = null;
if(window.XMLHttpRequest){
a_object = new XMLHttpRequest();
}else if(window.ActiveXObject){
a_object = new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert('Votre navigateur de supporte pas la technologie AJAX(XMLHttpRequest)...');
return;
}
a_object.open("POST","emprunter.php",true);
a_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
a_object.send("emprunter=<?php echo ''.$advt.''; ?>");
a_object.send("emprunter=<?php echo ''.$ext.''; ?>");
a_object.onreadystatechange = function(){
if(a_object.readyState==4){
if(a_object.status==200){
document.getElementById("reponse").innerHTML = a_object.responseText;
}
}
}
}
</script>
</HEAD>
<form method="post" > <!-- Form AJout -->
<fieldset>
<legend>Nouvel emprunt</legend> <!-- Titre du cadre -->
<label >Adherent</label><br />
<input type="text" name="adhe" /><br />
<label >Exemplaire</label><br />
<input type="text" name="exemp" /><br />
<input type="submit" name="ok" value="Emprunter"/> </br> <!-- Ordre affichage ! -->
<?php
if(isset($_POST["ok"]))
{
if(isset($_POST["adhe"]))
{
$advt = $_POST['adhe'];
$ext = $_POST['exemp'];
$rq1="SELECT ID_DOC FROM EXEMPLAIRE WHERE ID_EXEMPLAIRE='$ext'";
$rqv = mysql_query($rq1)or die("<script>alert('Operation impossible !')</script>");
$rqe= mysql_fetch_array($rqv);
$doc=$rqe['ID_DOC'];
echo $doc;echo "</br>";
?>
<label >Document</label><br />
<input type="text" name="doc" value="<?php echo $doc; ?>" /><br />
<?php
echo '<input type="button" name="yes" value="yes" onclick="Deluser();" /></br><div id="reponse"></div>';
}
?>
</fieldset>
</form>
//le fichier emprunter
<?php
//$advt= trim(str_replace("+"," plus ",$_POST['emprunter']));
//$extt= trim(str_replace("+"," plus ",$_POST['emprunter']));
$rq4 = "UPDATE EXEMPLAIRE SET ID_ADHERENT = '$advt' WHERE ID_EXEMPLAIRE = '$ext';";
$rqv4 = mysql_query($rq4)or die("<script>alert('Emprunt Impossible !')</script>");
if($rqv4)
{
echo "<script>alert('Emprunt enregistre ! ')</script>";
echo "</br>";
}
?>
ici tous marche a 100% mais le probleme c faire la liaison entre la requete d'update et le bouton yes
parceke kan je clike sur yes rien ne se passe
fichier emprunt
<?php //connection base donnee
$db = mysql_connect('localhost', 'root' );
mysql_select_db('mediatheque',$db);
?>
<HEAD>
<script type="text/javascript">
function Deluser(){
var a_object = null;
if(window.XMLHttpRequest){
a_object = new XMLHttpRequest();
}else if(window.ActiveXObject){
a_object = new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert('Votre navigateur de supporte pas la technologie AJAX(XMLHttpRequest)...');
return;
}
a_object.open("POST","emprunter.php",true);
a_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
a_object.send("emprunter=<?php echo ''.$advt.''; ?>");
a_object.send("emprunter=<?php echo ''.$ext.''; ?>");
a_object.onreadystatechange = function(){
if(a_object.readyState==4){
if(a_object.status==200){
document.getElementById("reponse").innerHTML = a_object.responseText;
}
}
}
}
</script>
</HEAD>
<form method="post" > <!-- Form AJout -->
<fieldset>
<legend>Nouvel emprunt</legend> <!-- Titre du cadre -->
<label >Adherent</label><br />
<input type="text" name="adhe" /><br />
<label >Exemplaire</label><br />
<input type="text" name="exemp" /><br />
<input type="submit" name="ok" value="Emprunter"/> </br> <!-- Ordre affichage ! -->
<?php
if(isset($_POST["ok"]))
{
if(isset($_POST["adhe"]))
{
$advt = $_POST['adhe'];
$ext = $_POST['exemp'];
$rq1="SELECT ID_DOC FROM EXEMPLAIRE WHERE ID_EXEMPLAIRE='$ext'";
$rqv = mysql_query($rq1)or die("<script>alert('Operation impossible !')</script>");
$rqe= mysql_fetch_array($rqv);
$doc=$rqe['ID_DOC'];
echo $doc;echo "</br>";
?>
<label >Document</label><br />
<input type="text" name="doc" value="<?php echo $doc; ?>" /><br />
<?php
echo '<input type="button" name="yes" value="yes" onclick="Deluser();" /></br><div id="reponse"></div>';
}
?>
</fieldset>
</form>
//le fichier emprunter
<?php
//$advt= trim(str_replace("+"," plus ",$_POST['emprunter']));
//$extt= trim(str_replace("+"," plus ",$_POST['emprunter']));
$rq4 = "UPDATE EXEMPLAIRE SET ID_ADHERENT = '$advt' WHERE ID_EXEMPLAIRE = '$ext';";
$rqv4 = mysql_query($rq4)or die("<script>alert('Emprunt Impossible !')</script>");
if($rqv4)
{
echo "<script>alert('Emprunt enregistre ! ')</script>";
echo "</br>";
}
?>
ici tous marche a 100% mais le probleme c faire la liaison entre la requete d'update et le bouton yes
parceke kan je clike sur yes rien ne se passe
Pour envoyer plusieurs variables dans
a_object.send("emprunter=<?php echo ''.$advt.''; ?>");
faut faire
a_object.send("emprunter=<?php echo ''.$advt.''; ?>&variable2=<?php echo ''.$var2.''; ?>");
a_object.send("emprunter=<?php echo ''.$advt.''; ?>");
faut faire
a_object.send("emprunter=<?php echo ''.$advt.''; ?>&variable2=<?php echo ''.$var2.''; ?>");
Tu avances un peu ou tu bloques toujours ?
a vrai dire j ai pas trop le choix puiske deja je sais pas d'ou viens lerreur
j ai essaye de la faire avec du javascript a travers un prompt de confirmation( oui/non ) (donc sans le yes )
mais je sais pas comment recuperer le oui du prompt pour executer la requete en cas de "oui"
c est a dire executer la requete ou pas en fonction du confirm
j ai essaye de la faire avec du javascript a travers un prompt de confirmation( oui/non ) (donc sans le yes )
mais je sais pas comment recuperer le oui du prompt pour executer la requete en cas de "oui"
c est a dire executer la requete ou pas en fonction du confirm
Ca envoit bien les variables à emprunt.php ?
g deja verifier les variable avec des echo mais la je sens que j ai mis une betise quelque part
a_object.send("emprunter=<?php echo ''.$advt.''; ?>&variable2=<?php echo ''.$ext.''; ?>");
//je suis sur emprunt.php
et quand je passe a emprunter.php
c
<?php
$advt= trim(str_replace("+"," plus ",$_POST['emprunter'])); (ou emprunt ???)
$extt= trim(str_replace("+"," plus ",$_POST['emprunter']));
//requete
?>
a_object.send("emprunter=<?php echo ''.$advt.''; ?>&variable2=<?php echo ''.$ext.''; ?>");
//je suis sur emprunt.php
et quand je passe a emprunter.php
c
<?php
$advt= trim(str_replace("+"," plus ",$_POST['emprunter'])); (ou emprunt ???)
$extt= trim(str_replace("+"," plus ",$_POST['emprunter']));
//requete
?>
le premier OK c pour afficher , le YES pour confirmer , mais le yes ne marche pas