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

PHP & Base de données Discussion :

Mettre alerte en php et savoir si ma table et bonne


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Par défaut Mettre alerte en php et savoir si ma table et bonne
    Bonsoir,
    J’ai créé un espace membre et j’aimerai savoir si ma table est bonne car c’est la 1ere fois que je créé ou modifie une table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE `membre` (
     `id` int(11) NOT NULL auto_increment,
     `pseudo` varchar(255) NOT NULL default '',
     `pass` varchar(255) NOT NULL default '',
     `mail` varchar(255) NOT NULL default '',
     `confirm` text NOT NULL,
     `nom` text NOT NULL,
     `prenom` text NOT NULL,
     `pays` text NOT NULL,
     `age` text NOT NULL,
     `tel` text NOT NULL,
    `cp` text NOT NULL,
     KEY `id` (`id`)
    )";
    Ce dont je doute.
    Je pense qu’il faudrait que je mais plutôt un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    `tel` varchar(10) NOT NULL default '',
     `cp` varchar(5) NOT NULL default '',
    Après je créé mon formulaire avec des input et dans mon code j’ai essayé d’intégrer ce code avec une alerte mais ça me donne des erreurs de type erreur : } , { et erreur de ligne…………

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(preg_match(''[0-9]{10}'',$tel))
    if(preg_match(''[0-9]{10}'',$cp))
    Mes input :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input name="tel" type="text" id="tel" /> 
    <input name="cp" type="text" id="cp" />
    Je n'ai pas mis tout le formulaire pour ne pas encombrer la discution

    Et ici le code ou je voudrai avoir les alertes et mettre les codes de vérification du code postale et du téléphone.

    Code a intégrer au code en dessous de celui ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(preg_match(''[0-9]{10}'',$tel))
    if(preg_match(''[0-9]{10}'',$cp))
    Mon code formulaire d'envoi mail avec alerte :

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    $mail = htmlentities($_POST['mail']); 
     
    if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse. 
    { 
    $tel = htmlentities($_POST['tel']); 
    if(preg_match(''[0-9]{10}'',$tel)) 
    { 
    $chaine = "abcdefghijklmnopqrstuvwxyz0123456789"; 
    $confirm = str_shuffle($chaine); //On créé le code de confirmation 
     
    $pseudo = htmlentities($_POST['pseudo']); //On recupère les infos 
    $mdp = htmlentities($_POST['mdp']); 
    $verif_mdp = htmlentities($_POST['verif_mdp']); 
    $nom = htmlentities($_POST['nom']); 
    $prenom = htmlentities($_POST['prenom']); 
    $pays = htmlentities($_POST['pays']); 
    $age = htmlentities($_POST['age']); 
     
     
     
    /*On Fait la variable contenant le mail de confirmation*/ 
     
    $message1 = '<html><body>Bonjour ' . $pseudo . ' et bienvenue sur ' .$nom_site. '.</br>'; 
    $message1 .= '</br>'; 
    $message1 .= 'Vous venez de vous inscrire et nous sommes heureux<br>de pouvoir vous compter aujourd\'hui parmi nos membres.<br>'; 
    $message1 .= 'Voici un rappel de vos identifiants, notez les précieusement : <br><br>'; 
    $message1 .= 'Votre Login : ' . $pseudo .'<br><br>'; 
    $message1 .= 'Votre Mot de passe : ' . $mdp .'<br><br>'; 
    $message1 .= 'Votre Mail : ' . $mail .'<br><br>'; 
    $message1 .= 'Votre Nom : ' . $nom .'<br><br>'; 
    $message1 .= 'Votre Prenom : ' . $prenom .'<br><br>'; 
    $message1 .= 'Votre téléphone : ' . $tel .'<br><br>'; 
    $message1 .= 'Votre adresse : ' . $pays .'<br><br>'; 
    $message1 .= 'Votre age : ' . $age .'<br><br>'; 
    $message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br><br>'; 
    $message1 .= 'Cliquez sur le lien de votre Clé d\'activation ou copiez le dans votre navigateur afin de valider votre compte.<br>'; 
    $message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '</a><br><br>'; 
    $message1 .= 'A très bientôt sur le site : <a href="' .$url_site. '">' .$url_site. '</a><br><br>'; 
    $message1 .= 'L\'équipe <a href="' .$url_site. '">' .$nom_site. '</a>'; 
     
    $sql = connect_sql(); //On se connecte à MySQL 
     
    $verification = mysql_query("SELECT COUNT(*) FROM membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error()); 
    $donnees = mysql_fetch_array($verification)or die (mysql_error()); 
     
    if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà 
    { 
    $reponse = 'Le login ou l\'email est déjà utilisé, merci d\'en choisir un(e) autre. <a href="javascript:history.back(1)">Retour au formulaire</a>'; 
    } 
    else 
    { 
    if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($age) || empty($tel)) //On verifie que les variables précédentes ne soient pas vide 
    { 
    $reponse = 'Un ou plusieurs champs ne sont pas remplis, ou votre téléphone ne comporte pas 10 chiffres <a href="javascript:history.back(1)">Retour au formulaire</a>'; 
    } 
    elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques 
    { 
    $reponse = 'Les mots de passe ne sont pas identiques, <a href="javascript:history.back(1)">Retour au formulaire</a>'; 
    } 
    else //Si tout est bon on entre les données dans la BDD et on envoye le mail 
    { 
    mysql_query("INSERT INTO membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$pays', '$age', '$tel')"); 
    $reponse = 'vous êtes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un mail pour activer votre compte. Attention il se peut que l\'email atterri dans votre courrier indésirable <br><a href="' .$url_site. '">Retour à l\'Accueil</a>'; 
    $entete .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
    $entete .= "From: <$email_admin>\r\n"; 
    $entete .= "Reply-To: $email_admin\r\n"; 
    mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login .'.' , $message1, $entete); 
    } 
    } 
     
    mysql_close($sql); //On se deconnecte 
    } 
    else //Reponse si l'adresse e-mail est une fausse 
    { 
    $reponse = 'Votre adresse e-mail "' . $mail . '" n\'est pas correcte. <a href="javascript:history.back(1)">Retour au formulaire</a>'; 
    } 
    ?> 
    <? echo $reponse; ?></p>
    Cordialement Stéphane

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il manque un délimiteur a ton expression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(preg_match('#[0-9]{10}#',$tel))
    En PHP un double guillemet c'est le caractère "
    pas ' deux fois.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Par défaut
    Bonjour sabotage,
    merci de ta réponse

    voila j'ai testé avec les ' ou " ou '""' donc suivant se que je mais j'ai une aucune alerte ou rien du tout ou des erreurs.

    exemple avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(preg_match("'[0-9]{10}'",$tel))
    Votre adresse e-mail "Mon mail" n'est pas correcte.

    ou avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(preg_match("[0-9]{10}",$tel))
    Warning: preg_match() [function.preg-match]: Unknown modifier '{' in /home/web/www/membre/inscription2.php on line 94
    Votre adresse e-mail "webmaster-fusion@live.fr" n'est pas correcte.

    Etc...
    sinon aucune alerte a par des erreurs :/

    Citation Envoyé par sabotage Voir le message
    Il manque un délimiteur a ton expression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(preg_match('#[0-9]{10}#',$tel))
    En PHP un double guillemet c'est le caractère "
    pas ' deux fois.
    Cordialement Stéphane

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Enlève tes htmlentites, ils ne servent à rien.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Enlève tes htmlentites, ils ne servent à rien.
    Re sa ne change rien toujours des erreurs mais aucune alerte
    je pense que je doit mal placer le code car je ne connais pas assez le php..

    Cordialement Stéphane

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    de quelles erreurs parles-tu ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [CMS Made Simple] Super CMS mais mettre du code PHP dedans ?
    Par lecharcutierdelinux dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 12/02/2007, 14h14
  2. [Conception] Alerte en php
    Par rane dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 04/07/2006, 11h58
  3. [PHP-JS] ALERTES en php
    Par rane dans le forum Langage
    Réponses: 14
    Dernier message: 30/03/2006, 19h26
  4. [MySQL] Php / Html Mettres des Variables PHP en Values sur des form
    Par Jimmy_S dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/03/2006, 11h18
  5. Mettre un code php dans une variable...
    Par kedare dans le forum Langage
    Réponses: 6
    Dernier message: 19/09/2005, 12h55

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