Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]fopen i inne, edycja pliku formularzem...?
MenzoX
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.01.2009

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


Witam, to mój pierwszy post tutaj, nie zdążyłem przeczytać jeszcze regulaminu, ale opowiadał mi go sąsiad, szukałem, ale nie znalazłem, na phpedii owszem, coś było, ale nie odpowiadało mi na pytanie, sąsiad czytał regulamin rok temu bodaj, więc coś mogło się zmienić, on też z resztą nie zna odpowiedzi na pytanie.

Do rzeczy:
Hipotetycznie, posiadam tablicę asocjacyjną, wielowymiarową np.
$vbasic = array('vwpis' = array(), 'vpodpis' = array(), 'vmail' = array());

Owszem, mogę zrobić coś takiego za każdym razem:
  1. <?php
  2. $vbasic['vwpis'][] = "xxx";
  3. ?>

I dla każdej pozycji w tablicy to samo, z inną treścią. Ale można by jakoś napisać skrypt, powiedzmy vdopis.php , w którym, w formularzu, jest textarea, do której coś wpiszę (tagując htmlem), i wtedy zostanie dodane do do pliku z $vbasic w jakimś pliku (pod definicją(?) $vbasic):
  1. <?php
  2. <nowa linia>
  3. <nowa linia>
  4. vbasic['vwpis'][] = "TREŚĆ Z TEXTAREA'Y";
  5. <nova linia>
  6. <nova linia>
  7. ?>


I żeby zawsze dopisywało ponad wcześniejszym dopisem, a pod definicją(?) $vbasic.

Tyle. Z góry dziękuję za pomoc (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)
(IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif)

Aha, pytanie xP :

Jak coś takiego napisać? Sugestie?

Ten post edytował MenzoX 3.01.2009, 17:37:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


Nie wiem czy do końca o to chodzi ale może pomoże
Robisz tak
  1. <?php
  2. $tekst = "aaaaaaaaaa";
  3. $test = "<?php\n";
  4. $test .= "$"."test = "."\"".$tekst."\";\n";
  5. $test.= "?>";
  6. $temp = fopen("test1.php","w");
  7. if (fwrite($temp, $test)) {
  8. fclose($temp);
  9. }
  10. ?>

I potem tworzysz pusty plik test1.php i zmieną $tekst zapisze w tym plik test1.php
I przy pomocy pętli zapisujesz to do pliku

Ten post edytował kefirek 3.01.2009, 22:48:40
Go to the top of the page
+Quote Post
MenzoX
post
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.01.2009

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


Cytat(kefirek @ 3.01.2009, 22:36:55 ) *
Nie wiem czy do końca o to chodzi ale może pomoże
Robisz tak
  1. <?php
  2. $tekst = "aaaaaaaaaa";
  3. $test = "<?php\n";
  4. $test .= "$"."test = "."\"".$tekst."\";\n";
  5. $test.= "?>";
  6. $temp = fopen("test1.php","w");
  7. if (fwrite($temp, $test)) {
  8. fclose($temp);
  9. }
  10. ?>

I potem tworzysz pusty plik test1.php i zmieną $tekst zapisze w tym plik test1.php
I przy pomocy pętli zapisujesz to do pliku



Stary, jesteś boski! (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Pomogłeś mi i mojemu sąsiadowi, niech Bóg... nieważne... Gdzie ten przycisk Pomógł?
Otóż właśnie sęk w tym, że nie umiałem posłużyć się fopen i fclose, ale to nawet proste (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Aha, i mam pytanko jeszcze:
OK, ten kod pisze w pliku, dzięki! Ale co zrobić, żeby nie kasował zawartości pliku, przy dopisywaniu, oraz żeby potem dopisywał w określonej linii (albo określonej liczbie znaków od początku pliku)?

Ten post edytował MenzoX 4.01.2009, 00:15:33
Go to the top of the page
+Quote Post
carck3r
post
Post #4





Grupa: Zarejestrowani
Postów: 40
Pomógł: 2
Dołączył: 9.11.2008

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


Cytat(MenzoX @ 4.01.2009, 00:13:04 ) *
Stary, jesteś boski! (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Pomogłeś mi i mojemu sąsiadowi, niech Bóg... nieważne... Gdzie ten przycisk Pomógł?
Otóż właśnie sęk w tym, że nie umiałem posłużyć się fopen i fclose, ale to nawet proste (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Aha, i mam pytanko jeszcze:
OK, ten kod pisze w pliku, dzięki! Ale co zrobić, żeby nie kasował zawartości pliku, przy dopisywaniu, oraz żeby potem dopisywał w określonej linii (albo określonej liczbie znaków od początku pliku)?


Żeby nie kasował przy dopisywaniu musisz zastosować tryb 'ab', czyli np.:
  1. <?php
  2. fopen("$DOCUMENT_ROOT/teksty/tekst.txt",'ab');
  3. ?>


pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 10:36