Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Problem z zapisem danych do bazy z pliku txt
yorgwarez
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 3.04.2010

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


Cześć wszystkim,
Może i mam jakiś prosty problem, którego rozwiązanie pewnie zajmie Wam 1-2 minut, ale naprawdę nie potrafię znaleźć rozwiązania mojego problemu:( Otóż napisałem prosty skrypcik dodawania masowo danych z pliku do bazy mysql:

  1. <?
  2.  
  3. $host = 'localhost';
  4. $user = 'admin';
  5. $passwd = 'admin';
  6. $baza = 'cc2';
  7.  
  8. $plik = fopen("dane.txt", "r");
  9. $dane = fread($plik, filesize('dane.txt'));
  10. $division = '0001';
  11. $password = 'a2FpbmRvdw==';
  12. $disabled = '1';
  13. $dstats = '1';
  14.  
  15. if(mysql_connect($host,$user,$passwd)){
  16. while($kod = fgets($dane)){
  17. // $kod = trim($dane);
  18. $q = mysql_query("INSERT INTO cclpteams(name,division,password,disabled,dstats) VALUES('$dane', '$division', '$password', '$disabled', '$dstats')") or die(mysql_error());
  19. }}
  20. echo "$dane został dodany pomyślnie.";
  21. ?>


Niestety po wykonaniu skryptu wyświetla się następujący błąd:
Warning: fgets(): supplied argument is not a valid stream resource in C:\Program Files\WebServ\httpd-users\cc2\dodawanie_danych.php on line 17

Podejrzewam że rzecz może się rozbijać o dostępy do pliku bądź bazy, ale nie do końca jestem tego pewien. Wszystko uruchamiam na lokalnym serwerze wirtualnym (localhost - WebServ).

Z góry dzięki za tipsy czy porady z Waszej strony. Pozdro smile.gif

Ten post edytował Daiquiri 15.09.2012, 13:32:44
Powód edycji: [Daiquiri]: Poprawiam temat i otwieram ;)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Kshyhoo
post
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




A nie tak:
  1. $plik= fopen("dane.txt", "r");
  2. // ...
  3. while (($dane = fgets($plik, 4096)) !== false) {

?
Skąd zmienna $kod?


--------------------
Go to the top of the page
+Quote Post
yorgwarez
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 3.04.2010

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


Hmmm, teraz błąd zniknął ale niestety nie dodają się rekordy do tabeli... Mimo ze po wykonaniu skryptu wyswietla sie komunikat ze zostaly one dodane do bazy

Plik txt zawiera nazwy klubow bez polskich znakow, przy dwuczlonowych nazwach jest uzyty dolny podkreslnik "_"
Kazdy klub w osobnej linii

Wczesniej dodawal rekordy do bazy ale jako resource_id3 wszystkie, wiec doczytalem ze nalezy uzyc opcji fread..
Go to the top of the page
+Quote Post
Daiquiri
post
Post #4





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Temat: Jak poprawnie zatytulowac watek, Zamykam.
Go to the top of the page
+Quote Post
yorgwarez
post
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 3.04.2010

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


Jakieś pomysły gdzie moglem popelnic blad?;>
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #6





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Pomysł jest taki. Wyświetl sobie za pomocą echo, co wchodzi i wychodzi z Twoich pętli... Użyj też funkcji do sprawdzania, np. print_r i włącz raportowanie błędów. Z błędami i problemami przychodź spowrotem.


--------------------
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 Aktualny czas: 19.08.2025 - 16:09