fwrite problem

Tualex

Erfahrenes Mitglied
Der code:
PHP:
$file = fopen("../".$_POST['name'].".php", "a+");
fwrite($file, "<?
    include \"config.php\";
    $sql = \"SELECT * FROM `texte` WHERE `name` = '".$_POST['link']."'\";
    $query = mysql_query($sql);
    while (\$row = mysql_fetch_array($query)) {
$row = str_replace(\"\n\", \"<br>\", $row);
?>
<div id=\"titel\"><? echo $row['titel']; ?>
</div>
<hr width=\"100%\">
<div id=\"text\"><? echo $row['text']; ?>
</div>
<?
    }
?>");
fclose($file);

wie kann ich die Variablen so schreiben, dass folgender fehler nicht auftritt?
Code:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in F:\work\ergotherapie\physiotherapie\admin\newlink.php on line 39
das ist die Zeile mit der Variable $sql
ich bitte um eine schnelle Antwort.
 
Zuletzt bearbeitet:
"include "config.php\";"

Also da fehlt auf alle fälle 'n Backslash. :confused:

Bin jetzt im Moment aber zu faul da großartig herumzuexperimentieren. *pfeif*
 
Versuch doch anstatt < und > die HTML ecoded strings dafür zu verwenden, da ich vermute, dass <? in deinem Script einen fehler verursacht!
 
Folgender Code funktioniert bei mir problemlos:
PHP:
<?php
$file = fopen('write.php', 'w+');
fwrite($file, '
<?php
  include "config.php";
  $sql = "SELECT * FROM `texte` WHERE `name` = \''.$_POST['link'].'\'";
  $query = mysql_query($sql);
  while ($row = mysql_fetch_array($query))
    {
        $row = str_replace("\n", "<br>", $row);
    ?>
        <div id="titel"><?php echo $row[\'titel\']; ?>
        </div>
        <hr width="100%">
        <div id="text"><? echo $row[\'text\']; ?>
        </div>
    <?php
  }
?>');
fclose($file);
?>
 
Zurück