Parserror javascrip
Résolu
David987
Messages postés
120
Date d'inscription
Statut
Membre
Dernière intervention
-
David987 Messages postés 120 Date d'inscription Statut Membre Dernière intervention -
David987 Messages postés 120 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'explique mon problème, J'ai une roue qui tourne et qui affiche le gain sur lequel elle s'arrête.
J'ai une boite de dialogue qui affiche le lot gagné (S'affiche très bien), et une deuxième pour me confirmer que tous c'est bien passé SAUF qu'elle m'affiche un "parsererror"
Help me please.
Code source de ma roue :
Code source de ma page de traitement de mes requêtes SQL :
J'explique mon problème, J'ai une roue qui tourne et qui affiche le gain sur lequel elle s'arrête.
J'ai une boite de dialogue qui affiche le lot gagné (S'affiche très bien), et une deuxième pour me confirmer que tous c'est bien passé SAUF qu'elle m'affiche un "parsererror"
Help me please.
Code source de ma roue :
<?php include("include/debut.php"); if(!empty($ID)) { ?> <link rel="stylesheet" href="main.css" type="text/css" /> <script type="text/javascript" src="roulette.js"></script> <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/TweenMax.min.js"></script> <script src="jquery-3.3.1.min.js"></script> <div align="center"> <h1>Roulette bonjour</h1> <p>Bienvenue à toi cher membres de Pokemon Sunshine, Je suis là pour te présenter une roulette qui te fera gagner un cadeaux journalier.</br> Chaque jour, tu pourras tourner la roulette et tenter de gagner quelque chose.</br><br /> <?php function hms($time) { $time = (60*60*24) - $time; $heures = floor($time/60/60); $minutes = floor($time/60) - ($heures*60); $secondes = $time - ($heures*60*60) - ($minutes*60); return $heures.":".$minutes.":".$secondes; } $roulette2 = $bdd->query("SELECT * FROM roulette2 WHERE idDresseur = '".$_SESSION['ID']."'"); $roulette2 = $roulette2->fetch(); if((time() - $roulette2['time']) > (60*60*24)) { ?> <img id="spin_button" src="spin_off.png" alt="Tourner la roue" onClick="startSpin();" /> <?php } else { ?> Temps avant la prochaine roulette :<br/> <b><span id="tempsroulette2"><?php echo hms(time() - $roulette2['time']); ?></span></b> <?php } ?> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td> <div class="power_controls"> </div> </td> <td width="438" height="582" class="the_wheel" align="center" valign="center"> <canvas id="canvas" width="434" height="434"> </canvas> </td> </tr> </table> </div> <script> var theWheel = new Winwheel({ 'numSegments' : 16, 'outerRadius' : 212, 'innerRadius' : 120, 'textFontSize' : 16, 'textMargin' : 0, 'segments' : [ {'fillStyle' : '#eae56f', 'text' : '1 HyperBall'}, {'fillStyle' : '#89f26e', 'text' : '1 PokeBall'}, {'fillStyle' : '#7de6ef', 'text' : '1 HyperBall'}, {'fillStyle' : '#e7706f', 'text' : 'Super Candy'}, {'fillStyle' : '#eae56f', 'text' : '1 SuperBall'}, {'fillStyle' : '#89f26e', 'text' : 'CharmChro'}, {'fillStyle' : '#7de6ef', 'text' : '1 Miel'}, {'fillStyle' : '#e7706f', 'text' : '1 SuperBall'}, {'fillStyle' : '#eae56f', 'text' : 'MasterBall'}, {'fillStyle' : '#89f26e', 'text' : '1 HyperBall'}, {'fillStyle' : '#7de6ef', 'text' : '1 PokeBall'}, {'fillStyle' : '#e7706f', 'text' : '1 SuperBall'}, {'fillStyle' : '#eae56f', 'text' : '1 Miel'}, {'fillStyle' : '#89f26e', 'text' : '1 Miel'}, {'fillStyle' : '#7de6ef', 'text' : '1 PokeBall'}, {'fillStyle' : '#e7706f', 'text' : '1 SuperBall'} ], 'animation' : { 'type' : 'spinToStop', 'duration' : 5, 'spins' : 8, 'callbackFinished' : alertPrize } }); var wheelPower = 0; var wheelSpinning = false; function powerSelected(powerLevel) { if (wheelSpinning == false) { document.getElementById('pw1').className = ""; document.getElementById('pw2').className = ""; document.getElementById('pw3').className = ""; if (powerLevel >= 1) { document.getElementById('pw1').className = "pw1"; } if (powerLevel >= 2) { document.getElementById('pw2').className = "pw2"; } if (powerLevel >= 3) { document.getElementById('pw3').className = "pw3"; } wheelPower = powerLevel; document.getElementById('spin_button').src = "spin_on.png"; document.getElementById('spin_button').className = "clickable"; } } function startSpin() { if (wheelSpinning == false) { if (wheelPower == 1) { theWheel.animation.spins = 3; } else if (wheelPower == 2) { theWheel.animation.spins = 8; } else if (wheelPower == 3) { theWheel.animation.spins = 15; } document.getElementById('spin_button').src = "spin_off.png"; document.getElementById('spin_button').className = ""; theWheel.startAnimation(); wheelSpinning = true; } } function resetWheel() { theWheel.stopAnimation(false); theWheel.rotationAngle = 0; theWheel.draw(); document.getElementById('pw1').className = ""; document.getElementById('pw2').className = ""; document.getElementById('pw3').className = ""; wheelSpinning = false; } function alertPrize(indicatedSegment) { var gain = indicatedSegment.text; var data = {gain :gain }; var urlFichierAjx = "gain_roulette.php"; $.ajax({ type: "POST", url: urlFichierAjx, data: data, async: true, dataType: "json" }) .done(function(reponse){ console.log(reponse); alert('OK'); }) .fail(function(jqXHR, textStatus){ alert(textStatus); }); alert("Tu remporte " + indicatedSegment.text); } </script> <?php } else { echo '<b><font color="red">Il faut être connecté pour pouvoir accéder à cette page.<br/><br/></font></b>'; } include('include/footer.php'); ?>
Code source de ma page de traitement de mes requêtes SQL :
<?php session_start(); { /* MYSQL */ $host = "; $db_name = ""; $user = ""; $pass = ""; $gain = !empty($_POST['gain']) ? $_POST['gain'] : NULL; //traitement : switch($gain){ case "MasterBall": $valeurGain = 4; break; case "1 HyperBall": $valeurGain = 3; break; case "1 SuperBall": $valeurGain = 2; break; case "1 PokeBall": $valeurGain = 1; break; case "1 Miel": $valeurGain = 9; break; case "Super Candy": $valeurGain = 12; break; case "CharmChro": $valeurGain = 1176; break; default: $valeurGain = NULL; break; } if($valeurGain){ $sql = "INSERT INTO membres_objets (membre_id, ID_objet) VALUES('".$ID."','".$valeurGain."')"; $result = $bdd->exec($sql); $sql2 = "UPDATE roulette2 SET time = '".time()."' WHERE idDresseur = '".$ID."'"; $valid = $bdd->exec($sql2); } //on retourne le resultat au javascript echo json_encode($result); exit(); } ?>
3 réponses
Bonjour,
Dans ta connexion à la base, il y a un guillemet double non fermé.
Xavier
PS : si ce n'est pas là ton problème, donne nous l'erreur complète, ça peut aider...
$host = ";
Dans ta connexion à la base, il y a un guillemet double non fermé.
Xavier
PS : si ce n'est pas là ton problème, donne nous l'erreur complète, ça peut aider...
Ah non non désolé c'est lors de la suppression des données de connexion que j'ai oublié le ".
Autre l'erreur, ça me met seulement parreserror dans boite de dialogue qui s'affiche
Autre l'erreur, ça me met seulement parreserror dans boite de dialogue qui s'affiche
Bonjour,
Pour débuguer ton erreur... il faudrait regarder dans la console Javascript de ton navigateur soit en utilisant FIREFOX... soit , si tu es sous chrome, après avoir installé le plugin Ajax Debuguer
Une fois fait, tu pourras alors voir la REPONSE de ton appel Ajax et ainsi déterminer d'où vient le souci.


Et bien entendu... vu que tu utilises PDO pour faire tes requêtes SQL... tu vas appliquer TOUT ce qui est indiqué ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
.
Pour débuguer ton erreur... il faudrait regarder dans la console Javascript de ton navigateur soit en utilisant FIREFOX... soit , si tu es sous chrome, après avoir installé le plugin Ajax Debuguer
Une fois fait, tu pourras alors voir la REPONSE de ton appel Ajax et ainsi déterminer d'où vient le souci.


Et bien entendu... vu que tu utilises PDO pour faire tes requêtes SQL... tu vas appliquer TOUT ce qui est indiqué ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
.