Pb php

Bonjour à tous,

J'ai une question (une de plus), voici les erreurs que j'ai:

Notice: Undefined variable: login in c:\program files\easyphp\www\lfb\espacemembre\accueilprivate.php on line 3

Warning: Unable to jump to row 0 on MySQL result index 2 in c:\program files\easyphp\www\lfb\espacemembre\accueilprivate.php on line 4

Elles correspondent au texte suivant:

<? include('verifsession.php');
include('sql_connect.php');
$req=mysql_query("select pseudo from membres where login='$login'");
$_POST["pseudo"]=mysql_result($req,0,"pseudo");
?>
<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 $_POST["pseudo"] ?></font></b></p>
<p align="justify"><font face="Arial">Vous êtes un membre privilégié. C'est le
webmaster qui l'a décidé (et contrairement à ce que vous pouvez croire, ce n'est
pas le hasard ni le cas de tout le monde). Pour le moment cela ne vous avance à
rien mais bientôt, vous aurez accès à des parties du site que les autres ne
verrons sûrement jamais. Photos, vidéos, etc... Les membres comme vous, je les
compte sur les doit d'une main!!!</font></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><a href="deconnexion.php"><font size="3" face="Arial">Se déconnecter</font></a></p>
</div>
</body>
</html>

De plus le pseudo ne s'afiche pas après le Bonjour...

Qu'en pensez-vous?

Merci encore et toujours,

Arnaud

23 réponses

  1. Oui, j'ai dejà essayé ce forum... Il n'est pas accepté par easyphp... Il faudrait que je me retape tous les liens avec les undefined etc...
    Je préfère encore concerver le mien surtout que j'ai déjà des post dessus d'avant...

    Arnaud
    0
    1. Modérateur
      ce que j'appelle u.i. et u.v. (car nous sommes devenus très intimes maintenant) ce sont les undefined index et undefined variable... ;-)

      :-D

      Si tu veux un ptit forum léger et sympathique, tu peux jeter un coup d'oeil du côté de "phorum". Il y en a d'autres mais j'ai que celui là en tête. http://phorum.org/

      Par contre je n'ai pas compris quand tu me parles d'alinéas... Tu parles toujours du forum?

      Non je parlais de la manière d'organiser un code (celui du compteur de téléchargement).

      ps: je t'invite par ailleurs à laisser un post sur le livre d'or... C'est le moins que je puisse faire! :-p

      Attends que ce soit fini d'abord, et puis c'est pas moi qui ai résolu le coup des sessions :-)

      Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
      0
      1. ce que j'appelle u.i. et u.v. (car nous sommes devenus très intimes maintenant) ce sont les undefined index et undefined variable... ;-)

        Mais le forum je crois que je vais abandonner... En fait, on m'a expliqué que easy php imposait le php au format "php officiel" et que c'était pour ça que mes scripts ne marchaient pas (quand je dis "mes" je n'insinue pas que je les ai fais)... Donc je crois que le plus simplz c'est que je réussisse à trouver un forum tout con dans ce format... Mais j'ai eu beau en essayer une multitude depuis quelques jours, je n'en ai pas trouvé... Je cherche un truc tout con en plus... mais bon...

        Par contre je n'ai pas compris quand tu me parles d'alinéas... Tu parles toujours du forum?

        ps: je t'invite par ailleurs à laisser un post sur le livre d'or... C'est le moins que je puisse faire! :-p
        0
        1. Modérateur
          Re,

          C'est quoi les u.i. et les u.v. ?
          Sinon je suis repassé un ptit instant sur ton forum et tu as un gros paquet de undefined index. Toujours ces problèmes de sessions ou post?

          Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
          0
          1. Ben justement, je viens juste de le faire...
            Et ca marche... On avance...
            Par contre quand je clique sur le forum, rien ne se passe...
            Je dois encore avoir des problèmes de undefined variable... C'est possible que ce soit ca? Au quel cas comment le savoir?

            Ce qui est embettant, c'est que je viens de transformer les undefined variable en undefined index... ON me l'a deja dit 100 fois... Je sais... Mais desfois les u.i. partent une fois que tous les u.v. sont réglés... mais pas là... Il doit y avoir des u.v. qui ne s'affichent pas en probleme... C'est possible? ou j'ai une fois de plus rien compris et je melange tout?

            Arnaud
            0
            1. Modérateur
              Hmm, le préfixe, tu peux le configurer dans une page de config quelque part?

              Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
              0
              1. En fait, je viens de lire un truc, comme quoi quand tout est concentrer en une base, il expliquer au code celles qui lui appartiennent, et les autres... Donc en gros, il parle de mettre un préfixe.

                donc ma base c'est arnaudsalley_db et le préfixe de mes deux tables est forums. J'ai donc entré arnaudsalley_db.forum mais mes forums n'apparaissent pas. Par contre la page apparait (avec toujours des undefined index sur lesquels je suis en train d'essayer de travailler, mais c'est long y en a beaucoup...)

                Arnaud
                0
                1. Modérateur
                  Raaaahhh :-D
                  Tu es certain d'avoir importé ta base données? Certains d'avoir le même nom pour ta base de données?

                  Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
                  0
                  1. C'est fait. Maintenant j'ai:

                    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource

                    (et j'en ai une bonne tripotée)

                    Arnaud
                    0
                    1. Modérateur
                      Il faut configurer tes identifiants de base de donnée (host, login et pass).
                      Ils sont sûrement dans un fichier à part avec un nom du genre config.php

                      Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
                      0
                      1. J'ai essayé d'enlever ce code, la page s'affiche, mais j'ai toute une série d'erreur:

                        Warning: Accès refusé pour l'utilisateur

                        Warning: MySQL Connection Failed

                        Warning: MySQL: A link to the server could not be established
                        0
                        1. Oui... Alors qu'il fonctionne très bien sous multimania...

                          Aparemment le code qui ne passe pas est celui-ci:

                          //URL check: no arguments passed in the url
                          if(sizeof($HTTP_GET_VARS)!=0){
                          print("<b>$talk[42]</b>");
                          exit();
                          }
                          0
                          1. Modérateur
                            Même en faisant un réinstalle vierge?

                            Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
                            0
                            1. Ben j'ai trouvé la solution de mettre un @ devant... Car ta solution me renvoie le même problème... Su un forum, on disait qu'en cas de problème il fallait remplacer LC_* par une constante... MAis je ne sais pas comment...

                              Quoi qu'il en soit j'ai un message interne au forum (que le dévelopeur a créé) qui me dit que j'ai changé des urls... Mais pourtant j'ai fait un copié collé des répertoires... Même si je réinstalle le code source c'est pareil...

                              Qu'en pensez-vous?

                              Arnaud
                              0
                              1. Modérateur
                                Essaie:
                                $locale=setlocale(LC_TIME,"fr");

                                Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
                                0
                                1. Ok! Merci! Cette fois j'ai compris et j'ai plus d'erreur...
                                  Maintenant j'ai plus que cette erreur à régler:

                                  Notice: Passing locale category name as string is deprecated. Use the LC_* -constants instead.

                                  concernant la ligne

                                  $loctime=setlocale("LC_TIME","$lang");

                                  Je continue de chercher... Si quelqu'un a de son côté une suggestion...

                                  merci encore et toujours,

                                  Arnaud
                                  0
                                  1. Modérateur
                                    Ca dépend. Si on pouvait se connecter sur la page d'avant en anonyme, la session n'avait peut être pas encore commençé. Le session_start() est à mettre sur toutes les pages qui peuvent acceuillir un membre connecté, comme ça il le restera durant toute sa visite sur le site.
                                    Ensuite plutôt que d'écrire session_register('login') pour transformer la variable $login en variable session (c'est à dire pouvoir la faire passer de page en page), utilise plutôt:
                                    $_SESSION['login']=$login   

                                    Et tu la récupèreras dans $_SESSION['login'] dans la prochaine page si elle commence par session_start()
                                    Cette methode fonctionnera indépendamment de certaines configurations de php qui diffèrent d'un serveur à un autre.
                                    http://fr2.php.net/manual/fr/function.session-register.php
                                    Ca te fera un problème en moins qui t'évitera de t'embourber avec différentes versions d'easy php ;-)

                                    Et c'est la même chose avec $_POST['login'] ou $_GET['login'] selon les cas (on en a déjà parlé) pour récupérer une variable d'un formulaire. Si tu utilises $login pour récupérer ta valeur, ça ne marchera pas selon certaines configurations, tandis que la variable $_POST ou $_GET fonctionnera toujours (sauf peut être avec les très vieilles versions de Php mais je ne pense pas que tu sois concerné...)

                                    PS: C'était une réponse au message 4 mais j'ai été un peu lent.... :-)

                                    Li4uLlZvdHJlIGTpdm916SBzZXJ2aXRldXIuLi4u
                                    0
                                    1. Merci beaucoup,

                                      Grce à ton site j'ai enfin compris quelque chose au php:
                                      il manquait
                                      if (isset($_SESSION['login']) && isset($_SESSION['pwd']))
                                      a ma page... Maintenant tout marche...
                                      Merci!!!
                                      0
                                      1. Merci beaucoup,

                                        J'ai essayé mais le problème n'a pas changé. je ne sais pas si ça change quelque chose, mais j'avais déjà

                                        session_start();
                                        session_register('login');

                                        Sur la page d'avant... donc ça devrait continuer en arrivant sur la page suivante non?

                                        Arnaud
                                        0
                                        1. en fait si j'ai bien compris ton cas tu perds le nom de la personne connecté a la page suivant donc pour sa il faudrai par exemple que tu remplaces :
                                          ...
                                          $_POST["pseudo"]=my...

                                          par
                                          session_start();
                                          $_SESSION['visiteur'] =my...

                                          comme ca la variable $_SESSION['visiteur'] concervera toujours le nom de la personne qui s'est au préalable identifié.
                                          Pour plus de détails je te conseil cette page elle devrai repondre a pas mal de tes intérogation sur la question:
                                          http://www.lephpfacile.com/cours/index.php?p=19

                                          tosty
                                          0
                                          • 1
                                          • 2