PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 03-06-2010 13:17:58

adnagi
Membre
Inscription : 03-06-2010
Messages : 10

PHP insertion code pour validation de syntaxe mail

Bonjour,

Je debute en php, j ai reussi a inserer voir creer du script php sans trop de probleme,
mais la j en ai un vrai !
je cherche a valider la syntaxe d une adresse mail lors de l insertion,mais les messages d erreurs fuses !!!
pouvez vous m aider?
Merci d avance ,voici mon code.





 


<! ----------------------  DEBUT DU SCRIPT LOGIN PHP  -------------------------- !>
<?php require_once('ConnexionSQL/conDB.php'); ?>
<?php
// on teste si le visiteur a soumis le formulaire de connexion  
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
   if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

     
       
      // on teste si une entrée de la base contient ce couple login / pass
      $sql = 'SELECT count(*) FROM membrestp WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
      $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
      $data = mysql_fetch_array($req);
       
      mysql_free_result($req);
      mysql_close();
       
      // si on obtient une réponse, alors l'utilisateur est un membre
      if ($data[0] == 1) {
         session_start();
         $_SESSION['login'] = $_POST['login'];
         $_SESSION['ville'] = $_POST['ville'];
          print("<script language=\"javascript\" type=\"text/javascript\">window.location.replace(\"membrestp.php\" );</script>" );
         exit();
      }
      // si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
      elseif ($data[0] == 0) {
         $erreurlog = 'Compte non reconnu.';
      }
      // sinon, alors la, il y a un gros problème smile
      else {
         $erreurlog = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
      }
   }
   else {
      $erreurlog = 'Au moins un des champs est vide.';
   }  
}  
?>

<! ----------------------  DEBUT DU SCRIPT D ENRENGISTREMENT PHP  -------------------------- !>

<?php

// on teste si le visiteur a soumis le formulaire  
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
   // on teste l'existence de nos variables. On teste également si elles ne sont pas vides
       if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {
      // on teste les deux mots de passe
      if ($_POST['pass'] != $_POST['pass_confirm']) {
         $erreur = 'Les 2 mots de passe sont différents.';
         if(isset($_POST['email'])){
         $erreurM ='email incorect';
        $email = stripslashes(htmlentities($_POST['email']));
        if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',str_replace('&','&',$email)))
      {
     
     
             
         // on recherche si ce login est déjà utilisé par un autre membrestp
         $sql = 'SELECT count(*) FROM membrestp WHERE login="'.mysql_escape_string($_POST['login']).'"';
         $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
         $data = mysql_fetch_array($req);

         if ($data[0] == 0) {
            $sql = 'INSERT INTO membrestp VALUES("",
            "'
.mysql_escape_string($_POST['login']).'",
            "'
.mysql_escape_string($_POST['sex']).'",      
            "'
.mysql_escape_string($_POST['ville']).'",
            "'
.mysql_escape_string(md5($_POST['pass'])).'",
            "'
.mysql_escape_string($_POST['email']).'")';
            mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

            session_start();
            $_SESSION['login'] = $_POST['login'];
            $_SESSION['ville'] = $_POST['ville'];
             print("<script language=\"javascript\" type=\"text/javascript\">window.location.replace(\"membrestp.php\" );</script>" );
            exit();
         }
         else {
            $erreur = 'Un membre possède déjà ce login.';
         }
      }
   }
   else {
      $erreur = 'Au moins un des champs est vide.';
   }  
}  

echo '<span style="color:#00aa00;">L\'email <strong>'.$email.'</strong> est valide.</span>';
        }
        else{
                echo '<span style="color:#ff0000;">L\'email <strong>'.$email.'</strong> est invalide.</span>';
        }
}
else
{
        $email = '';
        echo 'Veuillez entrer l\'email à vérifier.';
}


echo '<br />';
?>

         

<! ----------------------  DEBUT SCRIPT  MENU VILLE  -------------------------- !>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Townup</title>
<link href="styles_onep.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="./dept_xhr.js" charset="iso_8859-1"></script>
<script type="text/javascript" src="jquery-1.2.1.pack.js"></script>

</head>
<body>
<div id="page">
  <div id="logonban"><img src="img/minitp.png" width="295" height="80" /></div>
  <div id="whiteban"></div>
<! ----------------------  DEBUT DU LOGIN  -------------------------- !>
 
  <div id="loginreg">
     <form action="index.php" method="post">
     <table width="302" border="0">
         <tr>
           <td width="106"> </td>
           <td width="186"><strong>Connecter vous !</strong></td>
         </tr>
      </table>
     <table width="301" border="0">
        <tr>
          <td>Utilisateur</td>
          <td><label>
     <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>" />
          </label></td>
        </tr>
        <tr>
          <td>Mot de passe</td>
          <td><label>
     <input name="pass" type="password" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>" />
          </label></td>
          </table>  
     <input type="submit" name="connexion" value="Connexion"><?php if (isset($erreurlog)) echo '<br /><br />',$erreurlog; ?>
    </form>
     
  </div>

 
<! ----------------------  MENU VILLE PHP  -------------------------- !>
  <?php

$sql = "SELECT `id_departement` AS idr, `departement` ".
       "FROM `departement` ".
       "ORDER BY `id_departement`;";

$connexion = mysql_connect($hostname, $username, $password);

if($connexion != false)
{
       $choixbase = mysql_select_db($nom_base_donnees, $connexion);

    $recherche = mysql_query($sql, $connexion);

    $departements = array();

    $id = 0;
    while($ligne = mysql_fetch_assoc($recherche))
    {
        $departements[$ligne['idr']] = $ligne['departement'];
    }

?>

<! ----------------------  DEBUT DE L ENRENGISTREMENT  -------------------------- !>
 
  <FORM ID="reguser" action="index.php" method="post">
 
   
      <div align="center"><strong>Inscription gratuite
      </strong></div>
   
   
     <table height="421" align="center">
       <tr valign="baseline">
         <td nowrap="nowrap" align="right">Pseudo:</td>
        <td><input name="login" type="text" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"> </td>
     </tr>
       <tr valign="baseline">
          <td nowrap="nowrap" align="right"> </td>
          <td><?php if (isset($erreur)) echo '<br /><br />',$erreur; ?></td>
     </tr>
       <tr valign="baseline">
         <td height="32" align="right" nowrap="nowrap"><div align="center">
           <p align="right">Sexe:</p>
          </div></td>
        <td valign="baseline"><select name="sex">
            <option value="vide">Choisir</option>
            <option value="Homme" type="text">Homme</option>
            <option value="Femme"type="text">Femme</option>
        </select>
            <table>
       <tr>  
     </tr>
            </table></td>
     </tr>
     
       <tr valign="baseline">
          <td nowrap="nowrap" align="right">Pays:</td>
          <td><select name="pays">
              <option value="France">France</option>                  
          </select></td>
     </tr>
   
     <! ----------------------  MENU VILLE  -------------------------- !>
       <tr valign="baseline">
          <td nowrap="nowrap" align="right">Departement:</td>
          <td><select name="departement" id="departement" onchange="getVilles(this.value);">
              <option value="vide">- - - Choisissez un departement - - -</option>
   
    <?php

    foreach($departements as $nr => $nom)
    {
        ?>
       
    <option value="<?php echo($nr); ?>"><?php echo($nom); ?></option>
   
    <?php
    }
    ?>
    </select></td>
    </tr>
    <tr valign="baseline">
          <td nowrap="nowrap" align="right">Ville:</td>
          <td> <span id="blocVilles"></span></td>
         <option name="ville" onchange="getVilles(this.value);" value="<?php if (isset($_POST['ville'])) echo htmlentities(trim($_POST['ville'])); ?>" />
         
    </tr>    
    </tr>
    </tr>
   
   
   
       <tr valign="baseline">
          <td nowrap="nowrap" align="right">Email:</td>
          <td><input type="text" name="email" value="" size="50" name="email"  />
         
         
       
         
         
         
         
         
          </td>
         
    </tr>
       
    <tr valign="baseline">
          <td nowrap="nowrap" align="right">Mot de passe:</td>
          <td></span>
           <label>
         
              <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>" />
             
          </label></span></span></td>
     </tr>
     <tr valign="baseline">
        <td nowrap="nowrap" align="right">Retaper  mot de passe</td>
          <td><label>
         
            <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"/>
           
         </label></td>
     </tr>
     <tr valign="baseline">
          <td height="104" align="right" nowrap="nowrap"> </td>
          <td><input type="submit" name="inscription" value="Inscription" /></td>
     </tr>
     </table>
     
  </form>
<?php
}
else
{

?>  
 
  </div>
<?php
}
?>

 
     <! ----------------------  FIN DU REGISTER  -------------------------- !>
     
     
 
  <div id="bandown">
      <p align="center">En construction</p>
    <p align="center"> </p>
    <p align="center"><a href="mailto:admin@townup.com">Webmaster</a></p>
    <p align="center"> </p>
  </div>
 
  <div id="logobandown">
    <p> </p>
    <p> </p>
  </div>
Placez ici le contenu de  id "page"</div>

</body>
</html>

 

Hors ligne

#2 03-06-2010 13:22:15

Alnoss
Modérateur absent
Lieu : 06 - PACA
Inscription : 11-05-2009
Messages : 541
Site Web

Re : PHP insertion code pour validation de syntaxe mail

Voila qui est déjà mieux !

Maintenant, il faut être logique. Puisque selon tes propos il s'agit de la partie "vérification du mail" qui comprendrait un soucis, pourquoi tu nous remplis la page d'un code dont les 95% sont inutiles ici ????
De plus, tu parles d'erreur, mais tu ne précises pas lesquelles .... où est la pertinence ?????

Donc au risque de paraitre chiant (il faut respecter les régles), repostes la partie "cohérente" avec ta question !

Discussion fermée ! MERCI de lire le mode d'emploi, et d'éviter de mettre plein de code qui ne sert à rien alors que les quelques lignes concernées suffisent !

P.S : si tu ne sais pas qu'elle est la partie en question, il faut commencer par apprendre les bases....

Je me tiens personnellement à ta disposition dès lors que tu auras respecté ces petites règles simples


MERCI de lire le mode d'emploi avant de poster !!

Hors ligne

Pied de page des forums