Page 1 sur 1

Message d'erreur fatal de php.

Posté : 20 mai 2007, 16:58
par Alix
Bonjour à tous,

Je vous poste ici tout le code qui aurait provoqué le message d'erreur.

Code : Tout sélectionner

<td width="185" align="right" valign="middle"><form action="" method="post" name="connexion" class="Style1" id="connexion"> <label></label> <table width="170" height="70" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="220" height="25" class="Style2">Connexion Espace Perso : &nbsp; &nbsp; &nbsp;<a href="index.php?page=aide_connexion" title="Aide / Identifiant / Mot de passe oubli&eacute;s">Aide ? </a></td> </tr> <tr> <td width="220"><input name="idcep" type="text" class="Style1" id="idcep" value="Identifiant" size="10" onFocus="if (this.value=='Identifiant') this.value=''" onBlur="if (this.value=='') this.value='Identifiant'"> <input name="checkbox" type="checkbox" class="Style1" value="checkbox"> <span class="Style2">M&eacute;moriser</span></td> </tr> <tr> <td width="220"><input name="mdpcep" type="password" class="Style1" id="mdpcep" value=" " size="10" onFocus="if (this.value==' ') this.value=''" onBlur="if (this.value=='') this.value=' '"><?php if(empty(session_id()) { echo'<input name="connexion" type="submit" class="Style1" id="connexion" value="Connexion">'; } else { echo'<input name="deconnexion" type="submit" class="Style1" id="deconnexion" action="pages/espace_perso/deconnexion.inc.php" value="D&eacute;connexion">'; } ?><?php if(isset($_POST['idcep'])) $idcep=$_POST['idcep']; else $idcep=""; if(isset($_POST['mdpcep'])) $mdpcep=$_POST['mdpcep']; else $mdpcep=""; $db = mysql_connect('***', '***', '***') or die ("<script language='javascript'>alert('La connexion à votre Espace Perso est momentanément impossible. Merci de bien vouloir réessayer ulterieurement.');</script>"); mysql_select_db('espace_perso',$db) or die("<script language='javascript'>alert('La connexion à votre Espace Perso est momentanément impossible. Merci de bien vouloir réessayer ulterieurement.');</script>"); $sql = "SELECT id, titre, nom, prenom, adresse, jour, mois, annee, codepostal, ville, commune, pays, tel_fixe, tel_mobile, mdpcep, confirmmdpcep, email, infos_pour_partenaires_accord FROM espace_perso WHERE idcep = '".addslashes($idcep)."'"; $req = mysql_query($sql) or die("<script language='javascript'>alert('La connexion à votre Espace Perso est momentanément impossible. Merci de bien vouloir réessayer ulterieurement.');</script>"); if (mysql_num_rows($req) > 0) { $data = mysql_fetch_assoc($req); } if ($mdpcep == $data['mdpcep']) { $_SESSION['id'] = $data['id']; $_SESSION['titre'] = $data['titre']; $_SESSION['nom'] = $data['nom']; $_SESSION['prenom'] = $data['prenom']; $_SESSION['adresse'] = $data['adresse']; $_SESSION['jour'] = $data['jour']; $_SESSION['mois'] = $data['mois']; $_SESSION['annee'] = $data['annee']; $_SESSION['codepostal'] = $data['codepostal']; $_SESSION['ville'] = $data['ville']; $_SESSION['commune'] = $data['commune']; $_SESSION['pays'] = $data['pays']; $_SESSION['telfixe'] = $data['telfixe']; $_SESSION['telmobile'] = $data['telmobile']; $_SESSION['idcc'] = $data['idcc']; $_SESSION['mdpcc'] = $data['mdpcc']; $_SESSION['confirmmdpcc'] = $data['confirmmdpcc']; $_SESSION['email'] = $data['email']; $_SESSION['infos_pour_partenaires_accord'] = $data['infos_pour_partenaires_accord']; } if ($mdpcep != $data['mdpcep']) { echo "<script language='javascript'>alert('L\'identifiant ou le Mot de passe que vous avez saisi est incorrect. Merci de bien vouloir ressaisir votre Identifiant et Mot de passe.');</script>"; } mysql_close(); ?></td> </tr> </table> </form></td>
et voici le message d'erreur que mon navigateur me rapporte de php :

Code : Tout sélectionner

Fatal error: Can't use function return value in write context in :\wamp\wamp\www\hautdepage.inc.php on line 42
Sa fait un petit moment que je cherche mais sans succès.

Merci pour vos multiples suggestion.

Christophe.

Posté : 20 mai 2007, 17:03
par Sékiltoyai
Peux tu nous indiquer la ligne 42 du fichier ?

Posté : 20 mai 2007, 17:14
par dogmongo
du fichier hautdepage.inc.php surtout :)

tu as une valeur vide apparement , si tu as coller le même code que tu utilise c'est un peu normal c'est plein de trous :lol:

Voici la ligne 42 désolé !!!

Posté : 20 mai 2007, 17:22
par Alix
Bonjour,

Je m'excuse pour les numéros de lignes !!! :roll:

Voici la ligne :

Code : Tout sélectionner

if(empty(session_id())
Alix

Posté : 20 mai 2007, 20:00
par dogmongo
il manque pas quelque chose :lol: ?
if ( !empty($session_id) )
ou
if (empty($session_id) )

Posté : 20 mai 2007, 20:03
par orgerix
il manque pas quelque chose :lol: ?
if ( !empty($session_id) )
ou
if (empty($session_id) )
Je dirai plutot
if ( !empty(session_id()) )
ou
if (empty(session_id()) )
c'est la fonction session_id() et non une variable

Mais ce n'est pas le problème... Sinon il aurait donné une erreur de syntaxe :?

J'ai tout éssayer !!!

Posté : 20 mai 2007, 20:30
par Alix
Bonsoir à tous,

Suite au posts que vous avez éfféctués, j'ai tout tenter !!!

Sa ne fonctionne toujours pas.

Je suis maudis !!!

Je vous remercie tout de même et suis à l'écoute de toutes propositions.

Alix.

Posté : 20 mai 2007, 21:26
par Sékiltoyai
En fait c'est con, une fonction retourne une valeur, pas une variable :
Note: empty() ne vérifie que les variables, toute autre chose retournera une erreur d'analyse. En d'autres termes, ce qui suit ne fonctionne pas : empty(trim($name)).
Donc tester empty(session_id()) ne peut que générer une erreur, vu que la fonction ne retourne pas une variable, mais une valeur...

Comment attribuer la valeur de post à un mot.

Posté : 21 mai 2007, 17:09
par Alix
Bonjour à tous,

Je souhaiterais appliquer la valeur de post sur mon mot 'Connexion' qui se trouve dans mon formulaire, puis appliquer la fonction session_destoy sur le mot 'Déconnexion', qui se trouve lui aussi dans le même formulaire.

Je vous remerci par avance pour vos suggestions.

Alix

Posté : 21 mai 2007, 17:55
par Ryle
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton [Mettre Résolu] qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)


Pour ta nouvelle question, direction le nouveau topic :)