Uncaught SyntaxError: expected expression, got '<'

Pour toutes les discussions javascript, jQuery et autres frameworks
Répondre
Scots
Messages : 5
Enregistré le : 08 déc. 2020, 15:51

Uncaught SyntaxError: expected expression, got '<'

Message par Scots » 08 déc. 2020, 15:56

Bonjour,

Je sèche sur une erreur qui doit me crever les yeux mais je ne vois plus rien tellement je suis scotché dessus et je ne trouve rien sur d'autres forums :(

Uncaught SyntaxError: expected expression, got '<'

L'appel à la fonction :

Code : Tout sélectionner

<div class="w--50">
          <div class="form-group">
            <label for="espece">Espèce</label>
            <select name="espece" id="espece" onchange="ListeEspece(this.form)">
              <?= $espece ?>
						</select>
          </div>

          <div class="form-group">
            <label for="race">Race</label>
            <select name="race" id="race"></select>
          </div>
        </div>
Mon code JS :

Code : Tout sélectionner

function ListeEspece(f) {
	var l1    = f.elements["espece"];
	var l2    = f.elements["race"];
	var index = l1.selectedIndex;
	if(index < 1)
		l2.options.length = 0;
	else {
		var xhr_object = null;
		
		if(window.XMLHttpRequest) // Firefox
			xhr_object = new XMLHttpRequest();
		else if(window.ActiveXObject) // Internet Explorer
			xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
		else { // XMLHttpRequest non supporté par le navigateur
			alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
			return;
		}
	
		xhr_object.open("POST", "/views/auth/race.php", true);
		
		xhr_object.onreadystatechange = function anonymous() {
			if(xhr_object.readyState == 4)
				eval(xhr_object.responseText);
		}
	
		xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		var data = "espece="+escape(l1.options[index].value)+"&form="+f.name+"&select=race";
		xhr_object.send(data);
	}
}
Le fichier appelé par la fonction :

Code : Tout sélectionner

<?php
header('Content-type: text/html; charset=iso-8859-1');
 
require __DIR__ . '/../inc/functions.php';
 
$query  = "SELECT `race` FROM `animal` WHERE `espece` = '".$_POST["espece"]."' ORDER BY `race`";
$result = @tjs_query($query);
 
echo 'var o = null;';
echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];';
echo 's.options.length = 0;';
while($r = mysql_fetch_array($result))
    echo 's.options[s.options.length] = new Option("'.$r["race"].'");';
?>
Je sèche depuis plusieurs jours :(

Avatar du membre
webmaster
Administrateur du site
Messages : 396
Enregistré le : 28 févr. 2017, 15:19

Re: Uncaught SyntaxError: expected expression, got '<'

Message par webmaster » 08 déc. 2020, 16:20

Bonjour,

Je ne vois pas ce qui coince. Les retours AJAX sont corrects (on peut le voir dans l'onglet network de la console) ?
TJS : 20 ans et mon livre Tout JavaScript chez Dunod
https://www.toutjavascript.com/livre/index.php

Scots
Messages : 5
Enregistré le : 08 déc. 2020, 15:51

Re: Uncaught SyntaxError: expected expression, got '<'

Message par Scots » 08 déc. 2020, 16:37

Moi non plus je ne comprends pas. Voici l'erreur en console :
console.jpg
console.jpg (111.44 Kio) Vu 2559 fois

Avatar du membre
webmaster
Administrateur du site
Messages : 396
Enregistré le : 28 févr. 2017, 15:19

Re: Uncaught SyntaxError: expected expression, got '<'

Message par webmaster » 08 déc. 2020, 17:10

Je peux regarder l'url en ligne (via message privé)
TJS : 20 ans et mon livre Tout JavaScript chez Dunod
https://www.toutjavascript.com/livre/index.php

Scots
Messages : 5
Enregistré le : 08 déc. 2020, 15:51

Re: Uncaught SyntaxError: expected expression, got '<'

Message par Scots » 08 déc. 2020, 17:44

Ce n'est pas encore en ligne hélas, le dév est en cours de finition.

Par contre, j'ai regardé l'onglet réseau (merci pour l'idée) et j'avais une erreur de chemin.

Maintenant, il me reste une erreur :
Fatal error: Uncaught Error: Call to undefined function tjs_query() in C:\wamp64\www\xxx\views\auth\race.php on line 8

Scots
Messages : 5
Enregistré le : 08 déc. 2020, 15:51

Re: Uncaught SyntaxError: expected expression, got '<'

Message par Scots » 08 déc. 2020, 17:53

En fait, j'essaye de reproduire un exemple de ce site même lol Parce que la fonction dont j'ai besoin est exactement la même.

https://www.toutjavascript.com/savoir/x ... quest.php3

Je pense que l'appel à @tjs_query manque dans le code de l'exemple ...

:(

Avatar du membre
webmaster
Administrateur du site
Messages : 396
Enregistré le : 28 févr. 2017, 15:19

Re: Uncaught SyntaxError: expected expression, got '<'

Message par webmaster » 08 déc. 2020, 18:15

ok

tjs_query n'existe pas nativement
il faut la remplacer par mysql_query (ou un equivalent selon la base de données)
TJS : 20 ans et mon livre Tout JavaScript chez Dunod
https://www.toutjavascript.com/livre/index.php

Scots
Messages : 5
Enregistré le : 08 déc. 2020, 15:51

Re: Uncaught SyntaxError: expected expression, got '<'

Message par Scots » 08 déc. 2020, 18:29

Ah bon sang, des jours que je cherchais !!! Merci bien, en tout cas, le code est nickel :)

Répondre