Hallo,
dieses kleine scriptchen zeigt mir nun als Ausgabe eine bestimmte textstelle (aus einer externen php-Datei) mit Hilfe von Regex an.
die verkürzte ausgabe ist in einer textbox zu sehen und man kann sie auch bearbeiten.
wenn ich sie dort bearbeite, löscht es ersteinmal den kompletten inhalt und schreibt natürlich das rein, was ich in die box reingeschrieben hatte.
ich möchte aber nicht, dass alles gelöscht wird, sondern nur ein bestimmter bereich verändert wird. dieser bestimmte bereich wird mir jedoch schon direkt in der textbox angezeigt.
Hier ein besseres Beispiel was passiert:
also, alles was zwischen /*%platzhalter%*/ und /*%platzhalter2%*/ steht wird via preg_replace rausgeschnitten und in eine textbox eingefügt um nur diesen bestimmten bereich anzuzeigen (wird ja auch gemacht).
der rest bleibt unsichtbar
wenn ich die datei nun über die textbox bearbeite, löscht es jedoch alles was in der externen PHP-datei geschrieben ist, und ersetzt es durch das was ich rein geschrieben hatte. z.b. "Haus"
das ergebnis:
Der code:
freue mich auf eure hilfe!!
dieses kleine scriptchen zeigt mir nun als Ausgabe eine bestimmte textstelle (aus einer externen php-Datei) mit Hilfe von Regex an.
die verkürzte ausgabe ist in einer textbox zu sehen und man kann sie auch bearbeiten.
wenn ich sie dort bearbeite, löscht es ersteinmal den kompletten inhalt und schreibt natürlich das rein, was ich in die box reingeschrieben hatte.
ich möchte aber nicht, dass alles gelöscht wird, sondern nur ein bestimmter bereich verändert wird. dieser bestimmte bereich wird mir jedoch schon direkt in der textbox angezeigt.
Hier ein besseres Beispiel was passiert:
PHP-Code:
Hans
Peter
/*%platzhalter%*/
Klaut // Von hier
Anna // Bis hier
/*%platzhalter2%*/
Hund
Katze
Maus
der rest bleibt unsichtbar
wenn ich die datei nun über die textbox bearbeite, löscht es jedoch alles was in der externen PHP-datei geschrieben ist, und ersetzt es durch das was ich rein geschrieben hatte. z.b. "Haus"
das ergebnis:
PHP-Code:
//Früher stand in der php datei das hier:
Hans
Peter
/*%platzhalter%*/
Klaut // Von hier
Anna // Bis hier
/*%platzhalter2%*/
Hund
Katze
Maus
//wenn ich in die textbox "haus" rein schreibe, löscht es das ganze und schreibt "haus "rein.
//was ich eigentlich wollte:
Hans
Peter
/*%platzhalter%*/
Haus //an diese stelle soll es hin
/*%platzhalter2%*/
Hund
Katze
Maus
PHP-Code:
$datei = "/http/htdocs/Webseite/php/menue.php";
if (isset($_POST['abspeichern'])) {
if (is_writable($datei)) {
if (!$handle = fopen($datei, "w+")) {
echo '<center>';
print "Fehler: Die Datei Namens <b> $datei </b> konnte nicht geöffnet werden!";
echo '</center>';
exit;
}
if (!fwrite($handle, $_POST['inhalt'])) {
echo '<center>';
print "Fehler: Schreiben in die Datei Namens <b> $datei </b> ist nicht möglich!";
echo '</center>';
exit;
}
echo '<center>';
print "Die Datei <b> $datei </b> wurde Erfolgreich gespeichert!";
echo '</center>';
fclose($handle);
}
else {
echo '<center>';
print "Die Datei <b> $datei </b> ist nicht schreibbar! ";
echo '</center>';
}
}
else {
$datei_content = file_get_contents($datei);
$text01 =preg_replace('/.*%001%(.*)%wer%.*/s', '\1', $datei_content);
$text02 =preg_replace('/.*%002%(.*)%rtz%.*/s', '\1', $datei_content);
}
echo '<center><form action="'.$_SERVER['SCRIPT_NAME'].'" method="POST"> <textarea name="inhalt" cols="15" rows="1">'.(substr($text01,8, -15)).'</textarea>
<input type="submit" name="abspeichern" value="Speichern" /></center>';
Kommentar