Page 1 sur 1

Erreur : parse error T_ELSEIF script autocompletion

Posté : 20 juin 2012, 00:54
par nico44530
Bonjour,

J'ai une erreur qui se produit quand j'écris dans le champ de recherche :

Parse error : syntax error, unexpected T_ELSEIF in

Voici le code :
	$db = new mysqli('...', '...', '...', '...');
	
	if(!$db) {
		// Show error if we cannot connect.
		echo 'Erreur : Impossible de se connecter à la base';
	} else {
		// Is there a posted query string?
		if(isset($_POST['queryString'])) {
			$queryString = $db->real_escape_string($_POST['queryString']);
			
			// Is the string length greater than 0?
			if(strlen($queryString) >0) {
				$query = $db->query("SELECT id, prenom, nom FROM wa_communaute WHERE prenom LIKE '" . $queryString . "%' OR nom LIKE '" . $queryString . "%' ORDER BY null LIMIT 8");
				
				if($query) {
					
					while ($result = $query ->fetch_object()) {
					
						$prenom = $result->prenom;
						$nom = $result->nom;
						$id = $result->id;
							
						if(strlen($prenom) > 35) { 
							$prenom = substr($prenom, 0, 35) . "...";
						}	
						if(strlen($nom) > 35) { 
							$nom = substr($nom, 0, 35) . "...";
						}
						echo '<a href="http://www.web-astronomie.fr/profil.php?id='.$id.'#!'.$prenom.' '.$nom.'"><span class="searchheading">'.$prenom.' '.$nom.'</span></a>';
					}
					elseif (($result = $query) > 0) {
						echo 'Il n\'y a pas de résultats pour "'.$queryString.'"';
					}
				}
			}
		}
	}
La ligne où se trouve l'erreur :
elseif (($result = $query) > 0) {
	echo 'Il n\'y a pas de résultats pour "'.$queryString.'"';
}
Merci d'avance :D

Re: Erreur : parse error T_ELSEIF script autocompletion

Posté : 20 juin 2012, 07:09
par xTG
Oui un elseif sur un while ça marche pas tellement. ;)
Sinon je m’interroge sur ta condition, $query renvoie un objet ou bien un booléen en cas d'erreur.
Mais s'il n'y a pas d'erreur mais que la requête ne renvoi rien c'est aussi un objet.
Donc il faut utiliser num_rows si tu veux vérifier le nombre de n-uplets retournés.

Re: Erreur : parse error T_ELSEIF script autocompletion

Posté : 20 juin 2012, 15:12
par nico44530
Merci, c'est réglé =)