Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> aktualizacja danych z pliku txt do mysql, aktualizacja danych z pliku txt do bazy danych mysql
programista28
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 2
Dołączył: 14.05.2011

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


Witam szanowne grono specjalistów moj problem dotyczy aktualizacji plików z pliku.txt do bazy danych mysql

plik txt jest w postaci :

The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com
The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com
The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com
The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com
The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com
The Body Odd - msnbc.com{http://bodyodd.msnbc.msn.com/{Irreverent insights about all things medical{bodyodd.msnbc.msn.com

czyli jak widac dane rozdzielone sa separatorem {

mam do tego taki kod :

<?php
$fp = fopen('wyszukane2.txt','r');
if (!$fp) {echo 'ERROR: Unable to open file.</table></body></html>'; exit;}
$loop = 0;
while (!feof($fp)) {
$loop++;
$line = fgets($fp, 1024); //use 2048 if very long lines
$field[$loop] = explode ('{', $line);
echo '
<tr>
<td>'.$field[$loop][0].'</td>
<td>'.$field[$loop][1].'</td>
<td>'.$field[$loop][2].'</td>
<td>'.$field[$loop][3].'</td><br>
</tr>';
$fp++;

$first=$field[$loop][0];
$last=$field[$loop][1];


$phone="http://www.Glasgow.pl";








$username="root";
$password="krasnal";
$database="frm1";



mysql_connect(localhost,$username,$password);

mysql_select_db('frm1');

if (4>2){
$dodaj ="UPDATE glob SET tytul='".$first."',opis='".$last."' WHERE adres='".$phone."'"; /////////////////update na podstawie id_gr,id_ra,id_us///
$results = mysql_query($dodaj) or die (mysql_error());
echo "zupdatowalem";

}

}

echo "Rekord zaktualizowany";
mysql_close();

fclose($fp);


echo "<b>Zaktualizowane</b>";


?>

ale niestety nie dziala i jeszcze chcialbym zapytac co z aktualizacja danych jesli mialbym ich np 20 000 wynikow

bo przy wiekszej ilosci uzyskuje taki komunikat

Fatal error: Maximum execution time of 120 seconds exceeded in c:\usr\apache\httpd\html\plaski\plaski2.php on line 41

z góry dziekuję za wszelką pomoc
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


Pojawiaja Ci sie jakies bledy? Mozesz przeniesc laczenie z baza na sam poczatek, bo tutaj dla kazdego rekordu na nowo laczysz sie z baza.

Uzyj bbcode poprawnie bo ciezko sie to czyta.
Go to the top of the page
+Quote Post
programista28
post
Post #3





Grupa: Zarejestrowani
Postów: 88
Pomógł: 2
Dołączył: 14.05.2011

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


  1. <?php
  2. $fp = fopen('wyszukane2.txt','r');
  3. if (!$fp) {echo 'ERROR: Unable to open file.</table></body></html>'; exit;}
  4. $loop = 0;
  5. while (!feof($fp)) {
  6. $loop++;
  7. $line = fgets($fp, 1024); //use 2048 if very long lines
  8.  
  9.  
  10.  
  11. $username="root";
  12. $password="krasnal";
  13. $database="frm1";
  14.  
  15.  
  16. mysql_connect(localhost,$username,$password);
  17.  
  18.  
  19.  
  20. $field[$loop] = explode ('{', $line);
  21. <tr>
  22. <td>'.$field[$loop][0].'</td>
  23. <td>'.$field[$loop][1].'</td>
  24. <td>'.$field[$loop][2].'</td>
  25. <td>'.$field[$loop][3].'</td><br>
  26. </tr>';
  27. $fp++;
  28.  
  29. $first=$field[$loop][0];
  30. $last=$field[$loop][1];
  31.  
  32.  
  33. $phone="http://www.Glasgow.pl";
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40. if (4>2){
  41. $dodaj ="UPDATE glob SET image_caption='".$first."',image_username='".$last."' WHERE adres='".$phone."'"; /////////////////update na podstawie id_gr,id_ra,id_us///
  42. $results = mysql_query($dodaj) or die (mysql_error());
  43. echo "zupdatowalem";
  44.  
  45. }
  46.  
  47. }
  48.  
  49. echo "Rekord zaktualizowany";
  50.  
  51. fclose($fp);
  52.  
  53.  
  54. echo "<b>Zaktualizowane</b>";
  55.  
  56.  
  57. ?>


W tej chwili plik odczytuje wszystkie wyniki az do czasu wystapienia bledu:

Fatal error: Maximum execution time of 120 seconds exceeded in c:\usr\apache\httpd\html\plaski\plaski2.php on line 44

Uaktualnia wyniki gdzie jako adres jest http://www.glasgow.pl
ale dodaje wszedzie ostatni wynik ktory zostanie przeczytany przed wystapieniem bledu

Edycja Skasowanie 3 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 4 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 5 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 6 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 7 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 8 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 9 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 10 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 11 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 12 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 13 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 14 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 15 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 16 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 17 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 18 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 19 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 20 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 21 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 22 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 23 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 24 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 25 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 26 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 27 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 28 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 29 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl
Edycja Skasowanie 30 New Snapple Taste-Test: No HFCS, Fewer Calories. B... http://www.fastcompany.com/blog/linda-tischler/des... http://www.Glasgow.pl


tak to wyglada w tej chwili (IMG:style_emoticons/default/sad.gif)

p.s. co do bbcode jeszcze nie bardzo umiem tego uzywac (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


zacznij od przeniesienia linii 16 i 18 na 2 i 3 linijke tego skryptu.
Go to the top of the page
+Quote Post
programista28
post
Post #5





Grupa: Zarejestrowani
Postów: 88
Pomógł: 2
Dołączył: 14.05.2011

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


Cytat(ActivePlayer @ 9.07.2011, 11:59:20 ) *
zacznij od przeniesienia linii 16 i 18 na 2 i 3 linijke tego skryptu.


  1. <?php
  2.  
  3. $username="root";
  4. $password="krasnal";
  5.  
  6.  
  7.  
  8. mysql_connect(localhost,$username,$password);
  9.  
  10.  
  11. $fp = fopen('wyszukane2.txt','r');
  12. if (!$fp) {echo 'ERROR: Unable to open file.</table></body></html>'; exit;}
  13. $loop = 0;
  14. while (!feof($fp)) {
  15. $loop++;
  16. $line = fgets($fp, 1024); //use 2048 if very long lines
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26. $field[$loop] = explode ('{', $line);
  27. <tr>
  28. <td>'.$field[$loop][0].'</td>
  29. <td>'.$field[$loop][1].'</td>
  30. <td>'.$field[$loop][2].'</td>
  31. <td>'.$field[$loop][3].'</td><br>
  32. </tr>';
  33. $fp++;
  34.  
  35. $tytul=$field[$loop][0];
  36. $opis=$field[$loop][1];
  37.  
  38.  
  39. $phone="http://www.Glasgow.pl";
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46. if (4>2){
  47. $dodaj ="UPDATE glob SET tytul='".$first."',opis='".$last."' WHERE adres='".$phone."'"; /////////////////update na podstawie id_gr,id_ra,id_us///
  48. $results = mysql_query($dodaj) or die (mysql_error());
  49. echo "zupdatowalem";
  50.  
  51. }
  52.  
  53. }
  54.  
  55. echo "Rekord zaktualizowany";
  56.  
  57. fclose($fp);
  58.  
  59.  
  60. echo "<b>Zaktualizowane</b>";
  61.  
  62.  
  63. ?>


prosze bardzo musialem również przenieść $username i $password wymagane do polaczenia



Go to the top of the page
+Quote Post
ActivePlayer
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


dziekuje bardzo;-) zapomniales napisać czy cos sie zmieniło;-)
ile masz linii w tym pliku?

Ten post edytował ActivePlayer 9.07.2011, 14:08:24
Go to the top of the page
+Quote Post
prachwal
post
Post #7





Grupa: Zarejestrowani
Postów: 171
Pomógł: 18
Dołączył: 13.03.2009
Skąd: lublin

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


load data infile.... waszym przyjacielem jest

robienie tego skryptem to rzeźba!, ładowanie w trybie wsadowym jest setki razy szybsze
Go to the top of the page
+Quote Post
programista28
post
Post #8





Grupa: Zarejestrowani
Postów: 88
Pomógł: 2
Dołączył: 14.05.2011

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


Cytat(ActivePlayer @ 9.07.2011, 15:07:58 ) *
dziekuje bardzo;-) zapomniales napisać czy cos sie zmieniło;-)
ile masz linii w tym pliku?



W zwiazku z przeniesieniem zapytania zmniejszyl sie czas wykonywania pliku
jednakze rezultat jest ten sam co byl (nic sie nie zmienilo pod tym wzgledem nadal wystepuje blad (IMG:style_emoticons/default/sad.gif)



Fatal error: Maximum execution time of 120 seconds exceeded in c:\usr\apache\httpd\html\plaski\plaski2.php on line 41



Cytat(prachwal @ 9.07.2011, 17:44:48 ) *
load data infile.... waszym przyjacielem jest

robienie tego skryptem to rzeźba!, ładowanie w trybie wsadowym jest setki razy szybsze


? czy ta funkcja obsluguje rowniez aktualizacje ?


znalazlem taki kod dla wstawienia danych ?

$load="LOAD DATA INFILE plik.csv INTO TABLE rotacja FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' ignore 0 lines";

a jak by on musial wygladac dla aktualizacji ? hmm
i czy wogole to jest mozliwe ?


Cytat(prachwal @ 9.07.2011, 17:44:48 ) *
load data infile.... waszym przyjacielem jest

robienie tego skryptem to rzeźba!, ładowanie w trybie wsadowym jest setki razy szybsze



? czy ta funkcja obsluguje rowniez aktualizacje ?


znalazlem taki kod dla wstawienia danych ?

$load="LOAD DATA INFILE plik.csv INTO TABLE rotacja FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' ignore 0 lines";

a jak by on musial wygladac dla aktualizacji ? hmm
i czy wogole to jest mozliwe ?

Cytat(prachwal @ 9.07.2011, 17:44:48 ) *
load data infile.... waszym przyjacielem jest

robienie tego skryptem to rzeźba!, ładowanie w trybie wsadowym jest setki razy szybsze


? czy ta funkcja obsluguje rowniez aktualizacje ?


znalazlem taki kod dla wstawienia danych ?

$load="LOAD DATA INFILE plik.csv INTO TABLE rotacja FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' ignore 0 lines";

a jak by on musial wygladac dla aktualizacji ? hmm
i czy wogole to jest mozliwe ?

Cytat(prachwal @ 9.07.2011, 17:44:48 ) *
load data infile.... waszym przyjacielem jest

robienie tego skryptem to rzeźba!, ładowanie w trybie wsadowym jest setki razy szybsze


czy ta funkcja obsluguje rowniez aktualizacje ?


znalazlem taki kod dla wstawienia danych ?

$load="LOAD DATA INFILE plik.csv INTO TABLE rotacja FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' ignore 0 lines";

a jak by on musial wygladac dla aktualizacji ? hmm
i czy wogole to jest mozliwe ?
Go to the top of the page
+Quote Post
prachwal
post
Post #9





Grupa: Zarejestrowani
Postów: 171
Pomógł: 18
Dołączył: 13.03.2009
Skąd: lublin

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


ładujesz do jakiejś tabeli tymczasowej i dopiero robisz update np. za pomocą insert into on duplicate key
Go to the top of the page
+Quote Post
programista28
post
Post #10





Grupa: Zarejestrowani
Postów: 88
Pomógł: 2
Dołączył: 14.05.2011

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


Cytat(prachwal @ 11.07.2011, 00:16:46 ) *
ładujesz do jakiejś tabeli tymczasowej i dopiero robisz update np. za pomocą insert into on duplicate key



brzmi sensownie na pewno spróbuję (IMG:style_emoticons/default/smile.gif)
dzieki

jednak wczytywanie za pomoca skryptu również mnie interesuje (IMG:style_emoticons/default/smile.gif)
wiec nie zamykam wątku
Go to the top of the page
+Quote Post

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: 3.10.2025 - 04:43