PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einlesen eine "gefopendeten" Datei in ein Textfeld[PHP Frage]



Tessio
04.03.2006, 18:58
Hallo.
Für mein ACP bräuchte ich eine kleine Hilfe.
Unzwar möchte ich den Inhalt (+html befehle) einer htm-datei in ein textfeld
einlesen, damit man ihn bearbeiten und speichern kann.
Den fopenbefehl hab ich schon drin, der sieht wie folgt aus :
$fp = fopen("/srv/www/htdocs/***/html/rpg-generation/***/***.htm","r+");
* = wegen sicherheitsgründen zensiert ^^ ( keine angst, der dateipfad ist richtig ^^ )
Könnte mir wer auf die Sprünge helfen?

Manni
04.03.2006, 21:23
benutz fread() (http://de2.php.net/fread) und fwrite() (http://de2.php.net/fwrite), um es nachher wieder abzuspeichern. Alternativ kannst du für das einlesen auch file_get_contents() (http://de2.php.net/manual/de/function.file-get-contents.php) und file_put_contents() (http://de2.php.net/manual/de/function.file-put-contents.php) bvenutzen.

Tessio
04.03.2006, 21:33
Ok, kannst du mir auch sagen, wie ich das in ein bearbeitungsfähiges Textfeld bekomm?
Wenn möglich mit Beispielcode, wäre nett, ich bin so ein php-nOOb :D

Manni
04.03.2006, 22:22
<textarea name="bla"><?php echo file_get_contents("deine_datei.txt"); ?></textarea>
Ist ungetestet, sollte aber funktionieren...

Tessio
04.03.2006, 23:04
lol, das hab ich mir schwieriger vorgestellt ^^
danke, funzt prächtig :)

Tessio
05.03.2006, 16:58
1. sry für doppelpost =/

2. da es sich jetzt um ein doch gröberes problem handelt, höre ich mal lieber auf,
Manni via PN zu nerven und frage hier nach.
Der Code ist jetzt folgender :



<span class="ueber">RPG Generation &raquo; Content Edit Center</span><br /><br />

<?
if(isset($_POST['submit']))
{
$fp = fopen("/srv/www/htdocs/web***/html/rpg-generation/***/***.htm", "w");
fwrite($fp, $_POST['bla']);
fclose($fp);
}
?>

<div align="center">
<form action="" method="post">
<textarea name="bla" rows="20" cols="70" >
<?php
echo file_get_contents("/srv/www/htdocs/web***/html/rpg-generation/***/***.htm");
?>
</textarea><br />
<input type="submit" name="submit" value="Speichern">
</form>
</div>

<span class="text">
<a href="index.php?content=home">Zum Index &laquo;</a>
</span>

Das editieren funzt, doch wenn ich auf den Speicherbutton klick, werden automatisch
für und hinter jedes " ein bzw danach mehrere Slashs gesetzt :confused:
Was soll das denn nu

killmymatrix
05.03.2006, 17:26
Bearbeite mal den zu speichernden Text mit stripslashes (http://php.net/stripslashes) und womöglich auch noch mit htmlspecialchars (http://www.php.net/manual/de/function.htmlspecialchars.php).

Gruß

killmymatrix

NPC Fighter
05.03.2006, 18:46
Oder mit str_replace (http://de.php.net/manual/de/function.str-replace.php). ;)

Tessio
05.03.2006, 18:53
Danke, endlich, mein ACP is fertig http://www.multimediaxis.de/images/smilies/old/sm_12.gif :)
Wo ich schon die Gelegenheit habe, eine kleine Dankesliste ^_^

Danke an...
NPC Fighter, der mir das valide Coden, den Umgang mit CSS, den ich noch etwas
lernen muss ;) und in vielen anderen Sachen sehr geholfen hat

Manni, der meine nervige Fragerei durchgestanden hat und mir beim Grundgerüst
des ACP erheblich geholfen hat :)

killmymatrix, naja, danke für die Aufklärung eben :D