Sönke Tesch: Variable als Parameter übergeben

Beitrag lesen

Jetzt mein problem: wenn ich <a href="i.php?vari=$b"> mache, zur erklärung, ich will an Seite i.php die den Parameter vari besitz den Wert aus der Variable b übergeben, zeigt er mir genau dieses auch wieder an... aber nicht den inhalt der Variable $b... es ist zum haare ausraufen...

Odium hat schon darauf hingewiesen: Du hast wahrscheinlich

echo '<a href="i.php?vari=$b">';

geschrieben? Bedenke, daß in Texten mit einfachen Anführungszeichen keine Variablen von PHP ersetzt werden, das passiert nur in solchen mit doppelten Anführungszeichen. In dieser Art sollte es funktionieren:

echo "<a href="i.php?vari=$b">";

Worauf ich aber eigentlich hinweisen wollte:
Denk daran, daß man nicht alle Zeichen in URLs verwenden kann und Du deshalb $b unter Umständen per urlencode() (http://www.php.net/manual/de/function.urlencode.php) kodieren mußt:

echo "<a href="i.php?vari=". urlencode($b) ."">";

Und weil es grundsätzlich falsch gemacht wird: das & hat in HTML alleine _nichts_ zu suchen, also auch nicht in URLs:

<a href="i.php?vari=123&vary=blabla">

ist falsch. Siehe http://www.htmlhelp.com/tools/validator/problems.html#amp.

Gruß,
  soenk.e