[PHP] Datei schreiben
Hi,
ich möchte in PHP eine Datei überschreiben mit folgendem Code: $handle = fopen("../news.php","w"); fwrite($handle, $text); fclose($handle); Aber der Server gibt immer folgende Fehler aus: Zitat:
Grüße aus Berlin Chrissi91 |
Re: [PHP] Datei schreiben
Ja, sieht er. Bist du dir aber sicher, dass der Web-Benutzer Schreibrechte in dem Ordner hat? Meistens musst du mit Hilfe von chmod die Rechte des Ordners auf 777 setzen, damit du was schreiben kannst. Dies sollte mit jedem halbwegs faehigem FTP-Programm moeglich sein.
Greetz alcaeus |
Re: [PHP] Datei schreiben
Nein, bin ich nicht. :shock:
Ich bin aber gerade nicht zu Hause. Bin bei einem Freund, der etwas zurückgeblieben ist und kein FTP - Programm auf dem Rechner hat. Ich teste es aber mal zu Hause. Danke für deine Hilfe. Chrissi91 |
Re: [PHP] Datei schreiben
Hi,
es klappt. Nur ist mir noch ein Fehler aufgefallen, der den Schreib- und Lesevorgang betrifft. Ich bastel mir ja gerade ein kleines CMS für mich. Es wird z.B. die Datei "news.php" eingelesen und in ein Textfeld geladen. Dann kann ich den Programmiercode verändern und speichern. Aber es gibt ein Problem: Ich habe den Code beim Laden so bekommen:
Code:
Und nach mehrmaligem Verändern sieht es so aus (DAmit meine ich, ich habe geladen, gespeichert, geladen, gespeichert, etc.):
<?php include_once(\"header.php\"); ?>
<h3>News</h3> [b]01.01.2007[/b] Die Seite <a href=\"http://www.pyrgo.de/\">Pyrgo.de</a> hat jetzt ein neues Design, ein verbessertes CMS (Content Management System) und ein ausgefeiltes Newslettersystem. Ich finde, dass das neue Design von Cordobo mehr her macht und durch die hellere Farbwahl ansprechender wirkt. Außerdem lassen sich in diesem Template leichter Menüumstrukturierungen vornehmen. <?php include_once(\"footer.php\"); ?>
Code:
Woran könnte es liegen. Der Code schaut wie folgt aus:
<?php include_once(\\\\\\\"header.php\\\\\\\"); ?>
<h3>News</h3> [b]01.01.2007[/b] Die Seite <a href=\\\\\\\"http://www.pyrgo.de/\\\\\\\">Pyrgo.de</a> hat jetzt ein neues Design, ein verbessertes CMS (Content Management System) und ein ausgefeiltes Newslettersystem. Ich finde, dass das neue Design von Cordobo mehr her macht und durch die hellere Farbwahl ansprechender wirkt. Außerdem lassen sich in diesem Template leichter Menüumstrukturierungen vornehmen. <?php include_once(\\\\\\\"footer.php\\\\\\\"); ?>
Code:
Ich finde den Fehler nicht ganz logisch. Oder ihr?
<?php
session_start(); include_once("header.php"); ?> <h3>Administration</h3> <?php if ($_SESSION['password'] == "11c1fbc072d4c56e51b88049845af052"){ $filename = "../news.php"; $handle = fopen ($filename, "rb"); $inhalt = fread ($handle, filesize ($filename)); fclose ($handle); echo("[b]Hier können Sie die News ändern.[/b] <form action=\"$PHP_SELF\" method=\"post\"><textarea rows=\"20\" cols=\"50\" name=\"text\">".$inhalt."</textarea> <input type=\"submit\" value=\"Speichern\" name=\"save\"></form>"); if ($_POST['save']!=""){ $handle = fopen("../news.php","w"); fwrite($handle, $text); fclose($handle); } } else { echo("[b]Sie sind nicht berechtigt auf diese Seite zuzugreifen.[/b] <form action=\"<?php $PHP_SELF ?>\" method=\"post\">[b]Login:[/b]<input type=\"password\" name=\"pw\" size=\"20\"><input type=\"submit\" name=\"submit\" value=\"Login\"></form>"); if(md5($pw) == "11c1fbc072d4c56e51b88049845af052"){ $_SESSION['password'] = md5($pw); echo("<script LANGUAGE=\"JavaScript\">top.location.href='index.php'</script>"); } } include_once("footer.php"); ?> |
Re: [PHP] Datei schreiben
Den Code tu ich mir heute Abend nicht mehr an, aber morgen dafuer. Ich weiss schon was das Problem ist, aber ich brauch momentan Schlaf :P
Greetz alcaeus |
Re: [PHP] Datei schreiben
Moin,
mit Verlaub...das ist der wohl schrecklichste Code, den ich in den letzten Jahren gesehn hab. Du weisst hoffentlich dass du sowas:
Code:
nicht machen musst, sondern auch das:
echo("<input type=\"text\" name=\"foo\" value=\"$foo\" />");
Code:
oder sogar das:
echo('<input type="text" name="foo" value="'. $foo .'" />');
Code:
schreiben kannst? Vor allem letzteres waere fuer deinen Code nicht schlecht.
>?
<input type="text" name="foo" value="<?php echo $foo ?>" /> <?php Zitat:
Weiters, verwendest du $text direkt als autoglobal, oder setzt du das auch irgendwo? Wenn du jetzt sagst "ich weiss nicht was autoglobals sind, aber ich setz es nirgends", dann sag gleich "autoglobals" und du kriegst die Belehrung bezueglich register_globals. Und bitte, wenn du das naechste Mal Code postest, bitte denk dran dass er von Leuten gelesen wird. Bei solchem Code wundern mich echt keine Bugs mehr... Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz