bonsoir à tous,
Je suis confronté à un problème dont j'imagine que la plupart d'entre vous l'a rencontré.
Sur une page j'ai un certain nombre de bouton de type :
<button type="button" name="p2tieplus" onclick="p2tieplus();" style="width:36px;font-size:80%;>T+</button>
tous appellent une fonction javascript (ajax) qui elle même fait appel à un script php qui lui-même appelle des SELECT et UPDATE. Jusqu’à présent je n'avais aucun problème avec le fonctionnement de ces boutons. Mais j'en ai ajouté un dernièrement qui nécessite d'être cliqué 2 fois de manière systématique pour lancer
un UPDATE.
Fonctionnement:
Bouton (onclick)->javascript ->php. le script déficient reçoit en $_POST une chaîne de caractères. Le script en question incrémente un compteur très simple
sous condition puis lance un UPDATE dans la database. Contrairement aux autres scripts que j'utilise et du même calibre, celui-ci necessite de cliquer
2 fois sur le bouton pour effectuer son UPDATE. Je ne trouve pas de solution et c'est vraiment pénalisant:
Voici l'extrait du script qui pose problème, avant celui-ci il n'y a que des PREPARE PDO tous testés et qui fonctionnent.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| if (isset($_POST['p1tieplus']))
{
$victoire = abs($newpoints1t - $newpoints2t) ;
if (($newpoints11 == 6) && ($newpoints21 == 6))
{
if (($newpoints1t >= 7) && ($victoire == 2))
{
$execute11u = $pdostat11u -> execute(); /* Cette requête n'est pas lancée au click unique, il faut cliquer une seconde fois /*
/* vérifié, l'enregistrement n'est pas dans la base, sauf au 2eme click */
}
else {$newpoints1t +=1 ;} /* En revanche, ce compteur est bien incrémenté au premier click, la chaine POST arrive bien */
}
}
else if(isset($_POST['p1tiemoins']))
{
if ($newpoints1t >= 1) {
$newpoints1t -= 1;
}
}
$pdostat1t = $objectPdo->prepare("UPDATE matches SET p1_tie_score = '$newpoints1t'");
$executeIsOK1t = $pdostat1t ->execute(); |
J'ai testé pas mal de choses sans succès, j'ai rafraîchit les variables avec des SELECT , etc ... rien à faire, il veut 2 CLICKS !
J'ai également mis la requête SQL UPDATE directement aprés l'isset / $_POST et la elle est bien lancée.
Je crie à l'aide, parce que là je suis sec.
Merci pour vos suggestions.
Partager