Speichern über einen WYSIWYG-Editor

kavanin

Mitglied
Hallo zusammen,

habe mir jetzt einen WYSIWYG-Editor gesucht und auch ohne weiter Probleme in die Website eingbaut, ich hatte auch schon das Anzeigen des Inhaltes einer txt-Datei geschauft. Jeodch wie ich das speichern versuchen wollt ging gar nix mehr! Jetzt sehe ich weder den Inhalt im Editor, noch kann ich irgendetwas speichern. Ich hoffe irgendwer kann mir schnell helfen, da ich mir sicher bin das dies nicht sehr aufwendig ist.

PHP:
<form method="post" action="<?php print $Scriptpfad;?>">
<?
include('kcms/spaw_control.class.php');
$filename = "test.txt";
$file = fopen($filename, "rb");
$content = fread($file, filesize("test.txt")); 
$sw = new  SPAW_Wysiwyg('spaw1',$content);
$sw->show();

?>
<input type="submit" name="speichern" value="SPEICHERN>>">
</form>
<?
if(isset($_POST['speichern'])){
	 $file2=fopen("test.txt","rb");
 	 fwrite($file2,$content);
	 fclose($file2);
}
?>

Danke für die schnelle Hilfe im voraus!

Lg Kavanin
 
Normal. Erst liest du den Dateiinhalt in $content und dann (ohne ihn zu ändern) speicherst du ihn wieder.
Verwende $_POST oder $_GET, schau im Manual des wysiwyg Editors nach als was der neue Text versandt wird.
 
Verstehen jetzt nicht ganz was du meinst! Denn weis nicht wo und unter was ich nachsehen soll! Ich verwende den Spaw2 Editor! Oder wie ich das mit dem $_GEt machen soll!
 
Danke, hab es mir gerade durchgeschaut, aber nicht das gefunden was ich brauche! Denn weis nicht wie ich den Content in die Txt datei wieder speichere!
 
Ich weiss grad nicht obs die Lösung ist, jedoch öffnest du in deinem Beipspiel die Datei 2 mal mit rb ohne sie zu schliessen zwieschendurch.
Beim Speichern öffnest du die Datei ebenfalls im Lesemodus 'r' anstelle vom Schreibmodus 'w'
 
So hab dies geändert aber trotzdem hat sich noch nicht geändert ist noch immer so wie vorher :( Falls ich es richtig verstanden habe!

PHP:
<form name="spawdemo" method="post" action="demo.php">
<?

include('kcms/spaw_control.class.php');

$file = fopen("test.txt" , "rb");
$content = fread($file, filesize("test.txt")); 

$sw = new  SPAW_Wysiwyg('spaw1',$content);
$sw->show();
fclose($file);

?>
<input type="submit" name="speichern" value="SPEICHERN>>"> 
</form>
<?
if(isset($_POST['speichern'])){
     $file2=fopen("test.txt","w");
      fwrite($file2,$content);
     fclose($file2);
}
?>
 
Okay, aber jetzt eine ganz blöde frage wo must ich das $_POST hin geben. Hätte es so gemacht, aber da wird mir gar nichts mehr angezeigt und bekomme diese Warnung fread() [function.fread]: Length parameter must be greater than 0!

PHP:
$sw = new  SPAW_Wysiwyg($_POST['spaw1'],$content);
 
nope.
überleg dir mal den ablauf

1) Seite wird angefordert
2) dein PHP-Script erstellt ein (POST-)Formular mit dem Editor und dem Inhalt der Datei als Vorgabewert des Editors.
3) Die generierte Seite wird an den Browser übergeben.
4) Der User änder den Inhalt unddrückt auf 'speichern'
5) Der neue Inhalt wird per POST an den Server und somit an dein PHP-Script gesendet.
6) Das PHP-Script liest die neuen Werte aus POST aus und speichert sie in die Datei.

Also, wo gehört wohl das $_POST['spaw1'] hin?
 
Zurück