Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Erreur : Unexpected Token <


Sujet :

AJAX

  1. #1
    Membre régulier Avatar de Skunka
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 81
    Points : 83
    Points
    83
    Par défaut Erreur : Unexpected Token <
    Bonjour,

    je fais une utilisation d'ajax afin de remplir un formulaire lorsque la valeur d'une liste déroulante est modifié:

    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    //ajax
    	function Retrieve(value) {
    		var num = value;
    		document.getElementById('num').value = num;
    		$.post({
    			url: "ajax/a-categorieVehicule_retrieve.php",
    			data: "num=" + num,
    			dataType: "json",
    		})
    		.done(function (data, textStatus, jqXHR) {
    			console.log(data);
    			$("input[name='nom']").val(data.num);
    			$("input[name='permis']").val(data.permis);
    		})
    		.fail(function (jqXHR, textStatus, errorThrown){
    			console.error(textStatus, errorThrown);
    		})
    	}

    Appelant le script suivant:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    header('Content-Type: application/json; charset=utf-8');
    include "../modele/categorieVehicule.php";
    $categorieVehicule = new CategorieVehicule();
    $categorieVehicule->retrieve($_POST["num"]);
    echo json_encode([
    	"nom"    => $categorieVehicule->getNomCategorieVehicule(),
    	"permis" => $categorieVehicule->getPermis()->getNumPermis(),
    ]);
    ?>

    Seulement, la console m'affiche ce message d'erreur, certes facilement compréhensible mais qui me bloque depuis plus d'une heure ... :
    Nom : developpez.JPG
Affichages : 40
Taille : 45,4 Ko

    Je ne trouve pas le caractère inattendus "<", puisque je ne m'en sers pas, sauf si finalement j'ai mal compris ce message d'erreur.
    Mon formulaire n'est donc pas remplis.

    Merci d'avance de vos réponses,
    Cordialement,
    Skunka.
    Etudiant L PRO Métiers Informatique: Application Web

    Débutant à vie

  2. #2
    Expert confirmé Avatar de psychadelic
    Profil pro
    Inscrit en
    mai 2010
    Messages
    2 349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2010
    Messages : 2 349
    Points : 4 537
    Points
    4 537
    Par défaut
    faudrait voir ce que sort ta requette PHP, ce serait plus simple.

    sinon:
    1 ) j'ai du mal à croire que data: "num=" + num, puisse être une syntaxe correcte, j'écris toujours de cette façons : data: { "num:" + num },.
    2) pareil pour le retour JSON de PHP, j'ai des doutes
    3) tu ne gère pas le cache, c'est exprès ?
    «La pluralité des voix n'est pas une preuve, pour les vérités malaisées à découvrir, tant il est bien plus vraisemblable qu'un homme seul les ait rencontrées que tout un peuple.» [ René Descartes ] - Discours de la méthode

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    janvier 2011
    Messages
    13 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : janvier 2011
    Messages : 13 757
    Points : 33 393
    Points
    33 393
    Par défaut
    Bonjour,
    est ce que tu travailles au moins avec un serveur local pour que ton PHP soit interprété ?

  4. #4
    Membre régulier Avatar de Skunka
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 81
    Points : 83
    Points
    83
    Par défaut
    La syntaxe est correct puisque le problème est résolu.
    Au lieu de renvoyer du json, je me suis servis d'une chaîne de caractères que j'ai explode(). Mon script me renvoyai enfaîte une erreur, il manquai une classe pour que le script fonctionne.

    Et je ne gère pas le cache car je ne savais pas qu'il faut le faire ...

    Merci de vos réponses,
    Skunka.
    Etudiant L PRO Métiers Informatique: Application Web

    Débutant à vie

  5. #5
    Expert confirmé Avatar de psychadelic
    Profil pro
    Inscrit en
    mai 2010
    Messages
    2 349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2010
    Messages : 2 349
    Points : 4 537
    Points
    4 537
    Par défaut
    Citation Envoyé par Skunka Voir le message
    Et je ne gère pas le cache car je ne savais pas qu'il faut le faire ...
    c'est en fonction de la persistance que tu as pour ces données
    «La pluralité des voix n'est pas une preuve, pour les vérités malaisées à découvrir, tant il est bien plus vraisemblable qu'un homme seul les ait rencontrées que tout un peuple.» [ René Descartes ] - Discours de la méthode

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    janvier 2011
    Messages
    13 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : janvier 2011
    Messages : 13 757
    Points : 33 393
    Points
    33 393
    Par défaut
    Les requêtes POST ne sont pas misent en cache sauf demande explicite.
    Citation Envoyé par https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5
    Responses to this method are not cacheable, unless the response includes appropriate Cache-Control or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent to retrieve a cacheable resource.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur Unexpected token
    Par totot dans le forum React
    Réponses: 7
    Dernier message: 28/10/2018, 19h02
  2. Réponses: 36
    Dernier message: 08/12/2016, 11h04
  3. Erreur de syntaxe : unexpected token 'else'
    Par gaaara dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 28/03/2014, 09h50
  4. erreur : syntax error near unexpected token
    Par lapinou8430 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 28/04/2009, 00h30
  5. Erreur unexpected end of file
    Par snoop dans le forum Linux
    Réponses: 6
    Dernier message: 22/03/2004, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo