Probléme de script </htlm>

romain14g59 Messages postés 74 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 26 mai 2011 - 11 juil. 2006 à 12:56
xactise Messages postés 507 Date d'inscription mardi 18 février 2003 Statut Membre Dernière intervention 22 juin 2012 - 11 juil. 2006 à 17:01
Salut, je vient de créer un script pour ranger des données dans une bdd mais j'ai un sousi il m'indique une erreur a la balise </html> en doute derniére ligne du script je ne comprend pas dutout pourquoi cette erreur j'ai tout vérifié et je ne trouve pas le probléme.
Merci de votre aide.

<?php
/* Nom du programme : SauveTelephone.php
 * Description : Contrôles les champs vides.
 *               Contrôles les champs invalide.
 *               Sauvegarde dans la base de données si tout et OK!
 */
?>
<html>
<head>
<title>Numéro de téléphone des membres</title>
</head>

<?php
$prénon = strip_tags(trim($_POST['prenon']));
$nom = strip_tags(trim($_POST['nom']));
$tph = strip_tags(trim($_POST['tph']));
$tph = ereg_replace(".-","",$tph);
/* ----- Contrôle des information du formulaire -----*/



/*Définition des étiquette de variable */$étiquette array ("prénom"> "Prenon",
                     "nom" => "Nom",
                     "tph" => "Telephone");
foreach ($_POST as $clé => $valeur)
{
/* Recherche les champ vide */
if ( $valeur == "")

     $champVide[$clé] = "blanc";
}
elseif ( ereg("(nom)",$clé))
{
  if(!ereg("^[A-Za-z' -]{1,50}",$_POST[$clé]) )
  {
      $mauvaisFormat[$clé] = "mauvais";
  }
}
elseif ($clé == "tph")
{
 if(!ereg("^[0-9)( -]{7,20}(([xX]|(ext)|(ext))?[ -]?[0-9]{1,7})?$",$valeur) )
  {
      $mauvaisFormat[$clé] = "mauvais";
  }
 }
}// Fin du forech pour $_POST
/* En cas d'erreur, afficher un message et réafficher le formulaire*/
if (@sizeof($champVide) > 0 or @sizeof($mauvaisFormat) > 0)
{
  if (@sizeof($cahmpVide) > 0)
  {
 
      /* Message signalant qu'il manque quelque chose */
      echo "Vous avez omis de remplir un ou plusieurs champ obligatoires.
               Vous devez saisir :
";
      /* Afficje la liste des imformation Absente */
      foreach($champVide as $clé => $valeur)
      {
         echo "&nbsp;&nbsp;&nbsp;{$étiquuettes[$clé]}
";
      }
   {
   if (@sizeof($mauvaisFormat) > 0)
   {
       /* Affiche un message signalant des imformations invalides */
       echo "OUn ou plusieurs champs contienne une information
                 incorrecte. Corrigeze les champ :
";
       /* Affiche la liste des imformations invalides */
       foreach($mauvaisFormat as $clé => $valeur)
       {
          echo "&nbsp;&nbsp;&nbsp;{$étiquettes[$clé]}
";
       }
    }
    /* Réaffiche le formulaire */
    echo "<hr>
      <form action='sauveTelephone.php' method='POST'>
      <center>
            ----
{$étiquette['prenon']}:,
        ,
     
      ----
{$étiquette['nom']}
       , </td>
     
      ----
{$étiquette['tph']}
       , </td>
     
     

     
      </form>
      </center>";
    exit();
   
     $user="root";
     $host="localhost";
     $password="";
     $database="bdd";
     $connection = mysql_connect($host,$user,$password)
           or die ($message);
     $db = mysql_select_db($database, $connection)
           or die ("$message");
          
     $rq = "INSERT INTO Membre (nom,prenon,tph)
                   VALUES ('$nom','$prenon','$tph')";
     $result = mysql_query($rq)
           or dir ("Exécution de la requéte impossible");
     echo "Nouveau membre ajouté a la base de donnée

";
     }
?>


</html>

6 réponses

davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
11 juil. 2006 à 12:59
Hello

il manque le + important : le message d'erreur.

à mon avis tu as oublié de fermer une accolade ou un truc du genre
tu as une accolade ouverte avant ton deuxieme "if" (à mon avis ça devrait etre une fermée).

ps: mysq_query(...) or die (et pas "dir" comme écrit 3 lignes avant la fin).
-------------------------------------
 Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
0
romain14g59 Messages postés 74 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 26 mai 2011
11 juil. 2006 à 13:05
Non il n'y a pas de probléme pour l'acolade parce que si je la change de sens il m'affiche une erreur sur cette ligne.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
11 juil. 2006 à 13:10
Aucun rapport avec le sens de l'accolade...il t'a dit que tu avais sans doute oublié une accolade, c'est différent!
Indique nous quelle erreur tu as!
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
11 juil. 2006 à 13:14
Moi j'ai déjà repéré une mauvais accolade...un or dir ()...et mieux vaut éviter les accents dans les variables.
Mauvaise accolade :
if (@sizeof($cahmpVide) > 0)
  {
 
      /* Message signalant qu'il manque quelque chose */
      echo "Vous avez omis de remplir un ou plusieurs champ obligatoires.
               Vous devez saisir :
";
      /* Afficje la liste des imformation Absente */
      foreach($champVide as $clé => $valeur)
      {
         echo "&nbsp;&nbsp;&nbsp;{$étiquuettes[$clé]}
";
      }
   {
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
romain14g59 Messages postés 74 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 26 mai 2011
11 juil. 2006 à 13:15
Voila l'erreur. (derniére ligne du script)
Parse error: parse error in c:\program files\easyphp1-8\www\sauvetelephone.php on line 112
0
xactise Messages postés 507 Date d'inscription mardi 18 février 2003 Statut Membre Dernière intervention 22 juin 2012 2
11 juil. 2006 à 17:01
20 accolade ouverte
18 fermer
voila bonne recherche ;)
0
Rejoignez-nous