Parserror javascrip

Résolu/Fermé
David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 - 29 juil. 2019 à 21:56
David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 - 3 août 2019 à 19:21
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 :

<?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

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
30 juil. 2019 à 15:07
Bonjour,

$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...
0
David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 1
30 juil. 2019 à 17:18
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
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
30 juil. 2019 à 23:33
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

.
0
David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 1
Modifié le 31 juil. 2019 à 20:22
j'ai ça d'écris dedans :

{startedDateTime: "2019-07-31T18:18:37.974Z", time: 635.3859999897294, request: {…}, response: {…}, cache: {…}, …}
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022
1 août 2019 à 00:42
oui.. et bien tu déplis la partie RESPONSE et tu regardes ce qu'il y a dedans...
0
David987 Messages postés 121 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 1
3 août 2019 à 19:21
Désolé de répondre un peu tard mais du coup j'ai fais ce que tu m'a dis Jordan et ça marche nickel l'erreur était toute bête j'avais un signe de ponctuation en trop. (je suis bête)
Sujet Résolu.
0