2009-10-16 10 views
-5

J'ai une énorme table à mettre dans la boucle while, mais j'ai du mal à la concaténer. Comment puis-je ajouter des multilines avec plus?Php Echo Concatenation

<?php 
$dbhost = 'xxxx'; 
$dbuser = 'xxxx'; 
$dbpass = 'xxxx'; 
$dbname = 'xxxx'; 

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql'); 
mysql_select_db($dbname, $conn); 

$result = mysql_query("SELECT * FROM table", $conn); 

while ($row = mysql_fetch_array($result)) 
{ 
    echo '<tr align="center"><td width='200'>' . htmlspecialchars($row['Picturedata']) . '</td>'; 
    echo '<td width="700"><h1>' . htmlspecialchars($row['name'] . '</td>' ;  
} 

?> 

Je reçois une erreur de syntaxe, inattendue ';'

+0

a manqué youve) cette fois hors – Andrew

+0

vous avez également une balise ouverte pour un en-tête et aucune balise fermante – Andrew

+1

Il manque également un –

Répondre

4

Dans le code affiché cette ligne manque une parenthèse de fermeture après ['name']:

echo "<td width='700'><h1>" . htmlspecialchars($row['name'] . "</td>" ; 

Il devrait être

echo "<td width='700'><h1>" . htmlspecialchars($row['name']) . "</td>" ; 
+0

ooops! merci pour aider – Joe

1

Mise à jour: Il vous manque un ')' sur votre deuxième écho dans la boucle while.

Le code que vous avez posté me semble entièrement valide. Peut-être qu'il y a un problème ou un point-virgule manquant ailleurs dans votre fichier?

+1

Je suis d'accord le problème est probablement plus haut dans le code, et c'est probablement un 'ou' – UnkwnTech

+0

non, il dit qu'il y a un ';' dans la deuxième ligne d'écho:/ – Joe

+0

@Joe Post le fichier entier afin que nous puissions jeter un oeil –

0

Notez que echo n'ajoute pas une nouvelle ligne à la sortie. Si vous voulez une nouvelle ligne dans la sortie HTML (bien qu'il ne sera pas visible dans le navigateur en raison de la façon dont HTML traite de nouvelles lignes), vous pouvez soit faire quelque chose comme

echo '<td> blah </td> 
<td> blah </td> 
'; 

ou vous pouvez utiliser \n dans un chaîne entre guillemets:

echo "<td> blah </td>\n<td> blah </td>\n"; 

ou

echo "<td> blah </td>\n"; 
echo "<td> blah </td>\n";