Bonjour,

Je rencontre un problème avec les guillemets en utilisant PHP. IE m'affiche l'erreur suivante:

Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING

Voici le code de ma deuxième fonction:

Code : 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
20
21
22
23
24
25
26
27
28
29
30
31
function identifier($login,$mot_de_passe)
	{
		global $conn;
		global $reorient;
		global $operation;
		global $message_piedepage;
 
		$sql = "SELECT id FROM user WHERE login=" .  $conn->qstr($login) .  "AND mot_de_passe=" .  $conn->qstr($mot_de_passe);
		$issue = $conn->Execute($sql);
 
		if ($conn->ErrorNo() != 0)
		{
			return ($conn->ErrorMsg());
		}
 
		$nbr = $issue->RowCount("user");
 
		if (($nbr) <> null)
		{
			$reorient = true;
			$operation = "saisir";
			$_SESSION["id_user"] = $issue->fields[0];
		}
		else
		{
			$reorient = true;
			$operation = "identifier";
			$message_piedepage = "Votre Nom d'utilisateur et/ou votre mot de passe est incorrect !";
		}
		return (null);
	}
L'erreur se trouve sur cette ligne:
$_SESSION["id_user"] = $issue->fields[0];

IE m'affiche également deux erreurs équivalentes à la première (meme type d'erreur) sur cette fonction suivante:

Le code de la dernière fonction:

Code : 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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
function identifier_switch($operation)
	{
		global $_REQUEST;
 
		switch ($operation)
		{
 
			//**********************************************************************
			case "identifier":
 
			// On visualise le formulaire d'iendtification
			$issue = identification_formulaire (isset($_REQUEST["ogin"]), isset($_REQUEST["mot_de_passe"]));
 
			if ($issue[1] != null)
			{
				print error($issue[1]);
			}
			else
			{
				print ($issue[0]);
			}
			break;
 
			//***********************************************************************
			case "identifier.contrl":
				// On contrôle le couple login/mot de passe
				$issue = identifier($_REQUEST["login"],$_REQUEST["mot_de_passe"]);
 
				if ($issue != null)
				{
					print error($issue);
				}
				break;
 
			//***********************************************************************
			default:
				print error("OPERATION".$operation." pas definie");
		}
	}
 
	?>
Les deux erreurs se suituent sur ces deux lignes suivantes:

$issue = identification_formulaire (isset($_REQUEST["login"]), isset($_REQUEST["mot_de_passe"]));

$issue = identifier($_REQUEST["login"],$_REQUEST["mot_de_passe"]);

J'ai essayé de supprimer les guillemets, les trois erreurs disparaissent, cependant, je rencontre une autre erreur:

Parse error: syntax error, unexpected $end (cette erreur est indiquée à la dernière ligne de mon fichier)

Mon fichier contient 3 fonctions dont voici le code de ma première fonction:

Code : 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
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
function identification_formulaire ($login, $mot_de_passe)
	{
		$html = <<<END
		
		<BR><BR><BR>
		
		<H1>Veuillez compl&eacute;ter les champs suivants pour vous connecter :<H1>
		
		<FORM METHOD="POST">
		<TABLE class="RESULTAT">
			<TR>
				<TD><INPUT TYPE="hidden" NAME="operation" VALUE="identifier.contrl"></TD>
			<TR>
			<TR>
				<TD>Nom d'utilisateur</TD>
				<TD><INPUT TYPE="text" SIZE="20" NAME="login"></TD>
			</TR>
			<TR>
				<TD>Mot de passe</TD>
				<TD><INPUT TYPE="password" SIZE="20" NAME="mot_de_passe"></TD>
			</TR>
		
		</TABLE>
		<BR><BR>
		<INPUT TYPE="submit" VALUE="Se connecter">
		</FORM>
		
	END;
 
		return (array($html, null ) ) ;
	}
Si quelqu'un pourrait m'aider à résoudre mon problème. Je serais reconnaissant. Merci infiniment d'avance.