Rechercher : dans
Par :

Pb de checkbox en php

Dernière réponse le 30 oct 2007 à 17:31:27 Tony, le 15 jun 2005 à 09:31:47 
 Signaler ce message aux modérateurs

Bonjour j'ai un petit probleme sur un formulaire d'envoie de mail. Voila il y a 4 case a cocher et quand un d'entre elle (ou les 4) ne sont pas cocher j'obtiens un message d'erreur (ou 4) qui est celui-ci : Notice: Undefined index: CA in c:\documents and settings\tony\bureau\monsite\sendcontact3.php on line 52
je joins mon code

page contact.php

<body>
<form action="sendcontact3.php" method="post">
  <pre>Nom de la Société* : <input type="text" name="Societe"> 
Nom du Contact* :    <input type="text" name="Contact"> 
Poste :   	     <input type="text" name="Poste"> 

Adresse :    	     <input type="text" name="Adresse"> 
Ville :              <input type="text" name="Ville"> 
Code Postal :        <input type="text" name="CP">   

Tél.* :   	     <input type="text" name="Tel"> 
Mail :   	     <input type="text" name="Mail">


<input type="checkbox" name="CA" value="Controle d accès"> Controle d'accès   			<input type="checkbox" name="VS" value="Vidéosurveillance"> Vidéosurveillance    
<input type="checkbox" name="GTB" value="Gestion technique de batiment"> Gestion technique de batiment     	<input type="checkbox" name="WH" value="Wifi Hotellier"> Wifi Hotellier    </pre>
  <p>Commentaire :</p>
  <p>	    
  <textarea name="Commentaire" cols="65" rows="5"></textarea>
    
  </p>
  <div align="center">
    <input type="submit" name="Envoyer" value="Envoyer">
  </div>
</form>
</body>

page sendcontact3.php

<?php
if(isset($_POST['Societe']))      $nom=$_POST['Societe'];
else      $nom="";

if(isset($_POST['Contact']))      $contact=$_POST['Contact'];
else      $contact="";

if(isset($_POST['Tel']))      $tel=$_POST['Tel'];
else      $tel="";

if(empty($nom) OR empty($contact) OR empty($tel)) 
    { 
?>
<body>    
Champs accompagné d'une * obligatoire : 
<form action="sendcontact3.php" method="post">
  <pre>Nom de la Société* : <input type="text" name="Societe" value="<?php  print ($_POST["Societe"]); ?>"> 
Nom du Contact* :    <input type="text" name="Contact"  value="<?php  print ($_POST["Contact"]); ?>"> 
Poste :   	     <input type="text" name="Poste" value="<?php  print ($_POST["Poste"]); ?>"> 

Adresse :    	     <input type="text" name="Adresse" value="<?php  print ($_POST["Adresse"]); ?>"> 
Ville :              <input type="text" name="Ville" value="<?php  print ($_POST["Ville"]); ?>"> 
Code Postal :        <input type="text" name="CP" <?php  print ($_POST["CP"]); ?>>   

Tél.* :   	     <input type="text" name="Tel" value="<?php  print ($_POST["Tel"]); ?>"> 
Mail :   	     <input type="text" name="Mail" value="<?php  print ($_POST["Mail"]); ?>">


<input type="checkbox" name="CA" value="<?php  ($_POST["CA"]); ?>"/> Controle d'accès   			<input type="checkbox" name="VS" value="<?php  ($_POST["VS"]);?>"/> Vidéosurveillance    
<input type="checkbox" name="GTB" value="<?php  ($_POST["GTB"]); ?>"/> Gestion technique de batiment     	<input type="checkbox" name="WH" value="<?php  ($_POST["WH"]); ?>"/> Wifi Hotellier    </pre>
  <p>Commentaire :</p>
  <p>	    
  <textarea name="Commentaire" cols="65" rows="5"><?php  print ($_POST["Commentaire"]); ?></textarea>
    
  </p>
  <div align="center">
    <input type="submit" name="Envoyer" value="Envoyer">
  </div>
</form>
<?php 
}
			else 
				{
				define('SUJET','Demande SPGM'); 
	define('ADRESSE_WEBMASTER','g.tony@wanadoo.fr'); 
	$message = "Societe : " .$_POST['Societe']. "\n\nContact : ".$_POST['Contact']."\n\nPoste : ".$_POST['Poste']."\n\nAdresse : ".$_POST['Adresse']. "\n\nVille : ".$_POST['Ville']."\n\nCode Postal : ".$_POST['CP']. "\n\nTel : ".$_POST['Tel']."\n\nMail : ".$_POST['Mail']."\n\nIntérêt : ".$_POST['CA']."\n\n".$_POST['GTB']."\n\n".$_POST['VS']."\n\n".$_POST['WH']."\n\nCommentaire : ".$_POST['Commentaire']; 
	 mail(ADRESSE_WEBMASTER, SUJET, $message);
				echo "Message Bien envoye ";
				}

?>

</body>


Voila si quelqu'un peut m'aider je le remercie car ceci est important pour moi (c'est pour mon stage)

merci a+

et desoler pour la longueur du code
Configuration: win 2000nt, easyphp 1.8

Meilleures réponses pour « Pb de checkbox en php » dans :
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';' VoirCette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple :
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
Télécharger PHP FTP Synchronizer VoirLa mise à jour de site web est aussi complexe que sa conception. Alors il faut utiliser le bon outil avec les bon paramètres et une bonne connaissance de programmation pour mettre à jour un site. PHP FTP Synchronizer est une application vous...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...
PHP - Les fichiers VoirLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier...
PHP - Structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0 ou 1 (le PHP associe le mot clé true à 1...

1

Timon1102, le 15 jun 2005 à 09:58:51

Salut, c'est juste que quand une case n'est pas coché, elle n'est pas passé au script de traitement. ex: si CA n'est pas coché, isset($_POST['CA']) return false
@+

Répondre à Timon1102

2

Tony, le 15 jun 2005 à 10:01:27

Ok merci mais pourrait tu me dire comment éviter ce message d'erreur qui apparait sur ma page merci a+

Répondre à Tony

3

Timon1102, le 15 jun 2005 à 10:14:43

Et bien avant de te referrer a une checkbox, verifie si elle est definie, avec isset();, et ne fait pas le traitement si elle n'est pas definie

Répondre à Timon1102

4

Tony, le 15 jun 2005 à 14:54:14

Je te remercie ca a fonctionné c cool a+

Répondre à Tony

5

 rodal, le 30 oct 2007 à 17:31:27

Bonjour,

J'ai un problème avec les boutons radios : je n'arrive pas à les contrôler en php (vérifier que l'utilisateur ai coché l'une des trois réponses : pour, contre ou sans opinion). Il s'agit de mon mémoire de recherche et je suis si débutant en php que je ne parviens pas encore à bien appliquer les solutions des problèmes des autres au mien!
Sachant que j'ai 3 fichiers liés (html, css et php), voici un exemple détaillé qui fini par la formulation d'une question en rapport avec ma difficulté.

Un bout de code du questionaire en html:

<td> - Vous êtes :</td>
<td><select name="Sexe">
<option value="">---</option>
<option value="un homme">un homme</option>
<option value="une femme">une femme</option>
</select></td>

L'équivalent en php:

$Sexe = $_POST['Sexe'];
$Etude = $_POST['Etude'];

if(empty($Sexe))
{
echo(<b><i>Vous êtes...</i></b> EST VIDE.<br/>
<b>Veuillez retourner au questionnaire!</b></center>");
exit();
}

La réponse de Easyphp si l'utilisateur n'a pas validé:
(à ce niveau, tout se passe comme je le souhaite)

Vous êtes... EST VIDE.
Veuillez retourner au questionnaire!


La suite du code en html (les fameux bontons radios):

<!-- Les lettres alphabétiques name="A", name="B",... représentent les différentes propositions -->

<th>Quelle position pourriez-vous prendre face aux propositions ci-dessous ?</th> <th>Pour</th> <th>Contre</th> <th>Sans <br>opinion</th> </tr>

<tr>
<td>Encourager ... ne résout pas les problèmes...</td> <td> <input type="radio" name="A" value="Pour" id="Pour"></td>
<td> <input type="radio" name="A" value="Contre" id="Contre"> </td> <td><input type="radio" name="A" value="Sans opinion" id="Sans opinion"></td> </td></tr>
<tr>
<td>Le développement...</td> <td> <input type="radio" name="B" value="Pour" id="Pour"></td>
<td> <input type="radio" name="B" value="Contre" id="Contre"> </td> <td><input type="radio" name="B" value="Sans opinion" id="Sans opinion"></td> </td></tr>

Léquivalent en php:

$A = $_POST['A'];
if(empty($A))
{
echo(<b><i>Encourager ... ne résout pas les problèmes...</i></b> EST VIDE.<br/>
<b>Veuillez retourner au questionnaire!</b></center>");
exit();


$B = $_POST['B'];
if(empty($B))
{
echo(<b><i>Le développement...</i></b> EST VIDE.<br/>
<b>Veuillez retourner au questionnaire!</b></center>");
exit();

La réponse de Easyphp...:

Notice: Undefined index: A in c:\program files\easyphp1-8\www\op\reponse.php on line 120

Encourager ... ne résout pas les problèmes... EST VIDE.
Veuillez retourner au questionnaire!

Le problème que je n'arrive pas à résoudre est:
Comment faire disparaître uniquement cette ligne d'erreur (j'ai fait tout ce que j'ai pu
sans succès)?

Merci bien,

Répondre à rodal
Collection CommentÇaMarche.net