Parse error zum verzweifeln

Arash Garl

Grünschnabel
Hallo,

ich habe mit Hilfe folgende Ausgabe geschrieben:

PHP:
while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>"<a href="http://www.google.de/'. $row['Stadtname'] ."</a>. $row['Stadtname'] .</td>";
  echo "<td>" . $row['Anzahl der Votes'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

Folgende Zeile, ist die Zeile 26
PHP:
  echo "<td>"<a href="http://www.google.de/'. $row['Stadtname'] ."</a>. $row['Stadtname'] .</td>";

Hier bekomm ich nun folgenden Parse error:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in vote_data.php on line 26

Mein Problem ist, das ich den Fehler nicht finde :(
Kann mir jemand dabei helfen ?
 
So müsste es gehen.

PHP:
 echo '<td><a href="http://www.google.de/'. $row['Stadtname'].'"</a>'. $row['Stadtname'] .'</td>';

Aber was genau soll in
PHP:
 $row['Stadtname']
stehen?

sowas wie http://www.google.de/Essen führt zu nichts?!
 
Zuletzt bearbeitet:
Nicht doch eher so?
PHP:
echo '<td><a href="http://www.google.de/' . $row['Stadtname'] . '">' . $row['Stadtname'] . '</a></td>';
Sonst wär der Link nicht wirklich klickbar. :)

Gruß
 
Raisch hat natürlich recht, ich hatte mich nur auf die PHP-Syntax konzentriert, nicht auf die HTML-Syntax!

Die Frage bleibt trotzdem..!
 
Tipps im Nachhinein. Es lohnt sich
a) Auch den HTML-Teil in PHP formatieren: Heredoc-Syntax
b) Die Complex (Curly) Syntax anwenden um die Strings zusammenzusetzen. Das reduziert das Chaos mit öffnenden und schliessenden Anführungszeichen und den Verbindungs-Punkten

Du siehst dann auch den HTML-Teil korrekt
PHP:
echo '<table>';
while($row = mysql_fetch_array($result)){
echo <<<HTML
<tr>
    <td>
        <a href='http://www.google.de/{$row['Stadtname']}'>
            {$row['Stadtname']}
        </a>
    </td>
    <td>
        {$row['Anzahl der Votes']}
    </td>
</tr>
HTML;
}
echo '</table>';

Noch schöner natürlich mit printf():
PHP:
$rowPattern = <<<HTML
<tr>
    <td>
        <a href=''http://www.google.de/%s''>
            %s
        </a>
    </td>
    <td>
        %d
    </td>
</tr>
HTML;

echo '<table>';
while($row = mysql_fetch_array($result)){
    printf($rowPattern, $row['Stadtname'], $row['Stadtname'], $row['Anzahl der Votes']);
}
echo '</table>';
 
Zurück