Witam wszystkich.
Jestem poczatkujacym "programista" php...
Mam problem ze zrobieniem skryptu:
1 - Skrypt musi pobierac dane z pliku cennik.csv, w ktorym sa 2 kolumny z danymi (w pierwszej kolumnie znajduje sie nazwa towaru, a w drugiej jego cena) oddzielone znakiem ";".
Wygląda on tak:
produkt;cena
produkt;71.2
produkt;74.6
Dodam, ze w cenniku jest ponad 1700 pozycji (linii) i ta wartosc sie zmienia.
2 - Musi sprawdzac baze danych i jak znajdzie produkt o tej samej nazwie co w cenniku, to musi uaktualnic jego cene, cena z cennika.
3 - Byloby dobrze gdyby wyswietlal tez dane ktore zostaly zaktualizowane oraz ktore pozostaly bez zmian.
Struktura tabeli podz_podzespoly:
pid = ID produktu
cid = ID kategorii produktu
name = nazwa produktu
cena = cena produktu
opis = opis produktu
Oto moj skrypt:
<?php
require ("config.php");
mysql_connect ($dbhost, $dbuname, $dbpass) or
die ("Nie można poł±czyć się z MySQL");
mysql_select_db ($dbname) or
die ("Nie można poł±czyć się z baz± '$dbname'.");
$row = 1;
$fp = fopen ("cennik.csv","r");
while ($data = fgetcsv ($fp, 1000, ";")) {
$num = count ($data);
$row++;
for ($c=0; $c<$num; $c++) {
$data[$c];
$query = "UPDATE podz_podzespoly SET cena='$data[$c]' WHERE name like '$row++'";
$wynik = mysql_query ($query);
}
}
fclose ($fp);
?>
Po 30sek dzialania mojego skryptu, wyskakuje blad:
"Fatal error: Maximum execution time of 30 seconds exceeded in c:foxservwwwadminupdate1.php on line 19"
Oczywiscie nie zmienia on cen w bazie danych ...
Prosze pomozcie mi ...
Kontakt ze mna:
seba_wp@wp.pl
gg: 2332