A voir également:
- Problème PHP MySQL
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Mysql gratuit ou payant - Forum MySQL
- Bouton php - Forum PHP
- Php?id=1 - Forum PHP
33 réponses
GallyNet
Messages postés
434
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
15 décembre 2008
387
13 janv. 2005 à 18:20
13 janv. 2005 à 18:20
Le message suivant:
veut dire qu'il y a une erreur ligne 3:
et selon ce qui est dit, l'index 'login' n'existe pas: autrement dit, dans ton tableau $_POST il n'y pas de login. Il n'est pas passer lors de l'envoit de ton formulaire.
Ton erreur arrive tout le temps ou seulement quand le login est vide ?
Tu peut tester si le login est définie en faisant:
Le deuxieme message d'erreur te dit que le résultat de la requete SQL est invalide ( ce qui découle de ta première erreur)
Notice: Undefined index: login in c:\program files\easyphp\www\lfb\espacemembre\accueilmembres.php on line 3
veut dire qu'il y a une erreur ligne 3:
$req=mysql_query("select pseudo from membres where login='$_POST[login]'");
et selon ce qui est dit, l'index 'login' n'existe pas: autrement dit, dans ton tableau $_POST il n'y pas de login. Il n'est pas passer lors de l'envoit de ton formulaire.
Ton erreur arrive tout le temps ou seulement quand le login est vide ?
Tu peut tester si le login est définie en faisant:
if(isset($_POST['login'])){ //login OK ... } else { //login erreur ... }
Le deuxieme message d'erreur te dit que le résultat de la requete SQL est invalide ( ce qui découle de ta première erreur)
Bon déjà merci,
au départ je tiens à dire que la ligne était comme ça:
$req=mysql_query("select pseudo from membres where login='$login'");
J'ai ajouté le post car il disait undefined variable
Quoi qu'il en soit, le problème intervient tout le temps. Il est impossible d'arriver sur cette page sans avoir mis le login sur celle d'avant.
De plus, pour ton essai, je ne sais pa ou je dois insérer le champs. Jjuste avant ?> au quel car l'erreur ne s'affiche (pas la premiere du moins) mais la page ne s'affiche plus du tout.
Arnaud
au départ je tiens à dire que la ligne était comme ça:
$req=mysql_query("select pseudo from membres where login='$login'");
J'ai ajouté le post car il disait undefined variable
Quoi qu'il en soit, le problème intervient tout le temps. Il est impossible d'arriver sur cette page sans avoir mis le login sur celle d'avant.
De plus, pour ton essai, je ne sais pa ou je dois insérer le champs. Jjuste avant ?> au quel car l'erreur ne s'affiche (pas la premiere du moins) mais la page ne s'affiche plus du tout.
Arnaud
J'ai trouvé mettre ton code. Il me dit:
Notice: Undefined variable: pseudo in c:\program files\easyphp\www\lfb\espacemembre\accueilmembres.php on line 32
Notice: Undefined variable: pseudo in c:\program files\easyphp\www\lfb\espacemembre\accueilmembres.php on line 32
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 18:39
13 janv. 2005 à 18:39
Il manque un espace :-)
echo "$pseudo";
D'ailleurs tu peux tout aussi bien écrire
echo $pseudo;
echo "$pseudo";
D'ailleurs tu peux tout aussi bien écrire
echo $pseudo;
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
merci, on avance!!! Voila ce que j'ai maintenant:
Notice: Undefined variable: pseudo in c:\program files\easyphp\www\lfb\espacemembre\accueilmembres.php on line 32
Le nouveau texte est celui ci:
<? include('verifsession.php');
include('sql_connect.php');
if(isset($_POST['login'])){
//login OK
$req=mysql_query("select pseudo from membres where login='$login'");
$pseudo=mysql_result($req,0,"pseudo");
} else {
//login erreur
}
?>
<html>
<head>
<title>Accueil membre</title>
<SCRIPT LANGUAGE="JavaScript1.1">
function right(e)
{var msg = "Le vol est interdit chez moi";
if (navigator.appName == 'Netscape' && e.which == 3){alert(msg);}
else if (navigator.appName == 'Microsoft Internet Explorer' && event.button==2){alert(msg);}return true;}
document.onmousedown = right;
</SCRIPT>
<script LANGUAGE="JavaScript" FOR="window" EVENT="onload()">
parent.status = ('LFB Promotion 2002')
</script>
<link rel="stylesheet" type="text/css" href="Logo/sommaire.css">
</head>
<body bgcolor="#E7E7CF" text="#000000">
<div align="center">
<p><b><font size="3" face="Arial">Bonjour <? echo "$pseudo" ?></font></b></p>
<p> </p>
<p><a href="modifperso.php"><font size="3" face="Arial">Modifier ses données personnelles (autoriser la publication dans la
liste des membres)</font></a></p>
<p> </p>
<p><a href="deconnexion.php"><font size="3" face="Arial">Se déconnecter</font></a></p>
</div>
</body>
</html>
Notice: Undefined variable: pseudo in c:\program files\easyphp\www\lfb\espacemembre\accueilmembres.php on line 32
Le nouveau texte est celui ci:
<? include('verifsession.php');
include('sql_connect.php');
if(isset($_POST['login'])){
//login OK
$req=mysql_query("select pseudo from membres where login='$login'");
$pseudo=mysql_result($req,0,"pseudo");
} else {
//login erreur
}
?>
<html>
<head>
<title>Accueil membre</title>
<SCRIPT LANGUAGE="JavaScript1.1">
function right(e)
{var msg = "Le vol est interdit chez moi";
if (navigator.appName == 'Netscape' && e.which == 3){alert(msg);}
else if (navigator.appName == 'Microsoft Internet Explorer' && event.button==2){alert(msg);}return true;}
document.onmousedown = right;
</SCRIPT>
<script LANGUAGE="JavaScript" FOR="window" EVENT="onload()">
parent.status = ('LFB Promotion 2002')
</script>
<link rel="stylesheet" type="text/css" href="Logo/sommaire.css">
</head>
<body bgcolor="#E7E7CF" text="#000000">
<div align="center">
<p><b><font size="3" face="Arial">Bonjour <? echo "$pseudo" ?></font></b></p>
<p> </p>
<p><a href="modifperso.php"><font size="3" face="Arial">Modifier ses données personnelles (autoriser la publication dans la
liste des membres)</font></a></p>
<p> </p>
<p><a href="deconnexion.php"><font size="3" face="Arial">Se déconnecter</font></a></p>
</div>
</body>
</html>
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 19:41
13 janv. 2005 à 19:41
Ca par contre c'est bizzare. L'erreur dit que la variable $pseudo n'est pas définie et pourtant si....
PS: Bloquer le clic droit de la souris ne te préservera en rien du vol ;-)
PS: Bloquer le clic droit de la souris ne te préservera en rien du vol ;-)
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 19:44
13 janv. 2005 à 19:44
C'est un code généré par Dreamweaver?
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
En fait c'est un script qu'un ami m'a fait, et qu'il a adapté il y a quelque temps sur mon site multimania. Mais maintenant, je l'héberge chez moi avec easyphp... Cela dit, le script marche très bien sur multimania...
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 19:57
13 janv. 2005 à 19:57
Ah , j'ai trouvé... Etant donné que la page n'a pas reçu la variable $_POST['login'], eh bien la variable $pseudo n'a pas été initialisée....
Donc remplacer
Par
Ta page doit elle obligatoirement recevoir un utilisateur connecté avec login?
Donc remplacer
Bonjour <? echo "$pseudo" ?>
Par
Bonjour <? if (isset($pseudo)) echo $pseudo ?>
Ta page doit elle obligatoirement recevoir un utilisateur connecté avec login?
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
Je n'ai plus de message d'érreur, par contre il n'y a rien d'écrit à coté de bonjour...
Et oui, il est impossible d'acceder a cette page sans se logger a la page precedente
Arnaud
Et oui, il est impossible d'acceder a cette page sans se logger a la page precedente
Arnaud
Je n'y connais rien, mais quand je me log depuis la page d'avant, il y atrès rapidement une page ou je crois lire d'autres undefined variable... Le problème vient peut etre d'une autre page non? car depuis que j'ai transferé mes pages depuis multimania, plus aucune des bases ne fonctionne...
De plus je viens de remarquer que quelque soit le mot de passe que l'on met, il valide du moment que le login est existant...
De plus je viens de remarquer que quelque soit le mot de passe que l'on met, il valide du moment que le login est existant...
J'ai aussi oublié de dire qu'au départ j'utilisait easyphp 1.7 mais que l'on m'a conseillé d'utiliser easyphp 1.6 pour des raisons de compatibilité... Et en effet quand je suis passé sur le six, la plupart des scripts fonctionnaient (dont celui de l'espace membre sur lequel nous sommes en train de nous arracher les cheveux). mais depuis que j'ai redemarré mon ordi ce matin, c'est revenu comme avant sur easyphp 1.7
Arnaud
Arnaud
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 20:39
13 janv. 2005 à 20:39
Bon... Multimania a probablement activé les variables globales, chose que ne fait peut être pas easyphp 1.7 contrairement au 1.6 (ce n'est qu'une supposition).
Pour expliquer en gros: sur multimania lorsque tu envoies une variable via un formulaire tu trouveras dans ce formulaire:
<input type="text" name="une_variable">
Lorsque tu la reçois sur la page de traitement (avec variables globales activées) tu l'auras de cette manière;
// Affichera le contenu de $ma_variable echo $ma_variable;
Avec les variables globales désactivées il faut la recupérer comme ça:
/* Selon la methode employée par le formulaire (get ou post), on va prendre post pat défaut */ echo $_POST['ma_variable'];
Voir: http://www.commentcamarche.net/php/phpform.php3
Bon je dis ça ce n'est qu'une supposition.... En tout cas la seconde solution marche, quelque soit le statut des variables.
Ensuite je n'ai pas l'impression que ton script vérifie le mot de passe des utilisateurs, il va cherche le pseudo dans la base de données puis c'est tout.
On peut même se connecter sur ta page sans s'être loggué.
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
Merci encore,
J'ai donc remplacé
echo $pseudo
par
echo $_POST['pseudo'];
Mais ça n'a rien changé...
Je file lire ton lien, même si je suis à peu prêt sur que je ne vais rien y comprendre... ;-)
Que penses-tu de tout ça? Que dois je faire? Si le problème est globale il est possible que cela ne viennent pas du code en lui même si?
Arnaud
J'ai donc remplacé
echo $pseudo
par
echo $_POST['pseudo'];
Mais ça n'a rien changé...
Je file lire ton lien, même si je suis à peu prêt sur que je ne vais rien y comprendre... ;-)
Que penses-tu de tout ça? Que dois je faire? Si le problème est globale il est possible que cela ne viennent pas du code en lui même si?
Arnaud
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 20:51
13 janv. 2005 à 20:51
Si tu veux t'adapter à Easy Php 1.7 il faut changer certaines variables qui sont entrées par methode post ou get (voir dans les formulaires:
A partir de là tu adaptes tes variables, au lieu de recevoir des variables depuis un formulaire par $variable, tu reçois par $_GET['variable'] ou $_POST['variable'] selon la methode employée...
<form method="post".......> <form method="post">
A partir de là tu adaptes tes variables, au lieu de recevoir des variables depuis un formulaire par $variable, tu reçois par $_GET['variable'] ou $_POST['variable'] selon la methode employée...
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
Ce que je ne comprends pas, c'est pourquoi cela a marché quelque temps... Et maintenant fini...
Si tu veux te rendre compte de ce qu'est mon malheur, rdv là:
http://arnaud.myftp.biz
Nous travaillons actuellement dans l'espace membre mais il y a aussi le forum et le chat qui ne marchent pas... plus tout ce qui est mail
Si tu veux tester, tu peux utiliser le pseudo superman et comme mot de passe (bien que tu n'en aie pas besoin) superman64
Arnaud
Si tu veux te rendre compte de ce qu'est mon malheur, rdv là:
http://arnaud.myftp.biz
Nous travaillons actuellement dans l'espace membre mais il y a aussi le forum et le chat qui ne marchent pas... plus tout ce qui est mail
Si tu veux tester, tu peux utiliser le pseudo superman et comme mot de passe (bien que tu n'en aie pas besoin) superman64
Arnaud
Ca j'ai comprends... Je te remercie...
Mais dans notre cas cela n'a pas l'air de fonctionner...
ps: je suis finalement resté sur easyphp 1.6
Arnaud
Mais dans notre cas cela n'a pas l'air de fonctionner...
ps: je suis finalement resté sur easyphp 1.6
Arnaud
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
13 janv. 2005 à 20:53
13 janv. 2005 à 20:53
Mais je me trompe sûrement dans ce que je te dis car ton script utilise déjà
$_POST['login'] pour recevoir les variables depuis un formulaire
Donc je ne sais pas....
$_POST['login'] pour recevoir les variables depuis un formulaire
Donc je ne sais pas....
Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u