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 :

[Mail] creation de compte a partir d'une recu dans boite email [Tutoriel]


Sujet :

Langage PHP

  1. #21
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Points : 113
    Points
    113
    Par défaut
    moi j'ai crée une base " membre "
    et une table " table_users " avec les champs que tu a indiqué

    mais dans ton programme ou est la declaration du nom de la base ?.

  2. #22
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    Comme dit dans le poste, le code n'est qu'un exemple
    Ila pas été testé, et comme tu le fais remarqué, il manque la selection de la base de donnée

    Je corrige dans le poste (pas sur les fichiers dans le zip )

  3. #23
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    il manquait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_select_db($bddBase);
    juste après la connection au serveur

  4. #24
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Points : 113
    Points
    113
    Par défaut
    LS LIGNES DE 20 A 24
    20 '".mysql_real_escape_string($_SESSION['user_nom'])."',
    21 '".mysql_real_escape_string($_SESSION['user_prenom'])."',
    22 '".mysql_real_escape_string($_SESSION['user_email'])."',
    23 '".mysql_real_escape_string($_SESSION['user_login'])."',
    24 md5('".mysql_real_escape_string($_SESSION['user_pass'])."'),

    Notice: Undefined index: user_nom in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 20

    Warning: mysql_real_escape_string(): Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 20

    Warning: mysql_real_escape_string(): A link to the server could not be established in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 20

    Notice: Undefined index: user_prenom in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 21

    Warning: mysql_real_escape_string(): Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 21

    Warning: mysql_real_escape_string(): A link to the server could not be established in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 21

    Notice: Undefined index: user_email in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 22

    Warning: mysql_real_escape_string(): Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 22

    Warning: mysql_real_escape_string(): A link to the server could not be established in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 22

    Notice: Undefined index: user_login in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 23

    Warning: mysql_real_escape_string(): Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 23

    Warning: mysql_real_escape_string(): A link to the server could not be established in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 23

    Notice: Undefined index: user_pass in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 24

    Warning: mysql_real_escape_string(): Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 24

    Warning: mysql_real_escape_string(): A link to the server could not be established in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 24
    Erreur de syntaxe près de ') VALUES ( '', '', '', '', ' à la ligne 12

    je sais pas pourquoi les sessions chez moi ne fonctionne pas ,
    si ta un peu de temps Sion_Sempai essayer de faire tourner le programme histoire
    de voir si chez toi c bon !!

  5. #25
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    hummmm... Bon le mysql_real_escape_string je l'avais encore jamais utilisé, mais la c'est pas térrible comment je l'ai utilisé

    On va faire plus simple ^^

  6. #26
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    J'ai modifié le code, et le zip avec une légère optimisation...

    la gestion de la connection à la base se fait dans un fichier à part (bdd.php) pour éviter de répéter le code plusieurs fois.... la page de connection est incluse dans les pages qui en ont besoin

  7. #27
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Citation Envoyé par Sion_Sempai
    hummmm... Bon le mysql_real_escape_string je l'avais encore jamais utilisé
    Bouuuuh ! Pas bien !

    Dans verif.php, tu as ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_SESSION['proceed']) && $_SESSION['proceed'] == 1)
    Perso, j'ai tendance à inverser le test quand le else est tout petit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!isset($_SESSION['proceed']) or $_SESSION['proceed'] != 1)
    Dans createNewAccount.php, tu utilises addslashes() au lieu de mysql_real_escape_string(). La seule chose dont a besoin cette dernière fonction afin d'être utile est une connexion à MySQL, or il me semble que tu la fais au préalable dans bdd.php.
    Réfère-toi au blog de Schiflett pour quelques infos supplémentaires : http://shiflett.org/archive/184

  8. #28
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    Kirkis > En général, quand il s'agit de test, je mets tout les cas échéan en premier et le reste après... Mais comme je l'ai dit, le code est largement optimisable. Et puis, j'ai fais ca à l'arrache, j'ai pas trop fais attention

    Pour mysql_real_escape_string, après l'erreur que m'a montré nébil, je me disais bien que c'etait ce genre de petit détail qui allait pas... (je l'utilisais avant de faire la connection, avant mon dernier edit...)

    Mais comme ca a l'air reglé, je vais le remettre

  9. #29
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    Le code et le zip sont a jour...
    J'ai remis les mysql_real_escape_string.

    Ton probleme de session nébil, faut voir selon comment ton serveur est installé, et s'il est bien configuré

  10. #30
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Points : 113
    Points
    113
    Par défaut
    j'ai retelecharger le nouveau zip mais j'ai toujours les memes erreures qui s'affiche
    je suis en local easyphp 1.7 phpmyadmin 2.5.3

    Notice: Undefined index: user_nom in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 23

    Notice: Undefined index: user_prenom in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 24

    Notice: Undefined index: user_email in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 25

    Notice: Undefined index: user_login in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 26

    Notice: Undefined index: user_pass in c:\program files\easyphp1-7\www\formulaire_validation_email_2\createnewaccount.php on line 27
    Erreur de syntaxe près de ') VALUES ( '', '', '', '', md5(''), '5' à la ligne 12

    pourquoi les valeurs ne sont pas posté de formulaire a createNewAccount
    il faut pas mettre dans easyphp un dossier session comme chez free ?

    c'est '".mysql_real_escape_string($_SESSION['user_nom'])."'
    qui a pour travaille de recupéré les valeurs des champs commme un simple $toto=$_GETouPOST['email']; ??

    c'est pas un truc de se genre qu'on doit ecrire $Email=$_SESSION['Email']; ??????

    voila se qui est dit sur cette fonction
    http://fr.php.net/manual/fr/function...ape-string.php

  11. #31
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    (comme expliqué dans la doc php) la fonction mysql_real_escape_string() a pour but de protéger toute insertion dans la base de données des problèmes dûes à l'interprétation des caractères spéciaux tels que l'apostrophe par exemple.

    de par ce fait, tu te protèges également des injections MySQL.

    pour qu'elle fonctionne correctement, elle doit être lié explicitement à une connexion MySQL avec le second paramètre optionnel ou implicitement si une connexion MySQL est déjà établie.


  12. #32
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Points : 113
    Points
    113
    Par défaut
    Salut sion_sempai

    sa veux dire quoi sa , tu peut me le traduire !!
    if (!@mail($mailTo, $mailSubject, $mailBody, $mailHeader))


    on récupere la l'id du dernier enregistre pour l'intégré au lien de validation
    c'est pas tres efficace car si les deux derniers inscrit non pas validez de suite leur lien de confirmation et que le premier des deux valide en premier son lien il va récipéré l'id du second et donc il ne pourra pas cinfirmer son inscription
    // **** Selection du dernier id utilisateur enregistré **** //
    $sql = "
    SELECT
    LAST_INSERT_ID() AS user_id";

    $qry = mysql_query($sql) or die(mysql_error());

  13. #33
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 285
    Points : 300
    Points
    300
    Par défaut
    Désolé, je réponds d'un cyber... J'ai des problemes de connections a la maison

    donc :

    Citation Envoyé par nebil
    Salut sion_sempai

    sa veux dire quoi sa , tu peut me le traduire !!
    if (!@mail($mailTo, $mailSubject, $mailBody, $mailHeader))
    ca, ca vérifie que l'envoie du mail s'est bien passé. Le @ devant le nom de la fonction permet d'eviter l'affichage des erreurs éventuellement générées par la fonction (qu'on me rattrape si c'est pas tout a fait ca).

    on récupere la l'id du dernier enregistre pour l'intégré au lien de validation
    c'est pas tres efficace car si les deux derniers inscrit non pas validez de suite leur lien de confirmation et que le premier des deux valide en premier son lien il va récipéré l'id du second et donc il ne pourra pas cinfirmer son inscription
    // **** Selection du dernier id utilisateur enregistré **** //
    $sql = "
    SELECT
    LAST_INSERT_ID() AS user_id";

    $qry = mysql_query($sql) or die(mysql_error());
    les identifiants sont fait de sorte que chacun garde le sien, qu'il confirme son email ou pas

  14. #34
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Points : 113
    Points
    113
    Par défaut
    Merci pour moi les choses sont claire maintenant .
    A+

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/08/2008, 14h36
  2. se connecter à un compte a partir d'une autre application
    Par dev.exe dans le forum Services Web
    Réponses: 3
    Dernier message: 08/08/2008, 11h23
  3. Réponses: 4
    Dernier message: 23/01/2008, 12h16
  4. [PDE] Creation de vues a partir d'une autre vue
    Par indoloic dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 13/03/2006, 14h34
  5. Réponses: 18
    Dernier message: 08/08/2005, 20h52

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