Thomas Luethi: Valure und die Leerzeichen

Beitrag lesen

Hallo,

echo"<p><input type="checkbox" name="link[]" value="<a href=index.php?section= &#65533;urlencode(news-s&po=$rubrik&id=$id>$titel</a><br>)&#65533;">\n";

Du willst zuviel codieren.
Codiere jeweils nur den String, der die boesen Zeichen enthalten kann,
hier also nur gerade die Variable $rubrik.

Zudem solltest Du Dich _dringend_ mit der String-Verarbeitung von PHP befassen.
Du hast in Deinem Beispiel zahlreiche Leerzeichen in der URL,
denn Dir ist offenbar nicht klar, dass Du den String unterbrechen musst,
um eine Funktion einzufuegen.

echo "blabla" . funktion() . "blabla".

Lies:
PHP-Manual: Strings, Einfache und doppelte Anfuehrungszeichen, HEREDOC-Syntax,
http://www.php.net/manual/en/language.types.string.php

Zudem muessen die & in & umgeschrieben werden, damit
es valides HTML ist.
Und die URL im Link drin muss in Anfuehrungszeichen stehen,
gerade, wenn sie - wie bei Dir - irgendwelche Sonderzeichen
enthalten kann.

Versuch's mal damit:

echo"<p><input type="checkbox" name="link[]" value="<a href='index.php?section=news-s&po=" . urlencode($rubrik) . " &id=$id'>$titel</a><br>\n";

Dein ganzes Unterfangen, einen vollstaendigen Link als
Checkbox-Wert weiterzugeben, scheint mir allerdings nicht
sehr sinnvoll.

Wodurch ist ein Newsbeitrag eindeutig identifiziert?

  • durch die Kombination von Rubrik und ID?
  • durch die ID allein?
    Ich wuerde als Checkbox-Wert nur das weitergeben,
    was notwendig ist.
    Den vollstaendigen Link wuerde ich erst spaeter
    zusammenbauen.

Gruesse,

Thomas