unexpected T_LNUMBER sur "mail.php3"

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 : unexpected T_LNUMBER sur "mail.php3"

par guNy- » 13 juil. 2005, 16:05

MERCIIIIIIIIIIIIIIIIIIIIIIIIIIII

pour la peine je vais devenir membre :)

j'ai finalement trouvé l'erreur, il manquait une parenthèse (misèèèère)

Merci encore à vous, Raptor et mere-teresa (merci pour votre patience envers les noobies) j'espère à bientôt :D

par mere-teresa » 13 juil. 2005, 15:53

Tu parsèmes ton code de tests, par ci par là....
typiquement
if (affectation de telle variable){
faire la suite du programme}else{
echo "NON";
}

par guNy- » 13 juil. 2005, 15:51

"crée ton retour d'erreur (fais des tests if avec des echo )"

----------------
quelle est la méthode pour réaliser ça ?

par mere-teresa » 13 juil. 2005, 15:40

crée ton retour d'erreur (fais des tests if avec des echo )

par Invité » 13 juil. 2005, 15:37

malgré ces modification, la redirection ne marche toujours pas :cry:

et comme je n'ai plus de retour d'erreur, là je me sens tout petit :lol:

par raptor » 13 juil. 2005, 15:18

Code : Tout sélectionner

if (empty($_POST["nom"]) || empty($_POST["email"])) {
@+

par mere-teresa » 13 juil. 2005, 15:09

1/ essaie plutôt isset() ou si tu es sûr que ce sont des chaines de caractères : $var != ""
2/ Si ça vient d'un formulaire, ça doit s'appeler $_POST['var']

suite

par guNy- » 13 juil. 2005, 15:05

la ligne n'est pas correcte au niveau du format ?

if (empty($nom) or empty($email))

par mere-teresa » 13 juil. 2005, 15:01

if (empty($nom) or empty($email)) //problème ici alors

merci !

par guNy- » 13 juil. 2005, 14:53

merci beaucoup, vous etes trop forts :p
je n'ai plus d'erreur,

cependant un nouveau problème vient de faire son apparition, malgré le fait que je remplis correctement les champs obligatoires ($nom et $email), la page qui s'affiche n'est pas ../merci.html, mais celle issue de mail.php3 (avec écrit "Un ou plusieurs champs obligatoires ne sont pas renseignés")

Donc, que les champs soient remplis ou pas, il n'y a pas de redirection vers la page des remerciements.

--------------------------------------------------------
if (empty($nom) or empty($email))
{
print"<p align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"5\"><b>Un ou plusieurs champs obligatoires ne sont pas renseignés.</b></font></p>
<p align=\"right\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"-1\"><a href=\"../ressource/sondage.html\">retour</a></font></p>";
exit();
}
$sujet="Mail sondage";
$headers="From:$email\n";
$headers.="Content-Type:text/html;charset=iso-8859-1\n";
mail("[email protected]",$sujet,$message,$headers);
header("Location:../script/merci.html");
?>

par raptor » 13 juil. 2005, 14:27

non apparemment ils ont débridé apparemment
La fonction mail() est disponible chez Free, mais est limitée à 2000mails/semaine.


Exemple d'utilisation la plus simple possible:
mail("[email protected]","toto1","toto1");
http://faq.free.fr/?q=932


@++

par mere-teresa » 13 juil. 2005, 14:17

Mais Free a bridé le mail non ?

par raptor » 13 juil. 2005, 12:42

Salut,

Code : Tout sélectionner

print"<p align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"8\"><b>Un ou plusieurs champs obligatoires ne sont pas renseignés.</b></font></p> <p align=\"right\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"8\"><a href=\"../ressource/sondage.html\">retour</a></font></p>";

@++

re: suite

par guNy- » 13 juil. 2005, 12:26

apprès recorrection de ma part, l'erreur ne se fait plus ligne 11, mais ligne 40, CAD là ou commence [ print">p align... ]
voici la source de ma nouvelle fonction mail.php3 :

<?
$message="
<html>
<head>
<title></title>
</head>

<body bgcolor='ffffff'>
<body>

<table>
<table width='331' border='0'>
<tr>
<td width='146'>Nom</td>
<td width='185'>$nom</td>
</tr>
<tr>
<td>Pr&eacute;nom</td>
<td>$prenom</td>
</tr>
<tr>
<td>Age</td>
<td>$age</td>
</tr>
<tr>
<td>Avis</td>
<td>$avis</td>
</tr>
<tr>
<td>Habitude</td>
<td>$habitude</td>
</tr>
</table>

</body>
</html>";

if (empty($nom) or empty($email))
{
print"<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="8"><b>Un ou plusieurs champs obligatoires ne sont pas renseignés.</b></font></p>
<p align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="8"><a href="../ressource/sondage.html">retour</a></font></p>";
exit();
}
$sujet="Mail sondage";
$headers="From:$email\n";
$headers.="Content-Type:text/html;charset=iso-8859-1\n";
mail("[email protected]",$message,$sujet,$headers);
header("Location:../script/merci.html");
?>

suite

par guNy- » 13 juil. 2005, 12:11

correction : même en fermant le tableau avec </table> la même erreur se produit.

free ne permet pas cette fonction ?