Parse error: syntax error, unexpected T_CONST

Résolu/Fermé
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 14 déc. 2010 à 19:18
vincebzh Messages postés 137 Date d'inscription lundi 22 mars 2010 Statut Contributeur Dernière intervention 7 mai 2013 - 14 déc. 2010 à 20:49
Bonjour,

Cela fait une semaine que je bataille sur ce Pb sans trouver de solution. Voici le l'erreur (classique me direz-vous ?).
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /mnt/171/sda/4/e/editionsgracianne/presse/Traitement_Agenda.php on line 51


En tout début de page je récupère les datas du FORM avec ces variables:
<?php
// On déclare les variables (POST car la méthode d'envoi du formulaire est POST
$ID = $_POST['ID'];
$Lien = mysql_real_escape_string(htmlspecialchars($_POST['Lien']));
$Source = mysql_real_escape_string(htmlspecialchars($_POST['Source']));
$Date = mysql_real_escape_string(htmlspecialchars($_POST['Date']));
$Titre_Page = mysql_real_escape_string(htmlspecialchars($_POST['Titre_Page']));
$Stitre1 = mysql_real_escape_string(htmlspecialchars($_POST['Stitre1']));
$Stitre = mysql_real_escape_string(htmlspecialchars($_POST['Stitre']));
$textarea = mysql_real_escape_string(htmlspecialchars($_POST['Info']));
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


Et voici cette fameuse requête d'insertion (la table agenda existe vraiment, je l'ai vérifié):
$sql = "INSERT INTO 'agenda' (ID, Lien, Source, Date, Titre_Page, Stitre1, Stitre, Info) VALUE ("'.$ID[''].'", "'.$Lien['Lien'].'", "'.$Source['Source'].'", "'.$Date['Date'].'", "'.$Titre_Page['Titre_Page'].'", "'.$Stitre1['Stitre1'].'", "'.$Stitre['Stitre'].'", "'.$textarea['Info'].'")";


Petit détail, vous noterez que le champ textarea du formulaire s'appelle textarea à cause du script d'injection de balise de mise en forme et que dans la table il porte le nom de Info. J'aurais bien voulu le changer mais le javascript me parait bien compliqué à corriger.
Au fait, l'adresse pour les tests est: http://editionsgracianne.free.fr/presse/Formulaire.php et le user = test et le pass = toto.

Voilà, si quelqu'un pourrait me regarder cette boulette, en mettant en gras par exemple pour que je vois bien où j'ai merdé !
Un grand merci d'avance.



Le bonheur est la seule chose que l'on peut donner sans l'avoir.

5 réponses

vincebzh Messages postés 137 Date d'inscription lundi 22 mars 2010 Statut Contributeur Dernière intervention 7 mai 2013 29
Modifié par vincebzh le 14/12/2010 à 19:26
Salut. Essaye avec ça :

$sql = 'INSERT INTO agenda (ID, Lien, Source, Date, Titre_Page, Stitre1, Stitre, Info) VALUE ("'.$ID.'", "'.$Lien['Lien'].'", "'.$Source['Source'].'", "'.$Date['Date'].'", "'.$Titre_Page['Titre_Page'].'", "'.$Stitre1['Stitre1'].'", "'.$Stitre['Stitre'].'", "'.$textarea['Info'].'")';


Edit: désolé, j'avais mal lu la 1ère partie, c'est plutôt ca :
$sql = 'INSERT INTO agenda (ID, Lien, Source, Date, Titre_Page, Stitre1, Stitre, Info) VALUE ("'.$ID.'", "'.$Lien.'", "'.$Source.'", "'.$Date.'", "'.$Titre_Page.'", "'.$Stitre1.'", "'.$Stitre.'", "'.$textarea.'")';
0
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 521
14 déc. 2010 à 19:54
Salut et merci pour ta réponse rapide,
Il y a un mieux et maintenant j'ai ça:
Parse error: syntax error, unexpected T_ELSE in

Du coup je copie le code:
<?php  
 // Infos de connexion à la BDD et affichage des boutons Précédent et Suivant
require 'Fonctions_Agenda.php';

 // connection à la BDD
$link = mysql_pconnect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // connection à la base
mysql_select_db($db) or die ('Impossible de se connecter à la base'); // sélection de la table

 // requête SQL qui insère des enregistrements dans la table (L'ID est vide car il est auto-incrémental).
// $sql = 'INSERT INTO 'agenda' (ID, Lien, Source, Date, Titre_Page, Stitre1, Stitre, Info) VALUE ("'.$ID[''].'", "'.$Lien['Lien'].'", "'.$Source['Source'].'", "'.$Date['Date'].'", "'.$Titre_Page['Titre_Page'].'", "'.$Stitre1['Stitre1'].'", "'.$Stitre['Stitre'].'", "'.$textarea['Info'].'")';

$sql = 'INSERT INTO agenda (ID, Lien, Source, Date, Titre_Page, Stitre1, Stitre, Info) VALUE ("'.$ID.'", "'.$Lien.'", "'.$Source.'", "'.$Date.'", "'.$Titre_Page.'", "'.$Stitre1.'", "'.$Stitre.'", "'.$textarea.'")';

 // on écrira un petit message d'erreur si la requête ne se passe pas bien (or die)
{
       mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
 // on ferme la connexion à la base
       mysql_close(); 
    
       echo 'le nouvel événement à été enregistré dans l\'agenda : '.$_POST['Lien'].' concernant '.$_POST['Titre'];  
 }  
 else { 
       echo 'Les variables du formulaire ne sont pas déclarées';  
 }  
 ?>



Le bonheur est la seule chose que l'on peut donner sans l'avoir.
0
vincebzh Messages postés 137 Date d'inscription lundi 22 mars 2010 Statut Contributeur Dernière intervention 7 mai 2013 29
14 déc. 2010 à 20:21
Euh, t'as pas l'impression qu'il manque quelque chose vers les lignes 14-15 ?
0
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 521
14 déc. 2010 à 20:32
???? Comment tu vois les lignes 14 15 moi oui mais toi ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vincebzh Messages postés 137 Date d'inscription lundi 22 mars 2010 Statut Contributeur Dernière intervention 7 mai 2013 29
14 déc. 2010 à 20:49
Un copier / coller vite fait dans notepad++
0