Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Zapis danych z formularza do pliku., Nie potrafię zapisać danych z formularza w pliku tekstowym.
majkel1994
post 4.07.2010, 10:07:48
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 4.07.2010

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


Nie potrafię zapisać danych z formularza w pliku tekstowym. A chodzi mi o ten wycinek kodu:
Kod
<font size=40><font color="navy"><font face="arial"><i>Wrzuciłeś film!</p></i></font></font></font>
Filmik:<br>
<?php echo $_GET ['link'] ?></p>
Wrzucone przez:<br>
<?php echo $_GET ['ksywa'] ?></p>
$links=$_GET['link'];
$ksywa=$_GET ['ksywa'];
Rodzaj: <br>
<?php switch($_GET['zamow']){
   case "Humor":
     echo "Humor";
    
    
    
     break;
   case "Bramki":
     echo "Bramki";
     break;
   case "Kibice":
     echo "Kibice";
     break;
    case "Gry":
     echo "Gry";
     break;
   }
?>
  

</b></td></tr></table>


</body>



Ten kod dziala dobrze, ale kiedy do switcha dodaje polecenie zapisu do pliku(probowalem z kilku stron, kursow)(otwarcie pliku, pobranie danych, zamkniecie pliku, dopisanie nowych danych, otwarcie pliku, zapisanie danych i zamkniecie) za kazdym razem pokazuje sie blad. kiedy dopisze np.: $link=$_GET['link']; przed switchem to blad przesuwa sie o linijke. co zrobic zeby zapisywalo mi np humor do humor.txt itd.(pliki mam stworzone w folderze. Dodam ze czytanie danych z pliku za pomoca readfile() dziala. A oto kod ktory wstawilem do zapisu:
Kod
// wczytanie starych danych
   // otwarcie pliku do odczytu
   $fp = fopen("humor.txt", "r");
  
   //odczytanie danych
   $stareDane = fread($fp, filesize("humor.txt"));
  
   // zamknięcie pliku
   fclose($fp)
  
   // stworzenie nowych danych
   $noweDane  = $_GET['link'];
//probowalem tutaj dodac takze zmienne $link tak jak pisalem wyzej.
   $noweDane .= $stareDane;
  
// zapisanie nowych danych
   // otwarcie pliku do zapisu
   $fp = fopen("humor.txt", "w");
  
   // zapisanie danych
   fputs($fp, $noweDane);
  
   // zamknięcie pliku
   fclose($fp);

Prosze o pomoc.
Go to the top of the page
+Quote Post
darko
post 4.07.2010, 10:25:58
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Nie pokazałeś samego formularza, ani komunikatu błędu, co moze być kluczowe. Jeśli chcesz dopisywać dane do końca pliku wystarczy, że podasz funkcji fopen jako tryb "a+". Zastanowiłbym się jednak w Twoim przypadku nad użyciem funkcji file_get_contents() and file_put_contents() jako bardziej wydajne przy większej ilości danych.


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
bastard13
post 4.07.2010, 10:30:28
Post #3





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Jeżeli chcesz dopisać na końcu pliku to wystarczy:
  1. $fp = fopen("humor.txt", "a+"); //otwieranie pliku do zapisu i odczytu, zapis na końcu pliku
  2. fwrite($fp,$noweDane); //dodaje nowe dane na końcu pliku
  3. fclose($fp);


--------------------
Go to the top of the page
+Quote Post
amii
post 4.07.2010, 10:33:18
Post #4





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Może spróbuj tak, daj też na początku raportowanie błędów:
  1. ini_set( 'display_errors', 'On' );
  2. error_reporting( E_ALL );



  1. $stareDane = file_get_contents('humor.txt');
  2.  
  3. // stworzenie nowych danych
  4. $noweDane = trim($_GET['link']);
  5. //probowalem tutaj dodac takze zmienne $link tak jak pisalem wyzej.
  6. $noweDane .= $stareDane;
  7.  
  8. // zapisanie nowych danych
  9. // otwarcie pliku do zapisu
  10. $fp = fopen("humor.txt", "w");
  11.  
  12. // zapisanie danych
  13. fwrite($fp, $noweDane);
  14.  
  15. // zamknięcie pliku
  16. fclose($fp);


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
majkel1994
post 4.07.2010, 12:06:00
Post #5





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 4.07.2010

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


Problem rozwiązany. Dziękuje amii'emu. Temat do zamknięcia.( Wczesniejszych rozwiazan nie sprawdzalem, poniewaz zalezy mi na tym ,aby dane byly dopisane do pliku na jego poczatku)
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: 1.07.2025 - 07:45