Parserror javascrip

Résolu
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

  1. 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
    1. 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
      1. Modérateur
        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
        1. j'ai ça d'écris dedans :

          {startedDateTime: "2019-07-31T18:18:37.974Z", time: 635.3859999897294, request: {…}, response: {…}, cache: {…}, …}
          0
        2. Modérateur
          @David987oui.. et bien tu déplis la partie RESPONSE et tu regardes ce qu'il y a dedans...
          0
        3. 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