Page 1 sur 1

Parse Error

Posté : 03 mars 2009, 11:20
par lcdaniel
Bonjour, je viens de débuter en php, et j'ai un petit soucis avec ce bout de code :

Il m'indique une parse Error à la ligne 37 " else ($resultat == FALSE) { ", mais je vois pas où j'aurais oublié une balise.
function login($user,$password){
		$server = "localhost";
		$port = "389";
		//$racine = "dc=my-domain,dc=com";
		$rootdn = "cn=Manager,dc=my-domain,dc=com";
		$rootpw = "secret";
		echo "Connexion...<br>";

		$ds=ldap_connect($server);

		if ($ds==1)
		{
			// on s'authentifie en tant que super-utilisateur
			$r=ldap_bind($ds,$rootdn,$rootpw);
			// preparation des données
			$dn="cn=$user,ou=people,dc=my-domain,dc=com";
			$valeur="userPassword";
			$attribut=$password;

			// Comparaison du mot de passe à celui dans l'annuaire
			$resultat=ldap_compare($ds, $dn, $attribut, $valeur);

			if ($resultat == -1) {
				echo "Erreur:".ldap_error($ds);
				}
				elseif ($resultat == TRUE) {
					echo "Le mot de passe est correct";
				}
					else ($resultat == FALSE) {     //ici il m'indique une parse Error
						echo "Le mot de passe est erronné...";
				    }
		}	
			else {
				echo  "Impossible de se connecter au serveur LDAP";
			}		
	}//function login
[/php]

Posté : 03 mars 2009, 11:24
par yaug
Peut tu nous donner le message d'erreur complet?
En général en le lisant bien on trouve de suite son erreur :wink:

Posté : 03 mars 2009, 11:27
par lcdaniel
Parse error: parse error in C:\wamp\www\Test\inc\function.inc.php on line 37

Posté : 03 mars 2009, 11:32
par yaug
Mouais.

Bon..
Essaye de mettre ceci :
if ($resultat == -1) {
	echo "Erreur:".ldap_error($ds);
}
elseif($resultat === true) {
	echo "Le mot de passe est correct";
}
else($resultat === false) {     //ici il m'indique une parse Error
		echo "Le mot de passe est erronné...";
}
Voir mieux, un switch.
Mais ton erreur me laisse perplexe là :x

Posté : 03 mars 2009, 11:41
par lcdaniel
J'ai essayé un switch, et ca a marché, merci beaucoup.
:)

Posté : 03 mars 2009, 11:43
par yaug
Si tu finis par comprendre l'erreur, n'hésite pas à le signaler.

Pense aussi à marquer ton topic comme résolu :wink: