Notice : undefined variable : .....

Eléphanteau du PHP | 23 Messages

28 avr. 2010, 16:33

Bonjour

est ce quelqu'un pourrait m'aider

avec cl'envoie de ce formulaire :
<?php 


$msg = "Constat        : $constat\n";
$msg = "Recouvrement   :\t$recouvrement\n";
$msg = "Conseil        :\t$conseil\n";
$msg = "Procédure      :\t$procedure\n";
$msg = "Autre          :\t$autre\n";
$msg = "Message        :\t$message\n";
$msg = "Genre          :\t$genre\n";
$msg = "Nom            :\t$nom\n";
$msg = "Prénom         :\t$prenom\n";
$msg = "Contact        :\t$contact\n";
$msg = "Téléphone      :\t$tel\n";
$msg = "Fax            :\t$fax\n";
$msg = "Adresse        :\t$adresse\n";
$msg = "Ville          :\t$ville\n";
$msg = "Code Postal     :\t$cdpostal\n";
car j'obtient des Notice de variable non définie !
otice: Undefined variable: constat in /usr/home/v1013/html/envoi.php on line 6

Notice: Undefined variable: recouvrement in /usr/home/v1013/html/envoi.php on line 7

Notice: Undefined variable: conseil in /usr/home/v1013/html/envoi.php on line 8

Notice: Undefined variable: procedure in /usr/home/v1013/html/envoi.php on line 9

Notice: Undefined variable: autre in /usr/home/v1013/html/envoi.php on line 10

Notice: Undefined variable: message in /usr/home/v1013/html/envoi.php on line 11

Notice: Undefined variable: genre in /usr/home/v1013/html/envoi.php on line 12

Notice: Undefined variable: nom in /usr/home/v1013/html/envoi.php on line 13

Notice: Undefined variable: prenom in /usr/home/v1013/html/envoi.php on line 14

Notice: Undefined variable: contact in /usr/home/v1013/html/envoi.php on line 15

Notice: Undefined variable: tel in /usr/home/v1013/html/envoi.php on line 16

Notice: Undefined variable: fax in /usr/home/v1013/html/envoi.php on line 17

Notice: Undefined variable: adresse in /usr/home/v1013/html/envoi.php on line 18

Notice: Undefined variable: ville in /usr/home/v1013/html/envoi.php on line 19

Notice: Undefined variable: cdpostal in /usr/home/v1013/html/envoi.php on line 20

Notice: Undefined variable: email in /usr/home/v1013/html/envoi.php on line 26

Notice: Undefined variable: nom in /usr/home/v1013/html/envoi.php on line 30
merci d'avance pour votre aide

tounse

Avatar du membre
ViPHP
ViPHP | 3008 Messages

28 avr. 2010, 16:39

Ton erreur est clairement indiquée : variables non définies.

$constat et compagnie ne sont déclarées nulle part.

Eléphanteau du PHP | 23 Messages

28 avr. 2010, 17:08

merci

pourrais tu me donner un exemple pour déclarer ces variables

elles proviennent d'un formulaire avec method POST

merci pour ton aide

ViPHP
ViPHP | 5462 Messages

28 avr. 2010, 17:16

merci

pourrais tu me donner un exemple pour déclarer ces variables

elles proviennent d'un formulaire avec method POST

merci pour ton aide

a la place $constat faut faire $_POST['constat'];

sinon tu peu utiliser extract

Invité
Invité n'ayant pas de compte PHPfrance

28 avr. 2010, 17:43

merci

ca fonctionne presque .....

dans le formulaire j'ai : <input type="checkbox" name="conseil" id="conseil">

quand celle ci n'est pas coché, cela fait :

Notice: Undefined index: conseil in /usr/home/v1013/html/envoi.php on line 9

comment eviter cela


merci encore et merci d'avance

ViPHP
ViPHP | 5462 Messages

28 avr. 2010, 17:57

faut faire une condition avec isset

Eléphant du PHP | 109 Messages

28 avr. 2010, 18:18

Bonjour,

Le souci de ton premier script est, comme dit ci-dessus que tes variables ne sont pas déclarées.
Pour déclarer une variable, tu as plusieurs solutions. L'une d'entre elle consiste à faire ceci :
$maVariable = // La valeur que tu veux donner à ta variable.
Tu présises ensuite que tu as un formulaire en POST. Tu peux donc faire quelque chose comme ceci :
$maVariable = $_POST['nomDuChamp'];
      // Code à adapter selon tes besoins naturellement.
Tu précises ensuite que parmi toutes ces variables, tu as un input de type checkbox.
Comme l'a dit stealth35, tu peux utiliser la fonction isset().
Celle-ci test si la variable existe. Voici un exemple :
<?php
if(isset($_POST['monChampCheckbox'])) // Si la variable existe (=si la case a été cochée)
{
       $checkbox = true; // On met true
}
else // Sinon
{
       $checkbox = false; // On met false
}
?>
Je viens de te donner un explication succincte, rien ne vaut un apprentissage par toi même.
Par conséquent, je te conseille fortement de suivre quelques liens qui vont suivre : En tous les cas, je te souhaite une bonne continuation ;)
ANSI <font> <font> <font> <li> <p> <title> Mar I/O .NET

Invité
Invité n'ayant pas de compte PHPfrance

29 avr. 2010, 10:31

Bonjour

sinbert, je te remercie

cdt