Création
d'entreprise
Posez votre question Signaler

PHP : undefined variable

babyann - Dernière réponse le 30 janv. 2008 à 08:49
bonsoir !
voici mon soucis, et malgré toute la documentation mise à ma disposition, je ne trouve pas de solution...

Voici une premiere page d'exercice, et là j'obtiens le résultat attendu :

<html>
<head><basefont face="arial"></head>
<body>
<p>quel est ton prenom ?</p>
<?php
//definition de la variable
$reponse='zoe';
//affichage de la reponse
echo "<p>bonjour <i>$reponse</i></p>";
?>
</body>
</html>

exercice suivant :
Voici le script de la page question.htm

<html>
<head><basefont face="arial"></head>
<body>
<form method=post" action="reponse.php">
<p>quel est ton prenom ?
<INPUT size=40 name=reponse></p>
<INPUT type=submit value=VALIDER name=submit>
</body>
</html>

et le script de la page reponse.php :

<html>
<head><basefont face="arial"></head>
<body>
<p>bonjour</p>
<?php
//affichage de la reponse
echo "<p><i>$reponse</i></p>";
?>
</body>
</html>

mais un message d'erreur suivant apparait lors de l'affichage de la page reponse :

Notice: Undefined variable: reponse in c:\program files\easyphp1-8\www\reponse.php on line 7


Qui peut m'apporter un élément de réponse, je sèche et ça commence à me streeser, je ne trouve rien...

MERCI D'AVANCE !
Lire la suite 

PHP : undefined variable »

4 réponses
Réponse
+1
moins plus
Salut

1/ problème de syntaxe

<form method= post" action="reponse.php"> 


une guillemet en trop (ou une manquante !)
écris plutôt method =post ou method = "post"

2/dans lefichier reponse.php

Tu demande l'affichage d'une variable $reponse qui est inconnue !!!
même si elle à été tansmise par le formulaire, il faut la récupérer.
Une méthode serai d'ajouter une ligne de code sur ton fichier reponse.php qui pourrait être de la forme :

$reponse = $_POST['reponse'];

babyann - 26 janv. 2006 à 21:06
magnifique, ça marche !

mille merci Nabbla.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

je remonte un pu le topic, j'ai un probleme similaire, je voudrai mettre un lien sur une page web pour effectuer un telechargement direct, j'ai utiliser ce script PHP :

<?
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=$pdf");
readfile($pdf);
?>
Le recopier tel quel, ne rien changer.

Puis sur la page voulue, mettre un lien de la forme:
<a href="x.php?pdf=y.pdf">Télécharger le pdf</a>
Où y.pdf est le nom de votre document pdf.

meme j'obtient toutjours ce message d'erreur :

<br />
<b>Notice</b>: Undefined variable: jpg in <b>c:\program files\easyphp1-7\www\test\images\test.php</b> on line <b>3</b><br />
<br />
<b>Notice</b>: Undefined variable: jpg in <b>c:\program files\easyphp1-7\www\test\images\test.php</b> on line <b>4</b><br />

si quelqu'un peu m'aider je suis desseperer.....

j'ai aussi essayer cet exemple sans succes, meme probleme mais en plus j'ai la variable chemin qui n'est pas connue....

http://www.destrucsaweb.com/ressources/phpmyannu/goto_45.php
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour

Comme le message l'indique, l'erreur est à la ligne 3 du script test.php. Il parle d'une variable jpg et dans ce que tu montrees la variable est pdf. Alors le script que tu montres n'est sûrement pas le bon. Peux-tu montrer le script test.php ?

De plus, vu le style, il s'agit sûrement d'un vieux script prévu pour les serveurs avec register_globals actif. si ta variable provient d'une URL ou d'un formulaire GET il faut l'initialiser par $pdf=$_GET['pdf'] ou $jpj=$_GET['jpg']. Si elle vient d'un formulaire POST, il faut l'initialiser par $pdf=$_POST['pdf'] ou $jpj=$_POST['jpg']
Ajouter un commentaire
Ce document intitulé « PHP : undefined variable » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?