Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Panel edycji plików z serwera
-zmarcin-
post
Post #1





Goście







(IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

Wpadłem na pomysł, że fajnie byłoby stworzyć panel do edycji stron mojego serwisu, który by wykorzystywał php.

Widzę to tak, że dostęp do katalogu, w którym są pliki tworzące panel, jest chroniony hasłem.
Ponieważ chcę maksymalnie zautomatyzować proces edycji, myślę o czymś takim:


1. Aby rozpocząć edycję jakiegoś pliku, podaję jego pełną nazwę (no, oczywiście muszę też pamiętać o ścieżce dostępu), wpisując ją do formularza, który wyswietla się po zalogowaniu (np.
<INPUT TYPE=text NAME=plik>
), po czym klikam submit.

2. Otwiera mi się strona edycji, która pobiera z formularza zmienną $plik i otwiera jodpowiedni plik do edycji (za pomocą textarea).

3. Wszystko kończy plik zapisz.

Czy ktoś ma pomysł, jak takie cudo zrobić, o ile to możliwe, ale w php prawie wszystko jest możliwe, więc może i to. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

--
4. A na koniec - czy jest możliwe utworzenie w takim panelu zupełnie nowych plików, o rozszerzeniu .txt, .php?
(IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
_Mateo
post
Post #2





Grupa: Zarejestrowani
Postów: 189
Pomógł: 0
Dołączył: 4.03.2005
Skąd: Jaworzno

Ostrzeżenie: (0%)
-----


Mam dzisiaj super nastroj, wiec zapodam gotowca (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

plik form.htm:
  1. <form action="edytuj.php" method=post>
  2. Sciezka: <input type="text" name="plik" />
  3. <input type="submit" value="klik" />
  4. </form>


plik edytuj.php:
  1. <?php
  2.  
  3. if(file_exists($_POST['plik'])) {
  4.     
  5.     echo '<form method=post action=\"zapisz.php\">
  6.     <textarea name=\"tresc\"> '.
  7.     file_get_contents($_POST['plik'])
  8.     .'</textarea><input type=\"hidden\" name=\"file\" value=\"'.$_POST['plik'].'\" />
  9.     <input type=\"reset\" value=\"przywroc domyslne\" />
  10.     <input type=\"submit\" value\"Zapisz zmiany\" />
  11.     </form>';
  12. }
  13. else {
  14. echo('Nie ma takowego pliku '.$_POST['plik']);
  15. }
  16.  ?>


plik zapisz.php:
  1. <?php
  2.  
  3. if(!empty($tresc)) {
  4.  
  5.     $handle=fopen($_POST['file'], 'w');
  6.     fputs($handle, $_POST['tresc']);
  7.     fclose($handle);
  8.     echo 'Zapisano zmiany';
  9. }
  10.  
  11. else {
  12.     echo 'nie dales tresci pliku';
  13. }
  14. ?>


i tyle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
edit: jeszcze sposob sugerowany przez @ociu - musiosz zmienic tylko plik form.htm (musi miec rozszezenie php, a zatem form.php) i plik edytuj.php:

form.php
  1. <?php
  2.  
  3. $handle=opendir('katalog');
  4. while($file=readdir($handle)) {
  5. echo &#092;"<a href=\"edytuj.php?plik=$file\">$file</a>\";
  6. }
  7.  
  8. ?>


edytuj.php
[php]
<?php

if(file_exists('katalog/'.$_GET['file'])) {

echo '<form method=post action="zapisz.php">
<textarea name="tresc"> '.
file_get_contents('katalog/'.$_GET['file'])
.'</textarea><input type="hidden" name="file" value="'.$_POST['plik'].'" />
<input type="reset" value="przywroc domyslne" />
<input type="submit" value"Zapisz zmiany" />
</form>';
}
else {
echo('Nie ma takowego pliku '.$_POST['plik']);
}
?>
php]
Go to the top of the page
+Quote Post

Posty w temacie
- zmarcin   Panel edycji plików z serwera   19.07.2005, 20:17:12
- - Ociu   1. Może lepiej czytanie katalogu i lista plików do...   19.07.2005, 20:26:54
- - MissMoneypenny   Myślę że ten artykuł może Ci pomóc. Tam jest wyjas...   19.07.2005, 20:36:49
- - _Mateo   Mam dzisiaj super nastroj, wiec zapodam gotowca ...   19.07.2005, 20:41:50
- - zmarcin   Nie chce mi to działać - wykonuje się instrukcja e...   19.07.2005, 20:55:11
- - _Mateo   aha... sprobuj w warunku zamiast !empty(...   19.07.2005, 20:58:58
- - Guest   Wciąż to nie działa   19.07.2005, 21:24:26
- - Ociu   Lepiej skorzystać tutaj z file_put_contents...   19.07.2005, 21:25:52
- - zmarcin   _Mateo, a wyprobowales u siebie ten skrypt?   19.07.2005, 21:26:26
- - _Mateo   Skrypt powinien działać... napisany jest dobrze. A...   19.07.2005, 21:27:43
- - zmarcin   tzn. chodzi Ci czy wypełniam input'a? -> ta...   19.07.2005, 21:30:31
- - _Mateo   aha, przeciez tam nie ma byc isset($_POST[...   19.07.2005, 21:34:29
- - zmarcin   U Ciebie działa? No to ja już nie wiem, co jest g...   19.07.2005, 21:35:33
- - _Mateo   Juz dzialają wszystkie, i u ciebie tez powinny. Na...   19.07.2005, 21:38:56
- - zmarcin   Widzę, że jestem ciężkim przypadkiem, odpornym na ...   19.07.2005, 21:47:08
- - _Mateo   nr 1. przy testach sworzyles katalog i masz w nim ...   19.07.2005, 21:51:32
- - zmarcin   Najlepiej by było, jakbyś podał kod tych 3 plików,...   19.07.2005, 21:53:27
- - _Mateo   form.php: [PHP] pobierz, plaintext <?php...   19.07.2005, 22:02:40
- - zmarcin   Mam wciąż ten sam problem - po otwarciu pliku form...   19.07.2005, 22:06:17
- - _Mateo   pojecia nie mam co jest nie tak - skrypt w istocie...   19.07.2005, 22:15:10
- - zmarcin   W każdym razie dzięki wielkie za pomoc!!...   19.07.2005, 22:19:47


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 15:29