Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> W pętli FOREACH dodaje się tylko 1. rekord
grzesgracz
post 13.01.2006, 15:51:26
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


  1. <?php
  2. function zatwierdzono_raport() {
  3.  
  4. $rap = $_GET['raport'];
  5. $zapytanie = "SELECT * FROM kursy WHERE id='$rap'";
  6. $wykonaj_kurs = mysql_query ($zapytanie);
  7.  
  8. $punkty = mysql_fetch_array($wykonaj_kurs);
  9.  
  10. $dir = '../raporty/';
  11. $plik = $dir . $rap . '.csv';
  12.  
  13. $readed = file($plik) or die('<p class="error">Nie można otworzyć pliku z danymi</p>');
  14. $roz = explode(".", $plik);
  15.  
  16. unset($readed[0]);
  17. unset($readed[1]);
  18.  
  19. foreach($readed as $linia) {
  20. $kom = explode(";", chop($linia));
  21.  
  22. if (strlen($linia)>25) {
  23. $zapytanie2 = "INSERT INTO punkty SET id_lekarza='$kom[3]', id_kursu='$rap', rk1='$punkty[6]', rk2='$punkty[7]', rk3='$punkty[8]', rk4='$punkty[9]', rk5='$punkty[10]', rk6='$punkty[11]', rk7='$punkty[12]', rk8='$punkty[13]', rk9='$punkty[14]', ad1='$punkty[15]', ad2='$punkty[16]', ad3='$punkty[17]', ad4='$punkty[18]', ad5='$punkty[19]', ad6='$punkty[20]', ad7='$punkty[21]', ad8='$punkty[22]', ad9='$punkty[23]'";
  24. $wykonaj = mysql_query($zapytanie2);
  25. echo $zapytanie2 . '<br>';
  26. echo '<b>' . $wykonaj . '</b><br><br>';
  27.  
  28. }
  29.  
  30. }
  31.  
  32. echo '<p class="ok" style="font-size: 16; font-weight: bold">Zatwierdzono raport</p><br>';
  33. }
  34. ?>


Witam!
Czy ktos wie dlaczego tylko pierwszy rekord jest dodawany do bazy? Niby wszystko ok... sad.gif

Dzieki,
G.


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
nospor
post 13.01.2006, 15:57:16
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




bo moze masz tylko jeden rekord do dodania. przeciez robisz warunek na linie, moze tylko jedna spelnia go. Moze masz tylko jedną linie wogole? Skad mamy wiedziec co masz w pliku ktory wczytujesz


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
grzesgracz
post 13.01.2006, 16:00:03
Post #3





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


Sorry, za szybko napisalem posta i nie wyjasnilem.

W tym skrypcie jest echo $zapytanie - tam wypisuja sie gotowe zapytania dokladnie tak jak chcialbym je dodawac.
Wszystkie warunki sa spelnione. Do dodania jest na pewno wiecej rekordow.


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
Go to the top of the page
+Quote Post
kszychu
post 13.01.2006, 16:04:15
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Pod spodem wyświetlasz $wykonaj, co ono ci pokazuje?


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
grzesgracz
post 13.01.2006, 16:05:45
Post #5





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


INSERT INTO punkty SET id_lekarza='56577845', id_kursu='4', rk1='0', rk2='1', rk3='1', rk4='0', rk5='1', rk6='1', rk7='0', rk8='1', rk9='0', ad1='0', ad2='1', ad3='1', ad4='0', ad5='0', ad6='20', ad7='0', ad8='0', ad9='0'


INSERT INTO punkty SET id_lekarza='56577846', id_kursu='4', rk1='0', rk2='1', rk3='1', rk4='0', rk5='1', rk6='1', rk7='0', rk8='1', rk9='0', ad1='0', ad2='1', ad3='1', ad4='0', ad5='0', ad6='20', ad7='0', ad8='0', ad9='0'


INSERT INTO punkty SET id_lekarza='56577847', id_kursu='4', rk1='0', rk2='1', rk3='1', rk4='0', rk5='1', rk6='1', rk7='0', rk8='1', rk9='0', ad1='0', ad2='1', ad3='1', ad4='0', ad5='0', ad6='20', ad7='0', ad8='0', ad9='0'


INSERT INTO punkty SET id_lekarza='56577848', id_kursu='4', rk1='0', rk2='1', rk3='1', rk4='0', rk5='1', rk6='1', rk7='0', rk8='1', rk9='0', ad1='0', ad2='1', ad3='1', ad4='0', ad5='0', ad6='20', ad7='0', ad8='0', ad9='0'

itd.....

Razem chyba 60 rekordów


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
Go to the top of the page
+Quote Post
nospor
post 13.01.2006, 16:08:40
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




daj tak:
  1. <?php
  2. $wykonaj = mysql_query($zapytanie2) or die(mysql_error());
  3. ?>
jaki blad?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
grzesgracz
post 13.01.2006, 16:18:09
Post #7





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


nospor - dzieki! smile.gif

Byl problem z indeksem tabeli...nie bylo go biggrin.gif (w sumie byl, ale jako pole id_lekarza)
Teraz dodalem id na poczatku auto_increment i wszystko hula jak ma smile.gif

A przy okazji: jak zrobic, zeby nie miec zdublowanych rekordow? W tej funkcji niestety kazde odswiezenie strony bedzie dodawac kolejne identyczne rekordy po sobie...

AHA: Musi byc dwoch rekordow o tym samym id_lekarza i id_kursu.
W tabeli id_lekarza jak najbardziej moze sie powtarzac tak jak i id_kursu, ale nie moga byc razem wiecej niz raz.

Ten post edytował grzesgracz 13.01.2006, 16:21:30


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
Go to the top of the page
+Quote Post
nospor
post 13.01.2006, 16:20:27
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




po zrobieniu tego co ma zrobic, przekireuj od razu na inna strone z trescia chociazby "DONE".
  1. <?php
  2.  
  3. //.....
  4. header('Location: innasteona.php');
  5.  
  6. ?>


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
grzesgracz
post 13.01.2006, 16:23:59
Post #9





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


No tak, to jesno z wyjsc.
A nie daloby sie czegos lepszego? smile.gif


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
Go to the top of the page
+Quote Post
nospor
post 13.01.2006, 16:27:15
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




wpisujesz na podstawie $_GET['raport']. musisz wiec gdzies zapamietywac, czy juz dane $_GET['raport'] bylo zapisywane czy nie. Juz lepiej ? smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
grzesgracz
post 13.01.2006, 16:32:13
Post #11





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.02.2004

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


O, i to jest dobra odpowiedź biggrin.gif
Dzieki jeszcze raz za pomoc,
Pozdrawiam!


--------------------
_odpowiedni dać rzeczy kształt | http://alldesigner.net
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 - 07:00