Soucis champs vides formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Soucis champs vides formulaire

Re: Soucis champs vides formulaire

par xTG » 25 janv. 2012, 10:00

A remplacer par cette syntaxe pour chaque ligne devant incorporer une variable :

Code : Tout sélectionner

<PARAM name='username' value='Id-p ". $pseudo ."'>
Ce sont des doubles quotes " et non deux simples quotes ''.

Re: Soucis champs vides formulaire

par Zorro35 » 25 janv. 2012, 00:06

Merci infiniment.
Je vais maintenant travailler tout cela pour que chacun des champs soient remplis.

EDIT : J'ai parler trop tôt. Dans la case pseudo de l'applet java avec votre modification, ça affiche carrément le php echo en php.
Je pense que cela vient des ' '.
Mais n'étant pas sûr..
Cordialement,

Re: Soucis champs vides formulaire

par lidwinn » 24 janv. 2012, 23:55

Et si tu essaies
<?php
$pseudo = $_POST['pseudo'];
$passe = $_POST['passe'];
$age = $_POST['age'];
$region = $_POST['region'];
$sexe = $_POST['sexe'];

echo
"<head>
    <title>Tchat</title>
</head>
<body>";

if(empty($pseudo))
{
        echo "Indiquez un pseudonyme";
}
else
{
	echo

	"<APPLET name='myname' code='EIRC.class' width='100%' height='96%'>
			<PARAM name='archive' value='EIRC.jar,EIRC-cfg.jar'>
					<PARAM name='cabbase' value='EIRC.cab,EIRC-cfg.cab'>
			<PARAM name='server' value='irc.domaine.tld'>
			<PARAM name='port' value='6667'>
			<PARAM name='irc_pass' value=''>
			<PARAM name='font_name' value='Helvetica'>
			<PARAM name='font_size' value='12'>
			<PARAM name='language' value=''>
			<PARAM name='mainbg' value='#e2f8fa'>
			<PARAM name='mainfg' value='#000000'>
			<PARAM name='textbg' value='#FFFFFF'>
			<PARAM name='textfg' value='#000000'>
			<PARAM name='selbg' value='#FFFFFF'>
			<PARAM name='selfg' value='#000000'>
			<PARAM name='join' value='#Accueil'>
			<PARAM name='username' value='Id-<?php echo ''. $pseudo .'';?>'>
			<PARAM name='realname' value='<?php echo ''.$age.' '.$sexe.' '.$region.'';?>'>
			<PARAM name='nickname' value='<?php echo ''.$pseudo.'';?>'>
			<PARAM name='nicksrv_pass' value='<?php echo ''.$passe.'';?>'>
			<PARAM name='login' value='1'>
			<PARAM name='asl' value='1'>
			<PARAM name='spawn_frame' value='0'>
			<PARAM name='width' value='700'>
			<PARAM name='height' value='500'>
			<PARAM name='write_color' value='<?php echo ''.$TColor.'';?>'>
			<PARAM name='debug_traffic' value='0'>
			<PARAM name='boxmessage' value='Please wait while loading chat box...'>
			<PARAM name='boxbgcolor' value='blue'>
			<PARAM name='boxfgcolor' value='black'>
			<PARAM name='progressbar' value='true'>
			<PARAM name='progresscolor' value='red'>
			<B>You must enable or <A HREF='http://www.java.com'>setup Java</A> in your web browser !</B>
	</APPLET>";
}

echo
   "</body>";
?>

Re: Soucis champs vides formulaire

par Zorro35 » 24 janv. 2012, 23:32

Mon problème se concentre désormais ici :
<?php
$pseudo = $_POST['pseudo'];
$passe = $_POST['passe'];
$age = $_POST['age'];
$region = $_POST['region'];
$sexe = $_POST['sexe'];
if(empty($pseudo))
{
echo 'Indiquez un pseudonyme';
}
else
{
echo '<html>
<head>
<title>Tchat</title>
</head>
<body>
<APPLET name="myname" code="EIRC.class" width="100%" height="96%">
    <PARAM name="archive" value="EIRC.jar,EIRC-cfg.jar">
	<PARAM name="cabbase" value="EIRC.cab,EIRC-cfg.cab">
    <PARAM name="server" value="irc.domaine.tld">
    <PARAM name="port" value="6667">
    <PARAM name="irc_pass" value="">
    <PARAM name="font_name" value="Helvetica">
    <PARAM name="font_size" value="12">
    <PARAM name="language" value="">
    <PARAM name="mainbg" value="#e2f8fa">
    <PARAM name="mainfg" value="#000000">
    <PARAM name="textbg" value="#FFFFFF">
    <PARAM name="textfg" value="#000000">
    <PARAM name="selbg" value="#FFFFFF">
    <PARAM name="selfg" value="#000000">
    <PARAM name="join" value="#Accueil">
    <PARAM name="username" value="Id-<?php echo ''. $pseudo .'';?>">
    <PARAM name="realname" value="<?php echo ''.$age.' '.$sexe.' '.$region.'';?>">
    <PARAM name="nickname" value="<?php echo ''.$pseudo.'';?>">
    <PARAM name="nicksrv_pass" value="<?php echo ''.$passe.'';?>">
    <PARAM name="login" value="1">
    <PARAM name="asl" value="1">
    <PARAM name="spawn_frame" value="0">
    <PARAM name="width" value="700">
    <PARAM name="height" value="500">
    <PARAM name="write_color" value="<?php echo ''.$TColor.'';?>">
    <PARAM name="debug_traffic" value="0">
    <PARAM name="boxmessage" value="Please wait while loading chat box...">
    <PARAM name="boxbgcolor" value="blue">
    <PARAM name="boxfgcolor" value="black">
    <PARAM name="progressbar" value="true">
    <PARAM name="progresscolor" value="red">
    <B>You must enable or <A HREF="http://www.java.com">setup Java</A> in your web browser !</B>
</APPLET>
<body>
</html>';
}
?>
Je souhaiterais que si un pseudo est entré, alors il se connecte à l'applet. Si pas de pseudo, un message d'erreur. Actuellement ça m'affiche une page blanche tel que c'est. Et lors du CTRL + U pas de code source.
Merci

Re: Soucis champs vides formulaire

par Zorro35 » 24 janv. 2012, 20:56

Si ma condition est remplie, il se connecte. Si le pseudo n'est pas indiqué, une erreur apparaît.

J'ai donc fais ça :
<?php
$pseudo = $_POST['pseudo'];
$passe = $_POST['passe'];
$age = $_POST['age'];
$region = $_POST['region'];
$sexe = $_POST['sexe'];
// Si pseudo est vide
if (!$pseudo) 
{
echo 'Indiquez un pseudonyme';
}
else
{
//Sinon je salut le pseudo
echo 'Salut '.$pseudo.' :p';
}
?>
Maintenant mon souhait est qu'à cette page, je puisse inclure du code html, je ne sais pas trop comment faire.
Merci encore pour votre aide.

Re: Soucis champs vides formulaire

par lidwinn » 24 janv. 2012, 20:43

Salut !
Il y a beaucoup de } qui ferment mais pas autant qui ouvrent {.
si ta condition est remplie que dois-tu faire ?,
<?
$pseudo = $_POST['pseudo'];
$passe = $_POST['passe'];
$age = $_POST['age'];
$region = $_POST['region'];
$sexe = $_POST['sexe'];
if(isset($_POST['tchatcher']) )      /** condition **/
{
if (isset($_POST['pseudo']) && !empty($_POST['pseudo'])) /** autre condition ... et puis quoi ?? **/
} else {
echo '<p>Indiquez un pseudo</p>';
}
?>

cela ne serait-il pas plus simple avec
<?
$pseudo = $_POST['pseudo'];
$passe = $_POST['passe'];
$age = $_POST['age'];
$region = $_POST['region'];
$sexe = $_POST['sexe'];
if (isset($_POST['tchatcher']))
{
  if (!$pseudo)
  {
    echo '<p>Indiquez un pseudo</p>';
  }
  else 
  {
    /** truc à faire *//
  }
}
?>

Re: Soucis champs vides formulaire

par Zorro35 » 24 janv. 2012, 20:04

Merci pour ta réponse.
Je me trouve toujours avec la page blanche. Pourtant j'indique le code php avant la première balise
<html>
Code page php :
<?php
$pseudo = ''.$_POST['pseudo'].'';
$passe = ''.$_POST['passe'].'';
$age = ''.$_POST['age'].'';
$region = ''.$_POST['region'].'';
$sexe = ''.$_POST['sexe'].'';
if(isset($_POST['tchatcher']))
{
if (isset($_POST['pseudo']) && !empty($_POST['pseudo']))
} else {
echo '<p>Indiquez un pseudo</p>';
}
}
}
?>

Re: Soucis champs vides formulaire

par moogli » 24 janv. 2012, 19:15

Salut,
Dans le second if tu n'a pas besoins du isset car cette condition est déjà vérifier par le 1er.

Par contre la condition devrais être if (isset($_POST['pseudo']) && !empty($_POST['pseudo']))
Pou être certain de pas avoir de espace tu peux aussi utiliser la fonction trim pour enlever tous les espaces de début et fin de chaîne.

En dehors de ça ton code semble correct.


@+

Soucis champs vides formulaire

par Zorro35 » 24 janv. 2012, 19:04

Bonsoir,
Je débute en PHP/mySQL et je rencontre un problème.

Voici mon formulaire en html :
<form action="#" method="post"> 
<p>Pseudo</p>
<input type="text" name="pseudo" size="20" maxlength="20" value="" />
<br />
<p>Mot de passe</p>
<input type="password" name="passe" size="20" maxlength="15" value="" />
<br />
<p>Âge</p>
<select name="age">
<option selected="selected" value="0">Votre âge</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
<option value="32">32</option>
<option value="33">33</option>
<option value="34">34</option>
<option value="35">35</option>
<option value="36">36</option>
<option value="37">37</option>
<option value="38">38</option>
<option value="39">39</option>
<option value="40">40</option>
<option value="41">41</option>
<option value="42">42</option>
<option value="43">43</option>
<option value="44">44</option>
<option value="45">45</option>
<option value="46">46</option>
<option value="47">47</option>
<option value="48">48</option>
<option value="49">49</option>
<option value="50">50</option>
<option value="51">51</option>
<option value="52">52</option>
<option value="53">53</option>
<option value="54">54</option>
<option value="55">55</option>
<option value="56">56</option>
<option value="57">57</option>
<option value="58">58</option>
<option value="59">59</option>
<option value="60">60</option>
<option value="61">61</option>
<option value="62">62</option>
<option value="63">63</option>
<option value="64">64</option>
<option value="65">65</option>
<option value="66">66</option>
<option value="67">67</option>
<option value="68">68</option>
<option value="69">69</option>
<option value="70">70</option>
<option value="71">71</option>
<option value="72">72</option>
<option value="73">73</option>
<option value="74">74</option>
<option value="75">75</option>
<option value="76">76</option>
<option value="77">77</option>
<option value="78">78</option>
<option value="79">79</option>
<option value="80">80</option>
<option value="81">81</option>
<option value="82">82</option>
<option value="83">83</option>
<option value="84">84</option>
<option value="85">85</option>
<option value="87">87</option>
<option value="88">88</option>
<option value="89">89</option>
<option value="90">90</option>
<option value="91">91</option>
<option value="92">92</option>
<option value="93">93</option>
<option value="94">94</option>
<option value="95">95</option>
<option value="96">96</option>
<option value="97">97</option>
<option value="98">98</option>
<option value="99">99</option>
</select>
<br />
<p>Ta Région</p>
<input type="input" name="region" size="20" maxlength="35" value="" />
<br />
<p>Mec</p>
<input type="checkbox" name="sexe" value="M" />
<p>Nana</p>
<input type="checkbox" name="sexe" value="F" />
<br /><br />
<input type="submit" name="tchatcher" value="Tchatcher" />
</form> 
Côté PHP (actuellement) :
<?php
$pseudo = ''.$_POST['pseudo'].'';
$passe = ''.$_POST['passe'].'';
$age = ''.$_POST['age'].'';
$region = ''.$_POST['region'].'';
$sexe = ''.$_POST['sexe'].'';
if(isset($_POST['tchatcher']))
{
if (isset($_POST['pseudo']) && $_POST['pseudo'] != "" )
} else {
echo '<p>Veuillez remplir un pseudo svp</p>';
}
}
}
?>
Les premières variables sont là pour définirent les champs. Pour ensuite que le mec qui est remplit le champ pseudo bah ce soit le pseudo qu'il ait écrit qui soit mis. Jusqu'à la tout fonctionne.

La ou j'ai du mal c'est au moment que si le champ "pseudo" est vide, je veux lui renvoyer une erreur.
J'ai essayer ceci :
if(isset($_POST['tchatcher']))
{
if (isset($_POST['pseudo']) && $_POST['pseudo'] != "" )
} else {
echo '<p>Veuillez remplir un pseudo svp</p>';
}
}
}
En quelques mots, je voudrais que quand l'utilisateur clique sur "tchatcher", si le champ "pseudo" n'est pas remplit, ça il ait un message d'erreur lui indiquant :

Veuillez remplir un pseudo svp.

Bien sûr étant débutant, je suis à l'écoute de vos conseils et de votre aide afin de m'améliorer.
Je vous remercie par avance.
Cordialement,