Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapisywanie do pliku nie działa
-Peter15-
post 2.02.2005, 10:48:23
Post #1





Goście







Mam postawionego apache z php i wszystkimi modami co są w instalacji fedory core 3.
mam skrypta na zapis pliku:

$string="Hello world";


$plik=fopen("chat.txt", "w");

fputs($plik, "$string\n");

ale nie działa mi on. Chodzi mi o to by do pliku byly dopisywane linijki za pomocą pla formularza, ale jak narazie nawet to nie chce działać

Próbowałe jeszcze coś takiego ale tesz nie działa sad.gif
  1. <?php
  2.  
  3. $dane = &#092;"tekst do wprowadzenian\";
  4.  
  5. $file = &#092;"baza.txt\";
  6.  
  7. $fp = fopen($file, &#092;"a\");
  8.  
  9. flock($fp, 2);
  10.  
  11. fwrite($fp, $dane);
  12.  
  13. flock($fp, 3);
  14.  
  15. fclose($fp);
  16. ?>


Czego to wina i jak to naprawić, jakaś zmiana w pliku php.ini czy coś z kodem


---
poprawiłem bbcode, ponieważ Peter15 napisał go jako niezarejestrowany.
Peter15:
olo
Go to the top of the page
+Quote Post
scanner
post 2.02.2005, 11:30:10
Post #2





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Brak BBCode.
Popraw, albo zamknę.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
Peter15
post 2.02.2005, 13:17:21
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 2.02.2005

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


Cytat
Brak BBCode.
Popraw, albo zamknę.

Chetnie ale gdzie tu edycja swoich postów blink.gif A tak wogle to czy te przyciski nie mogły by być po Polsku
A już wiem o co chodzi, to mam to jeszcze raz pisać?? Dla mnie to obojetne ale to troche bez senu. Wyedytować nie moge bo jak to pisałem nie byłem jeszcze zarestrowany

Forgive me

Ten post edytował Peter15 2.02.2005, 13:19:25
Go to the top of the page
+Quote Post
ARJ
post 2.02.2005, 13:34:25
Post #4





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

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


[OT]przecież całe forum jest po polsku[/OT]


--------------------
Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
Go to the top of the page
+Quote Post
Peter15
post 2.02.2005, 13:49:40
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 2.02.2005

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


Dobra nieh i tak będzie ale wie może ktoś wczym tkwi problem w tym kodzie, jak komuś przeszkadza brak tego kode php to moge jeszcze raz napisać, ale prosze was o rade i wyjaśnienie

Przeglądałem sporo skryptów na zapis do pliku txt ale nie działają. Może to wina Apacha którego mam na fedorze 3. Zainstalowany został przy instalacji

Cała zawartośc pliku dol.php, który ma zapisywac to co wpisał użytkownik do pliku:
  1. <HTML>
  2. <HEAD>
  3. <META http-equiv=\"Content-type\"
  4. content=\"text/html; charset=iso-8859-2\">
  5. </HEAD>
  6.  
  7. <BODY BGCOLOR=WHITE TEXT=BLACK>
  8. <FORM method=\"POST\" ACTION=dol.php NAME=formularz>
  9. <INPUT TYPE=TEXT SIZE=80 MAXLENGTH=80 NAME=bzdury>
  10. <input type=\"submit\" name=\"Submit\" value=\"Wy[lij\">
  11.  
  12. <?
  13.  
  14. $peter=$_POST['bzdury'];
  15. // zmienna $dane, która będzie zapisana
  16. // może także pochodzić z formularza np. $dane = $_POST['dane'];
  17. $dane = $peter;
  18.  
  19. // przypisanie zmniennej $file nazwy pliku
  20. $file = &#092;"chat.txt\";
  21.  
  22. // uchwyt pliku, otwarcie do dopisania
  23. $fp = fopen($file, &#092;"a\");
  24.  
  25. // blokada pliku do zapisu
  26. flock($fp, 2);
  27.  
  28. // zapisanie danych do pliku
  29. fwrite($fp, $dane);
  30.  
  31. // odblokowanie pliku
  32. flock($fp, 3);
  33.  
  34. // zamknięcie pliku
  35. fclose($fp); 
  36.  ?>
  37. </FORM>
  38. </BODY>
  39. </HTML>

Co jest źle i jak powinno być. A jeśli jest dobrze to co trzeba zmienić w ustawieniach serwera??

Ok, już wiem w form method powinno być Post
A jak zrobić by dopisywało to się w kolejnej linice??
$dane="<br> $do co wpisal urzytkownik"; Rozwiązałem sam swoje problemy. Coś mnie oświeciło. Wybaczcie początkującemu

Ten post edytował Peter15 2.02.2005, 14:45:21
Go to the top of the page
+Quote Post
Ociu
post 2.02.2005, 18:36:25
Post #6





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




  1. <?php
  2.  
  3. # plik: plik.php
  4. # formularz wyswietla sie gdy damy link plik.php?id=form
  5. switch($_GET['id']) 
  6. {
  7. case form:
  8.  echo '<FORM method=\"POST\" ACTION=plik.php?id=add NAME=formularz>
  9. <INPUT TYPE=TEXT SIZE=80 MAXLENGTH=80 NAME=bzdury>
  10. <input type=\"submit\" name=\"Submit\" value=\"Wy[lij\">
  11. ';  
  12. break;
  13.  
  14. case add:
  15.  $dane=$_POST['bzdury'];
  16. // przypisanie zmniennej $file nazwy pliku
  17. $file = &#092;"chat.txt\";
  18.  
  19. // uchwyt pliku, otwarcie do dopisania
  20. $fp = fopen($file, &#092;"w\");
  21.  
  22. // zapisanie danych
  23. fputs($file, $dane);
  24.  
  25. // zamknięcie pliku
  26. fclose($file);
  27. break;
  28. }
  29.  
  30. ?>

Jako, ze z plików txt jest cienki zmodyfikowałem twój kod.
pozdrawiam

Edit: przejrzałem niektóre kursy i stwierdziłem że kod który podałem jest 'troche' zły. Korzystając z tego poprawiłem troche kod.

Ten post edytował badme 2.02.2005, 18:41:55
Go to the top of the page
+Quote Post
sf
post 2.02.2005, 18:48:48
Post #7





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

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


@badme, jako, że Twój kod jest cienki pozwoliłem sobie go zmodyfkować :}}}}

  1. <?php
  2. $FILE = 'chat.txt';
  3.  
  4. if(isset($_POST['bzdury'])) {
  5. if(is_writable($FILE)) {
  6. $fp = fopen($FILE, &#092;"a\");
  7. fwrite($fp, $_POST['bzdury']);
  8. fclose($fp);
  9. }
  10. else {
  11. echo 'Brak praw do zapisu';
  12. }
  13. }
  14. else {
  15. echo '<form method=\"post\" action=\"'.$_SERVER['PHP_SELF'].'\">';
  16. echo '<input type=\"text\" size=\"80\" maxlenght=\"80\" name=\"bzdury\" />';
  17. echo '</form>';
  18. }
  19. ?>


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 11:26