Strings und Variablen In Datei schreiben

  • Hallo, für mein Newsscript auf meiner HP ich möchte gerne folgendes in eine Datei (TXT) schreiben lassen:


    Den String


    Zitat

    <div style="border: 1px dashed; width: 500px;" ><div style="margin-left:10px; margin-right:10px"><div align="left">

    verknüpft mit

    Zitat

    $newstitel

    verknüpft mit

    Zitat

    "</div><div align="left"><hr>"

    verknüpft mit

    Zitat

    $eintrag

    verknüpft mit

    Zitat

    </div></div></div>

    verknüpft mit

    Zitat

    $dateiinhalt

    Also alles aneinandergereit, vor und nach den Strings " gesetzt und alles schön mit

    "." Verkettet:

    Code
    $daten="<div style="border: 1px dashed; width: 500px;" ><div style="margin-left:10px; margin-right:10px"><div align="left">".$newstitel."</div><div align="left"><hr>".$eintrag."</div></div></div>
    ".$dateiinhalt;
    fwrite ($datei,$daten);

    Nun meckert er jedochm ich vermute mal wegen der Vielen Gänsefüßchen:

    Zitat

    Parse error: syntax error, unexpected T_STRING in /usr/export/www/hosting/solo/Eike/news.php on line 37

    Zeile 37 ist die erste Zeile im obigen Code (fängt an mit $daten="<div.....)

    Was kann ich tun, damit er dennoch alles in die Datei schreibt?

  • Du hast bei den Anführungszeichen immer das \ davor vergessen, denn ansonsten glaubt php, dass der String nur "<div style=" lautet und der Rest wird dann eben als Fehler ausgewertet, weil php nichts damit anfangen kann.
    Um Anführungszeichen dennoch in einen String zu schreiben musst du \" verwenden.

    Code
    $daten="<div style=\"border: 1px dashed; width: 500px;\" ><div style=\"margin-left:10px; margin-right:10px\"><div align=\"left\">".$newstitel."</div><div align=\"left\"><hr>".$eintrag."</div></div></div>
    ".$dateiinhalt;
    fwrite ($datei,$daten);

    Es gibt zwei Regeln fuer Erfolg im Leben:
    1. Erzaehle den Leuten nie alles, was Du weisst ...

  • Einfacher und lesbarer:

    Code
    $daten = "<div style='border: 1px dashed; width: 500px;' >
               <div style='margin-left:10px; margin-right:10px'>
                 <div align='left'>$newstitel</div>
                 <div align='left'><hr>$eintrag</div>
               </div>
              </div>
    $dateiinhalt; 
    fwrite ($datei,$daten);