8795 sujets

Développement web côté serveur, CMS

Bonjour à vous tous,

JJe tente de résoudre le problème suivant, mais en vain:
Lorsque l'on clique sur le formulaire ( dans la cellule), le curseur se déplce de quelques pixels sur la droite, voyez par vous même.
www.quipa.ch/vos-contacts.php

Je ne sais pas si cela vient de la css...
qui à une idée?
voici le code PHP

<?php
//Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
//Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
//Ne rien modifier ci-dessous si vous n'êtes pas certain de ce que vous faites !
if($submit){
//Formatage des entrées
$f_1=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_1)));
$f_2=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_2)));
$f_3=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_3)));
$f_4=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_4)));
$f_5=trim(eregi_replace("[^0-9\ +]", "", $f_5));
$f_6=strip_tags(trim($f_6));
//Verification des champs
if(!$erreur){
//Création du message
$titre="............ ";
$tete="From:............\n";
$corps.="Nom : ".$f_1."\n";
$corps.="Prénom : ".$f_2."\n";
$corps.="Adresse : ".$f_3."\n";
$corps.="Ville : ".$f_4."\n";
$corps.="Téléphone : ".$f_5."\n";
$corps.="Mail : ".$f_6."\n";
$corps.="Message : ".$f_7."\n";
if(mail("garden@quipa.ch", $titre, stripslashes($corps), $tete)){
$ok_mail="true";
header('Location: index.html');
}else{
$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><!-- InstanceBegin template="/Templates/index.dwt" codeOutsideHTMLIsLocked="false" -->
  <head>
<script type="text/javascript"  src="script/niceforms.js" ></script>
   
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <!-- InstanceBeginEditable name="doctitle" -->
    <title>
     ....................
    </title>
    <!-- InstanceEndEditable -->
    <link rel="stylesheet" media="screen" type="text/css" title="default" href="styles/default.css" />
    <link rel="stylesheet" type="text/css" media="print" href="styles/print.css" />
    <!-- InstanceBeginEditable name="head" -->
    <!-- InstanceEndEditable -->
  </head>
  <body >
    <div id="global">
      <!-- global-->
      
      <!-- fin logo-->
      <div id="photographie">
        <!-- photographie-->
        <!-- InstanceBeginEditable name="photographie" -->
        <!-- InstanceEndEditable -->
      </div>
      <!--  fin photographie-->
      <!-- InstanceBeginEditable name="menu" -->      <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="sous-menu" -->
<div id="sousmenu">
        <!-- sousmenu-->
      </div>
      <!-- InstanceEndEditable -->
      <!-- fin sousmenu-->
      <!-- InstanceBeginEditable name="contenu" -->
      <div class="content petit-contenu">
        <!-- contenu-->
       
        <div style="float: left; width: 220px; ">
          <p class="retrait">
            <strong>Formulaire</strong>
          </p>
          <form action='<?echo$PHP_SELF?>' method='post'>
            <div>
              <label for="nom">
                NOM:
              </label>
              <br />
              <input type="text" id="nom"  class="textinput" maxlength="35"  style='width:360 <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>
              '/> 
              <label for="prenom">
                PRENOM:
              </label>
              <br />
              <input type="text" id="prenom"  class="textinput" maxlength="35" style='width:360 <?if($errf_2==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_2' value='<?echo stripslashes($f_2);?>
              ' /> 
              <label for="adresse">
                ADRESSE:
              </label>
              <br />
              <input type="text" id="adresse"  class="textinput" maxlength="35" style='width:200 <?if($errf_3==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_3' value='<?echo stripslashes($f_3);?>
              '  /> 
              <label for="ville">
                VILLE:
              </label>
              <br />
              <input type="text" id="ville"  class="textinput" maxlength="35" style='width:200 <?if($errf_4==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_4' value='<?echo stripslashes($f_4);?>
              '  /> 
              <label for="telephone">
                TEL:
              </label>
              <br />
              <input type="text" id="telephone"  class="textinput" maxlength="35" style='width:200 <?if($errf_5==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_5' value='<?echo stripslashes($f_5);?>
              '/> 
              <label for="mail">
                MAIL:
              </label>
              <br />
              <input type="text" id="mail"  class="textinput" maxlength="35" style='width:200 <?if($errf_6==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_6' value='<?echo stripslashes($f_6);?>
              '/> 
              <br />
              <label for="textareainput">
                MESSAGE:
              </label>
              <br />
<textarea id="textareainput"  class="textarea" style='width:360 <?if($errf_7==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_7' rows='30' cols='40'><?echo$f_7?> </textarea>
              <br />
              <br />
              <input type="submit" value="Envoyer" class="buttonSubmit" name='submit' />
              <div id="stylesheetTest">
              </div>
            </div>
          </form>
          <p class="ancre">
            <a href="#">
              <img class="image" onmouseover="this.src='images/direction_rol.gif'" title="haut de la page" onmouseout="this.src='images/direction.gif'" alt="retour menu" src="images/direction.gif" /></a>
          </p>
        </div>
      </div>
      <!-- InstanceEndEditable -->
      <p class="clr">
      </p>
      <!-- fin contenu-->
      
    </div>
    <!-- fin global-->
  </body>
<!-- InstanceEnd --></html>



Merci de votre aide
Loic
Modifié par garden (24 Sep 2005 - 09:17)
Salut loic,

Je commence juste par une petite remarque niveau css. Je vois que tu utilises la propriété style. Le fond et la forme ne sont donc pas séparés. La propriété style est à utiliser seulement si tu ne peux pas mettre en forme ta balise grâce aux feuille de style. Dans ton cas, ce que tu peux faire c'est changer de classe en fonction du résultat du test de ton formulaire.

Par exemple :

<?php
 $classe = "normal";
 //tu effectues tes test
 //si il y a des erreurs
 $class = "erreur";
?>

 <form ...>
  <input type="text" class=<? echo $class; ?> name="..." value="" />
 </from>


Sinon, pour ton problème de décalage de qq pixels, je te conseille d'initialiser tes variables php du genre

<?php
 $f_1 = $f_2 = .... = $f_7 = "";
?>


et au lieu de mettre if ($submit), utilise plutot :

if(isset($_POST["submit"] && $_POST["submit"] == "Envoyer")


sinon, tu te retrouve avec une variable ($submit) qui n'est pas initialisée et qui n'a surtout aucune valeur.

Voila, en ésperant t'avoir aidé Smiley cligne
Préfère toujours utiliser <?php que <? sinon ton script pourrait ne pas marcher sur tous les serveurs.

pour le textarea,
[code]
0'><?echo$f_7?> </textarea>
[code]
ton espace est la Smiley cligne

pour les autres suit la recommandation de ymhotepa

-- Aenario --
en regardant le code, il me semble que ton problème vient du fait que value n'est pas vide...

je m'explique...

tu présente la chose comme çà :


value='                        ' />


y'a des espaces dans la chaine...

alors qu'avec
value=""
il me semble que ton problème disparaitra...

il est imlportant de regarder la source une fois que le serveur et le navigateur ont interprété ton code....
Modifié par ernstein (12 Sep 2005 - 12:46)
s'il utilise niceforms, il ne va pas pouvoir faire exactement ce qu'il veut en matière de js, mais pour la css, il doit avoir carte blanche il me semble.