unexpected $end...

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 $end...

Re: unexpected $end...

par moogli » 23 avr. 2012, 18:13

=> syntaxe heredoc sinon c'est le merdier ;)
La concaténation peux très bien être lisible ;)


@+

Re: unexpected $end...

par piotrowski-s » 23 avr. 2012, 14:17

c'était un problème de short open tag... je n'aimes pas trop la concaténation car comme j'ai des echo qui contienne cela: ""javascript:na_open_window('win', 'edit-debiteur.php?id=<?php echo $_GET['id'] ; ?>&n_doss=<?php echo $_GET['n_doss'] ; ?>&code_client=<?php echo $_GET['code_client'] ;?>', 0, 0, 700, 700, 0, 0, 0, 0, 1);" target="_self""" je prefere vraiment tout séparer, (je trouves que c’est plus facile.


Merci pour l'aide :)

Re: unexpected $end...

par moogli » 23 avr. 2012, 12:01

salut,

le message complet c'est quand même mieux hein :)

ça sert à rien d'ouvrir fermer les balise comme ça c'est illisible utilise la concaténantion ou la syntaxe hérédoc

tu oublie les ; avant les ?>

pense a indenter ton code
par exemple
<?php            
$sql = 'SELECT titre, date, gestionnaire.login as expediteur, messages.id as id_message FROM messages, gestionnaire WHERE id_destinataire="'.$_SESSION['login'].'" AND id_expediteur=gestionnaire.login ORDER BY date DESC LIMIT 0,5';
// lancement de la requete SQL
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows($req);

if ($nb == 0) {
	echo 'Vous n\'avez aucun message.';
}
else {
	// si on a des messages, on affiche la date, un lien vers la page lire.php ainsi que le titre et l'auteur du message
	while ($data = mysql_fetch_array($req)) {
		$msgAuth = stripslashes(htmlentities(trim($data['expediteur'])));
		$titre = stripslashes(htmlentities(trim($data['titre'])));
		echo <<<eot
		<img src="images/E-mail-icon.png"> ${data['date']}
		<br>
		<a href="lire.php?id_message=${data['id_message']}"> $titre</a>
		<br>
		[ Message de $msgAuth]
		<hr />
eot;
	}
}
mysql_free_result($req);
mysql_close();
?>
@+

unexpected $end...

par piotrowski-s » 23 avr. 2012, 11:22

Bonjour à tous, j'ai ce code, j'ai bien recompté toutes les acollades etc... mais il me dit en dépit de cela, que j'ai une erreur de type unexpected $end... alors je botte en touche...
 <?php             $sql = 'SELECT titre, date, gestionnaire.login as expediteur, messages.id as id_message FROM messages, gestionnaire WHERE id_destinataire="'.$_SESSION['login'].'" AND id_expediteur=gestionnaire.login ORDER BY date DESC LIMIT 0,5';  
// lancement de la requete SQL
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());  
$nb = mysql_num_rows($req);  
 
if ($nb == 0) { 
   echo 'Vous n\'avez aucun message.';  
}  
else { 
   // si on a des messages, on affiche la date, un lien vers la page lire.php ainsi que le titre et l'auteur du message
   while ($data = mysql_fetch_array($req)) { 
      ?><img src="images/E-mail-icon.png"><?php echo $data['date'] ?> <br> <a href="lire.php?id_message=<?php echo $data['id_message'] ?>"> <?php echo stripslashes(htmlentities(trim($data['titre']))) ?></a><br> [ Message de <?php echo stripslashes(htmlentities(trim($data['expediteur'])))  ?>]<hr /> <?
   }  ?><?
}  
mysql_free_result($req);  
mysql_close();  
?>
d'avance merci pour votre aide.