KD-one: Addslashes - Verständnisfrage

Hallo alle,

Ich bin grad am konzipieren eines Scriptes, das vier unterschiedliche Anforderungen erfüllen muss. Das Script soll im Endeffekt aus einem Array 4 unterschiedliche Navigationen erzeugen(Noscriptmenü, Listenmenü, Listenmenü für NN4.x, und Javascriptmenü)
Bei dreien davon hab ich im Prinzip zur Zeit keine Probleme, bei der vierten gibt es ein Verständnisproblem.
einmal soll die Ausgabe so erfolgen:

echo "document.write="index.php?weitere parameter...";

Das ist ja an sich kein Problem, mit addslashes kann ich ja den Backslash automatisch erzeugen.
Wenn ich diese Scriptzeile aber als Klartext ausgeben möchte(ist ja nötig, da in Js die Maskierung der Anführungszeichen nötig ist), müsste ich die Funktion addslashes 2 mal hintereinander ausführen um so ein Ergebnis zu erhalten:

echo "document.write=\"index.php?weitere parameter...";

Ist das in dieser Form sinnvoll, möglich und zieführend, oder gibt es dafür einen einfacheren Weg?
Es existiert noch kein Script dazu, das hier ist einfach eine Verständnisfrage.

Und noch eine Frage, bzw. Bitte:

Könntet ihr bitte hier [pref:t=68030&m=389734] nachschauen, ob Ihr da einen Fehler meinerseits findet, damit ich das Problem mit der Fehlermeldung aus der Welt schaffen kann?
In CSS2 wird die Syntax anstandslos akzeptiert, in CSS3 meckert der Validator...? :-/

Gruß

Kurt

--
"Dumme Gedanken hat jeder, aber der Weise verschweigt sie."  (Wilhelm Busch; dt. Zeichner u. Dichter; 1832-1908)
http://elektro-dunzinger.at
http://shop.elektro-dunzinger.at
  1. Hallo alle,

    Gedankliche Verwirrung, da hab ich wohl um die Ecke gedacht.
    Ich brauche die Ausgabe ja gar nicht in PHP, insofern erübrigt sich die doppelte Ausführung von addslashes.
    Ein Problem bleibt nach meinen Test aber bestehen:
    Folgendes Script verursacht einen Parse Error:

    <?php error_reporting(E_ALL);
    $string = "document.write='index.php/'";
    $add = addslashes($string);
    $js = addslashes($add."\n");
    $ausgabe = nl2br($js);
    $end = str_replace('<br />', '<br>', $ausgabe)   <--Hier tritt der Fehler auf!
    echo $end;
    $string = "document.write = "<a href=\"index.php\">Linktext</a>";
     $ausgabe = str_replace('</a>', '</a>', $string);
    echo $ausgabe;
     ?>

    Bis zu $ausgabe wird das Script korrekt ausgeführt, wenn ich die Zeile "$end=..." hinzufüge, kommt ein Parse Error.
    Warum?
    Hintergrund: <br /> ist XHTML-Syntax und hat in meiner Seite nichts zu suchen.

    Gruß

    Kurt

    --
    "Viele Leute kaufen mit Geld, was sie nicht haben. Dinge, die sie nicht brauchen, um Leuten zu imponieren, die sie nicht ausstehen koennen."  (Sprichwort)
    http://elektro-dunzinger.at
    http://shop.elektro-dunzinger.at
    1. Hallo alle,

      Ach du Schande, was ein fehlendes Semikolon ausmacht... ;-)

      Gruß

      Kurt

      Gruß

      Kurt

      --
      "Verstand und Genie rufen Achtung und Hochschaetzung hervor, Witz und Humor erweckt Liebe und Zuneigung."  (David Hume; schott. Philosoph; 1711-1776)
      http://elektro-dunzinger.at
      http://shop.elektro-dunzinger.at