IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

j'entrin de créer un code car j'ai du mal à faire certaine chose


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut j'entrin de créer un code car j'ai du mal à faire certaine chose
    Voilà mon but est de se conecter via un login et mdp et si les saisie sont correct alors une page s'affiche.
    Mon code de saisie:
    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
    <html>
    <head>
    <title>connection</title>
     
    <h4>Pour vous identifier, veuillez entrer votre login:</h4>
     
    <FORM method=get action="login1.php" name=form>
     Login:
    <?php
    echo ('<input type="text" name="login" maxLength="20" size="20" value="'. $_GET[login] .'">');
    ?>
     Mot de passe:
    <?php
    echo ('<input type="text" name="passe" maxLength="20" size="20" value="'.$_GET[passe] .'">');
    ?>
    </p><input type="submit" value="OK" action="connection.php"></p>
    </head>
    </FORM>
    </body>
    </html>
    ensuite j'ai créé ce morceau de code:
    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
    <html>
    <body>
    <head>
    <link rel="stylesheet" href="sitebn.css" type="text/css">
    <form name="connection" action="liste.php" method="post">
    début de mon code
    <?
    (
     if (login=test) and (passe=jl)
     else liste.php
     )
    ?>fin de mon code
    </p>
    <a href="liste.php"><br><font color='yellow'>Revenir à l'accueil</a></font></p>
    </head>
    </body>
    </html>
    Sa veut dire si le login et passe c'est test et jl alors ouverture de la page liste.php mais de façon automatique.
    J'optimiserai mon code plus tard.

    merci

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    j'entrin de créer un code car j'ai du mal à faire certaine chose
    Il est bizarre le titre...

    Et il est caché où le problème
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    ben regarde tout est expliquer, si tu ne voit pas ben je réexplique

  4. #4
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    J'ai beau chercher je ne vois pas de question
    Et une traduction du titre c'est possible ?
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    Voilà mon but est de se conecter via un login et mdp et si les saisie sont correct alors une page s'affiche.
    Mon code de saisie:

    Code :
    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
    <html>
    <head>
    <title>connection</title>
     
    <h4>Pour vous identifier, veuillez entrer votre login:</h4>
     
    <FORM method=get action="login1.php" name=form>
     Login:
    <?php
    echo ('<input type="text" name="login" maxLength="20" size="20" value="'. $_GET[login] .'">');
    ?>
     Mot de passe:
    <?php
    echo ('<input type="text" name="passe" maxLength="20" size="20" value="'.$_GET[passe] .'">');
    ?>
    </p><input type="submit" value="OK" action="connection.php"></p>
    </head>
    </FORM>
    </body>
    </html>

    ensuite j'ai créé ce morceau de code qui s'appelle connection.php ou il va verifier si le login et mdp sont exactes:
    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
    <html>
    <body>
    <head>
    <link rel="stylesheet" href="sitebn.css" type="text/css">
    <form name="connection" action="liste.php" method="post">
    début de mon code
    <?
    (
    if (login=test) and (passe=jl)
    else liste.php
    )
    ?>fin de mon code
    </p>
    <a href="liste.php"><br><font color='yellow'>Revenir à l'accueil</a></font></p>
    </head>
    </body>
    </html>
    ""si login=test et passe=jl alors ouverture de la page liste.php""
    c'est sa qu'il me faut: j'ai essayé (voire deuxieme partie de mon code au milieu)

    j'espère que tu as compris

  6. #6
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    D'accord, le problème est juste une redirection vers une page PHP ? Il faut peut-être voir du côté de header (cf FAQ).

    Au passage en français c'est connexion.
    Et merci d'utiliser la balise code
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    ce n'est pas header , header c'est les erreurs.
    moi c'est c'est renvoyé dans une page.php si le login et mdp sont correct.

    dsl pour les balise code j'ai pas fais expret

  8. #8
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    ce n'est pas header , header c'est les erreurs.
    Tu n'as pas dû te renseigner pour dire ça...

    Je t'aide un peu mais bon tu pourrais faire un effort de recherche...
    http://php.developpez.com/faq/?page=...ts_redirection
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  9. #9
    Membre éclairé
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par snakejl
    ce n'est pas header , header c'est les erreurs.


    C'est qu'il est affirmatif en plus... un peu de lecture... .. .

    fonction header()

    @ tchaOo°

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    Je regarde je lis je fais des recherches mais je galère, et je galère vraiment c'est pire que les checkboxs

  11. #11
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    ouille !
    bon, alors déja en PHP, les noms de variables sont précédées de $, le test d'égalité s'écrit avec deux = et les chaines de caractères doivent être encadrées de " ou de ' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(($variable=="valeur")&&($variable2=="valeur2"))
    ensuite, l'opérateur booléen "et" ne s'écrit pas "and" mais "&&"
    pour ce qui est de la redirection, il faut effectivement la faire avec un header, exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Location: mapage.php");
    ceci doit être fait AVANT tout envoi au navigateur client. Ce qui veut dire : pas de balise HTML ni de echo ou print avant le header.
    Enfin, dans ton formulaire, l'attribut action ne doit pas pointer vers login1.php, mais vers le script qui effectue la vérification, c'est à dire connection.php
    Fais toutes ces modifs, ça sera déjà pas mal.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    Ok j'ai regardé ce que tu m'as conseillé.
    Voici mon formulaire qui s'apelle debut.php:
    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
    <?include ("connection.php");?>
    <html>
    <head>
    <title>connection</title>
     
    <h4>Pour vous identifier, veuillez entrer votre login:</h4>
     
    <form name="identification" action="connection.php" method="post">
     Login:
    <?php
    echo ('<input type="text" name="login" maxLength="20" size="20" value="'. $_GET[login] .'">');
    ?>
     Mot de passe:
    <?php
    echo ('<input type="text" name="passe" maxLength="20" size="20" value="'.$_GET[passe] .'">');
    ?>
    </p><input type="submit" value="OK" action="connection.php"></p>
    </head>
    </FORM>
    </body>
    </html>
    ensuite j'ai créé un fichier comme tu m'as dis connection.php et qui se trouve en haut de mon code en include.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?
    (
    if(($login=="jl")&&($passe=="test"))
    else header("Location: liste.php");
     )
    ?>
    Voilà d'après ce que j'ai compris mais sa ne marche pas.J'espere que j'ai compris sa.
    D'après mes tests quand je mets le fichier <?include ("connection.php");?> en haut ma page debut.php il n'y a rien qui s'affiche.
    Voici merci de m'aider car c'est plus interressant de faire petit à petit que prendre des sripts dejà fais.

  13. #13
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Points : 1 565
    Points
    1 565
    Par défaut
    oulala... j'ai pas lu tout les messages, mais le dernier m'horrifie un peu ;o)

    Comprends tu le code que tu ecris ?

    * <?php est préférable a <?
    * connection.php est appelé en debut de page ET comme action du formulaire... a mon avis c'est l'action qui est fausse...
    * ton formulaire est en methode POST (en majuscule c'est mieux au passage) et tu tente de récuperer avec $_GET
    * dans connection.php tu tente meme de recuperer sans $_POST ni $_GET : aucune chance que ca marche
    * Un indice de tableau DOIT OBLIGATOIREMENT etre entouré de quote (') quand c'est une chaine de caractere !!!! (cf $_GET[...])
    * Pour les raisons de sécurité, on ne réaffiche jamais un password dans un formulaire, et le type "password" est plus adapté que "text"
    * Ah oui, au fait... tout ton code html est dans les balises head (mon dieu, ou est la caméra !!!) et la balise body n'est jamais ouverte (mais fermée par contre... ), je parle meme pas du chevauchement head/form...
    * Les parentheses dans le fichier connection.php servent a quelque chose ? mon esprit déconnecte là, peut etre a ouvrir un sous shell ?? ahah, je sais pas... enfin si je sais : a rien !
    * "if (condition) else action" : est-ce que c'est la syntaxe d'un if normal ???? je t'aide : la réponse est non

    Donc... en vrac :

    http://php.net/fr/if
    http://php.net/fr/include
    http://fr3.php.net/manual/fr/language.types.array.php
    http://fr3.php.net/manual/fr/languag...s.external.php

    Et plus généralement : http://fr3.php.net/manual/fr/langref.php

  14. #14
    Invité
    Invité(e)
    Par défaut
    1 - si tu fais un include de connection alors ton form doit rappeler debut.php
    2 - Utilises partout <?php au lieu de <?
    3 - tu utilises les $_GET mais s'ils n'existent pas ça te fera une erreur donc verifier leur existence
    4 - Il manque les guillemets dans tes $_GET
    5 - ton fichier connection.php est bizar (parenthese, aucune recuperation de valeur ,condition if etc)

    debut.php
    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
     
    <?php include "connection.php";?>
    <html>
    <head>
    <title>connection</title>
    </head>
    <body>
    <h4>Pour vous identifier, veuillez entrer votre login:</h4>
    <form name="identification" action="debut.php" method="post">
    <?php
    //Inititialisation
    $val_login ="";
    //Vérification
    if(isset($_POST["login"])) $val_login = $_POST["login"];
     
    echo (' Login:<input type="text" name="login" maxLength="20" size="20" value="$val_login">');
     
    echo (' Mot de passe:<input type="password" name="passe" maxLength="20" size="20" value="");
    ?>
    </p><input type="submit" value="OK" action="connection.php"></p>
    </FORM>
    </body>
    </html>
    Connection.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    if(isset($_POST["passe"]) && $_POST["passe"] =="test" &&
    isset($_POST["login"]) && $_POST["login"] =="jl")
    {
    header("Location: liste.php");
    }
    ?>
    ps : jai pas testé le code mais ça te permettra davancer

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    C'est vrai que j'ai fais des fautes c'est car je me suis dépéché j'ai tout rectifier mais c'est abusé sachant que dans mes autres page tout est niquel.
    J'ai rectifié une erreur que tu as faites
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo (' Mot de passe:<input type="password" name="passe" maxLength="20" size="20" value="">');
    Mais je ne comprend pas sa
    $val_login =""; et sa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST["login"])) $val_login = $_POST["login"];
    merci de me dire

  16. #16
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par snakejl
    Mais je ne comprend pas sa
    $val_login ="";
    initialise la variable car je l'utilise dans l'input c'est un peu ma valeur par défaut
    Citation Envoyé par snakejl
    et sa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST["login"])) $val_login = $_POST["login"];
    je vérifie que la variable que tu envoie avec ton formulaire avec post existe bien (isset), si elle existe alors je laffecte a $val_login tout simplement

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    okok parfaitement compris on initialise, on verifie et si elle existe on l'affecte.
    J'ai compris la structure mais sa ne marche pas(page blanche)

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    Il y a un problème dans cette ligne la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo (' Login:<input type="text" name="login" maxLength="20" size="20" value="$val_login">');

    comme tout à l'heure si j'enlève
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include ("connection.php");?>
    ma page debut.php affiche login et mot de passe MAIS dans la zone de saisie du login nous avions dedans $val_login donc il y a une erreur quelque part et je ne voit pas ou.

  19. #19
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par snakejl
    comme tout à l'heure si j'enlève
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include ("connection.php");?>
    ma page debut.php affiche login et mot de passe MAIS dans la zone de saisie du login nous avions dedans $val_login donc il y a une erreur quelque part et je ne voit pas ou.
    jai rien compris a ce que tu as voulu dire

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 56
    Points
    56
    Par défaut
    J'ai ma page debut.php ou j'ai sa:
    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
     
    <?php include ("connection.php");?>
    <html>
    <head>
    <BODY>
    <title>connection</title>
    <h4>Pour vous identifier, veuillez entrer votre login:</h4>
    <form name="identification" action="debut.php" method="POST">
    <?php
    //Inititialisation
    $val_login ="";
    //Vérification
    if(isset($_POST["login"])) $val_login = $_POST["login"];
     
    echo (' Login:<input type="text" name="login" maxLength="20" size="20" value="$val_login">');
     
    echo (' Mot de passe:<input type="password" name="passe" maxLength="20" size="20" value="">');
    ?>
    </p><input type="submit" value="OK" action="connection.php"></p>
     
    </FORM>
    </body>
    </head>
    </html>
    Ensuite dans mon fichier connection.php j'ai sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    (
    if(isset($_POST["passe"]) && $_POST["passe"] =="test" &&
    isset($_POST["login"]) && $_POST["login"] =="jl")
    {
    header("Location: liste.php");
    }
     )
    ?>
    Quand j'affiche ma page debut.php il n'y a rien qui s'affiche, page blanche.

    J'ai effectué des tests:
    Quand j'enlève <?php include ("connection.php");?> de mon fichier debut.php, il y a les 2champs login et mot de passe qui s'affiche.
    Dans le champ de saisi du login il est marqué sa:
    $val_login


    Il y a 2blems:
    l'include(conection.php) m'empeche d'afficher les information de ma page.
    si j'enlve l'include les information s'affiche mais dasn mon champs ou je sais le login il est marqué sa $val_login

    voilà truc de fou

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [VB.Net] Créer un code barre 128
    Par olivc dans le forum ASP.NET
    Réponses: 7
    Dernier message: 25/01/2008, 19h52
  2. Créer un code de confirmation visuelle
    Par ToxiZz dans le forum Langage
    Réponses: 4
    Dernier message: 22/04/2007, 22h54
  3. Créer un code barre Datamatrix
    Par PedroBD dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 20/06/2006, 17h35
  4. Créer par code un nouveau projet dans l'IDE D7
    Par bob2553 dans le forum EDI
    Réponses: 4
    Dernier message: 25/04/2006, 17h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo