Formulaire JS -> POST PHP

Résolu/Fermé
Hacker?! Messages postés 137 Date d'inscription jeudi 25 décembre 2008 Statut Membre Dernière intervention 1 mai 2015 - 29 mai 2014 à 15:43
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 30 mai 2014 à 16:02
Bonjour à tous ! :)

Je suis actuellement sur un projet de site de Calcul Mental.

J'utilise donc HTML/CSS (pour la page et le style) + PHP + MySQL + Javascript (compte à rebours + compteur).

J'ai réussi à créeer mon premier niveau

- Un calcul random se genere

- Réponse validée par bouton dans textbox sans rafraichissement de la page (pour pas perdre le chrono et le score++)

Tout est fait sauf le moment crucial :

Envoyer en requete POST le contenu d'une variable Javascript à une page de traitement en PHP qui sauvegarderait le score dans la base de donnée.

Image : https://i.imgur.com/LBFhnwB.png

Je voudrais qu'au moment ou il reste 0 sec (terminé), le score s'envoie en POST sur ma page php mais impossible, j'ai tout esté, rien ne marche..

Pourriez-vous m'éclairer, merci d'avance à tous ! :)

2 réponses

Hacker?! Messages postés 137 Date d'inscription jeudi 25 décembre 2008 Statut Membre Dernière intervention 1 mai 2015 12
30 mai 2014 à 14:31
up ! :)
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
30 mai 2014 à 16:02
'lut, fait en sorte que cette fonction s'exécute a la fin de ton décompte:
function envoyer_scores(score) {
    var url = "enregistrer_score.php";
    var params = "score=" + score;
    var http = new XMLHttpRequest();
    http.open("POST", url, true);
    http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http.setRequestHeader("Content-length", params.length);
    http.onreadystatechange = function() {
        if(http.readyState == 4 && http.status == 200) {
            alert("Score envoyé!");
        }
    }
    http.send(params);
}

Et du coté PHP, tu enregistres le score contenu dans
$_POST['score']
. Libre a toi de modifier et d'adapter la fonction envoyer_scores, notamment de supprimer le
alert
et de le remplacer par quelque chose d'autre, moins dérangeant...
0