Problème de formulaire

Tim
Eléphanteau du PHP | 25 Messages

20 juil. 2007, 17:49

Bonjour. J'ai créé un formulaire permettant d'uploader une image et un texte. Tout fonctionnait jusqu'à maintenant, et depuis aujourd'hui, ça me met cette erreur :

Parse error: syntax error, unexpected T_STRING in 2007_07_20_17_29_45.php on line 3

Voici mon code :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans nom</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- #conteneur { /*padding: 10px;*/ width: 600px; border: thin solid #c90081; margin: auto; background-color: #FFCCCC; } #header { height: 200px; width: 600px; background-image: url(ph_administration.jpg); } .date { font-family: Verdana, Arial, SunSans-Regular, Sans-Serif; font-size: 12pt; color: #483a34; } .message { background-color: #96a0a5; padding: 5px; border: thin solid #c90081; display: block; } a { text-decoration:none; color:#c90081; } a:hover { color:#ffffff; } #contenu { padding: 50px; } --> </style> </head> <body> <div id="conteneur"> <div id="header"></div> <div id="contenu"> <?php echo "<hr>"; $dossier="news/"; $ouverture=opendir($dossier); while($elem=readdir($ouverture)){ if(is_file ($dossier.$elem)){ include $dossier.$elem; echo "<span class=\"date\">".stripslashes($date)."</span>"; echo "<br><br><span class=\"message\">".stripslashes($texte)."</span>"; echo "<br>"."<img src=upload/$img>"."<br>"."<br>"; echo "<a href=\"modif_ui.php?f=$elem\">Modifier</a>"."<br>"; echo "<a href=\"sup_sc.php?f=$elem\">Supprimer</a>"; echo "<hr>"; } } ?> <a href="news_ui.php">Ajouter une nouveauté</a> </div> </div> </body> </html>
Ceci est la page pour appeler le formulaire.
Voici le formulaire :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans titre</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- .form { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 9pt; color: #333333; border: thin Aucune #666666; width: 70px; } --> </style> </head> <body> <form action="news_sc.php" method="post" enctype="multipart/form-data"> <p><span class="form">Date</span> <input name="date" type="text" id="date"> </p> <p class="form">Texte</p> <p> <textarea name="texte" cols="50" rows="8" id="texte"></textarea> </p> <p> <input name="fichier" type="file" id="fichier"> </p> <p> <input type="submit" name="Submit" value="Envoyer"> </p> </form> </body> </html>
Le formulaire renvoie à ce fichier :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans titre</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- body { background-color: #96a0a5; } .postee { display: block; margin: auto; width: 200px; font-family: "Comic Sans MS"; font-size: 14pt; color: #564B47; border: solid #ffffff; text-align: center; } .postee a { text-decoration: none; color: #564B47; } .postee a:hover { background: #564B47; color: #ffffff; } --> </style> </head> <body> <?php $date=$_POST['date']; $texte=$_POST['texte']; //création nom de fichier "date" pour classer les news (pour éviter qu'une vienne écraser l'autre) if(isset($_POST['nomFichier'])){ $nomFichier = $_POST['nomFichier']; }else{ $nomFichier= date('Y_m_d_H_i_s').'.php'; } /*------------------------------------------------------------------------------------------------------------------------------*/ //nom du dossier dans lequel on mettra l'image quand on l'aura uploadé $dossier_upload='upload/'; //nom de l'image dans le fichier temporaire $fichierTemp=$_FILES['fichier']['tmp_name']; //vrai nom de l'image $fichierServ=$_FILES['fichier']['name']; if(move_uploaded_file($fichierTemp,$dossier_upload.$fichierServ)){ echo "<span class=\"postee\">Image postée</span><br><br>"; }else{ echo "<span class=\"postee\">Image non postée</span><br><br>"; } /*------------------------------------------------------------------------------------------------------------------------------*/ //création de son contenu $contenu='<'.'?php'; $contenu .= "\n".'$date="'.addslashes($date).'";'; $contenu .= "\n".'$texte="'.stripslashes($texte).'";'; $contenu .= "\n".'$img="'.$fichierServ.'";'; $contenu .= "\n".'?'.'>'; $dossier ="news/"; if($ouverture=fopen($dossier.$nomFichier,'w+')){ if(fwrite($ouverture,$contenu)){ fclose($ouverture); echo "<span class=\"postee\">Nouveauté postée</span><br><br>"; }else{ fclose($ouverture); echo "Nouveauté non postée<br>"; } } ?> <span class="postee"><a href="../nouveautes.php">Lire les news</a> </body> </html>
Et là, il m'affiche également :
Parse error: syntax error, unexpected T_STRING in 2007_07_20_17_29_45.php on line 3
dans la page "nouveautes.php"
Comment ce fait-il que ça ne fonctionne plus du jour au lendemain ?
Merci.
PS : je suis chez Online et je débute...!

Cherchez plus, j'ai trouvé ! Ce sont les guillemets dans le champ "message" qui ne passaient pas.
Modifié en dernier par Tim le 20 juil. 2007, 19:26, modifié 1 fois.
Le risque zéro n'existe pas...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

20 juil. 2007, 18:56

Modération :
Merci d'utiliser un titre clair et qui correspond bien à ta demande.
Les titres contenant "HELP", "Aidez-moi !" n'apportent rien à la compréhension de ton problème.
Par ailleurs, nous savons déjà par ton message que tu as besoin d'aide.

Tu peux corriger ton titre en éditant ton premier message.

Merci de prendre le temps de lire les règlements.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Tim
Eléphanteau du PHP | 25 Messages

20 juil. 2007, 19:25

D'accord. J'avoue que je ne savais pas quel titre mettre pour ce problème.
Désolé
Le risque zéro n'existe pas...