Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

verzeichnisinhalt als pulldown + editieren selektierten datei

Hey,

ich hab schon das gnaze forum hier durchsucht nur noch keinen lösungsansatz zu meinem problem gefunden!

ich hab in einem verzeichniss auf meinem server viele txt-dateien liegen! ich möchte nun mit php den verzeichnisinhalt auflisten lassen! nach möglichkeit in einem pulldown-menü, dort will ich dann die datei selektieren und der inhalt der selektierten datei soll in einer textarea (zum editieren) geöffnet werden!

alles soweit nicht das problem, auflisten von verzeichnisinhalt geht ja einfach mit:

Code:                   In Zwischenablage kopieren (nur IE)
1">

um eine datei auf dem server zu editieren geht ja auch mit:
Code:                   In Zwischenablage kopieren (nur IE)
2">

nur wie schaffe ich den zwischenschritt das ich eben die datei auswählen kann und nicht fest kodieren muss wie durch "$datei = "/kunden/sites/blogs/10.txt";"..

bin für jeden hilfe dankbar!

grüsse
Hier gehts zum Orginal Eintrag "verzeichnisinhalt als pulldown + editieren selektierten datei" im Forum

Antworten

packst das in ein form und dann etwa so:
Code:                   In Zwischenablage kopieren (nur IE)
3">

auf der nächsten dann:
Code:                   In Zwischenablage kopieren (nur IE)
4">




2.

Hi!

Also ich glaube das ist doch dann nicht so schwer. Bin zwar auch nicht so gut in PHP, aber ich denke wenn du den ersten Teil ungefähr so umbaust:


<form name="editieren" method="post" action="self">
<select name="filename" size="1">
<?
$verz=opendir ('/kunden/sites/blogs/');
while ($file = readdir ($verz)) {
if($file != "." && $file != "..") echo "<option value='$file'>$file</option>";
}
closedir($verz);
?>
</select>
<input type="submit" value="Bearbeiten"></form>



Dann hast du doch schon mal das DropDown Menu. Nun musst du in die PHP Datei eine Abfrage machen, ob "filename" existiert.




<?php
if(isset($filename)){
$fp = fopen ("$filename", "r+");
$alt = fread($fp, filesize($filename));
fclose ($fp);
?>

<form action="<?php $PHP_SELF ?>">

<textarea name="eingabe" cols="100" rows="20">
<?php echo $alt; ?>
</textarea>

<input type="submit" value="Abschicken">

}



Also ich habe das jetzt nicht getestet, aber so ungefähr müsste das doch laufen.
Evt musst du $filename noch um den Ordner erweitern, dass weiß ich aber nicht ;-)

Bis dann
Hauke


3.

Hey hauke,

danke das ist genau das was ich wollte nur es geht net so wie ich will :-)

wenn ich das file dann im DropDown Menu selektiere und auf "bearbeiten" klicke kommt immer:

Code:                   In Zwischenablage kopieren (nur IE)
5">

eine frage noch, wo wird denn die variable $filename definiert, woher kennt php die denn?

danke und grüsse


4.

Da solltet ihr mal dringends in der PHP-Doku zum Stichwort "register_globals" nachlesen.


5.

Hey,

Das ist mir nach dem Abschicken auch aufgefallen. Das Probelm bei mir ist, dass ich die register_globals immer ausschalte, weil ich früher eine Homepage für meine Eltern programmiert habe und in der damaligen Version waren die global variablen immer standartmäßig auf "off", und daher konnte ich immer mit $variable auf die Werte zugreifen. Da die neuen Version die gloable Variablen auf on gesetzt haben, ging die Homepage meine Eltern nicht mehr und das war mir zu viel Arbeit, die ganze Homepage zu verändern. Daher arbeite ich immer noch mit $variable.
Ist zwar nicht so schön, aber was solls.

Also musst müsstest du das abändern in:




<form name="editieren" method="post" action="<?php $PHP_SELF ?>">
<select name="filename" size="1">
<?php
$verz=opendir ('/srv/www/htdocs/web4/html/');
while ($file = readdir ($verz)) {
if($file != "." && $file != "..") echo "<option value='$file'>$file</option>";
}
closedir($verz);
?>
</select>
<input type="submit" value="Bearbeiten"></form>

<?php
if(isset($_POST[filename])){
$fp = fopen ("$_POST[filename]", "r+");
$alt = fread($fp, filesize($_POST[filename]));
fclose ($fp);
?>

<form action="<?php $PHP_SELF ?>">

<textarea name="eingabe" cols="100" rows="20">
<?php echo $alt; ?>
</textarea>

<input type="submit" value="Abschicken">
<?php

}

?>



-- Der Fehler lag daran, dass das erste Forumlar action="self" hatte, und das musste natürlich action="<?php $PHP_SELF ?>" sein. ---



Sollte jetzt aber gehen.
Bis dann
Hauke


6.

Zitat:
das war mir zu viel Arbeit, die ganze Homepage zu verändern.
schlechte ausrede schau mal hier http://www.phptt.de/showschnipsel.php?kat=16&id=34
Zitat:
Der Fehler lag daran, dass das erste Forumlar action="self" hatte, und das musste natürlich action="<?php $PHP_SELF ?>" sein. ---

besser ist action="<?php $_SERVER['PHP_SELF'] ?>"


7.

Cool, wenn das geht, dann ist das doch nicht so viel arbeit, wie ich gedacht habe.

Danke schön
mfg Hauke


Hier gehts zum Orginal Eintrag "verzeichnisinhalt als pulldown + editieren selektierten datei" im Forum
 
phpforum.de | Impressum | Handy Bundles