Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP i mySQL] problem z petlą FOREACH
bero
post
Post #1





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

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


Mam problem z petla foreach, otórz wykonuje mi sie tylko RAZ.... a powinna wiecej.

Kod ten ma sluzyc do zapisu w bazie danych zamowienia, ikazdy zamowiony produkt powinien byc zapisany w odzielnym rekordzie tabeli.

gdy zamowie np.3 produkty zapisuje tylko 1, ten pierwszy...

Uzywalem juz nieml identycznej petli do wyswietlenia zawartosci kosza i wszytsko bylo OK, tu jednak petla wykonuje sie raz i w nastepnej iteracji zapyatnie do bazy
nie daje wyniku...

czy cos jest nie tak z kodem (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?



foreach( $HTTP_SESSION_VARS['koszyk'] as $idprod => $ilosc1 )
{
$dane=pobierz_dane_produktu($idprod);

$zapytanie = "delete from produkty_zamowione where
idzamowienia = '$idzam' and idprod = '$idprod'";
$wynik = mysql_query($zapytanie);

$nazwa=$dane['nazwa'];
$cena=$dane['Cena'];
$stan='przyjeto';


$zapytanie = "insert into produkty_zamowione (idzamowienia, idklienta, idprod, nazwa, cena_produktu, ilosc, stan_zamowienia)
VALUES('$idzam','$idklienta','$idprod', '$nazwa' , '$cena' , '$ilosc1','$stan')";

$wynik = mysql_query($zapytanie);

if(!$wynik)
echo'niezapisano<br>';
else
echo'zapisano pomyslnie<br>';


}

przykaldowy wynik kodu dla 3 produktow;

zapisano pomyslnie
niezapisano
niezapisano

w bazie zapisuje sie tylko 1 rekord, ten ktory sie wykonal....

a co zreszta?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) czemu zapytanie do bazy nie chce sie wykonac kolejny raz?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
strife
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Cytat(AxZx @ 2005-03-20 13:25:18)
skorzystam z topicu o petli:)

jak zrobc aby foreach nie wypisywala pierwszej lub ktorejs tam wartosci z tablicy?

  1. <?php
  2.  
  3. $array = array('jeden', 'dwa', 'trzy', 'cztery');
  4.  
  5. foreach($array as $w => $i)
  6. {
  7. if ($w != 2)
  8. {
  9. echo $i;
  10. }
  11.  
  12. }
  13.  
  14. ?>

I powinno nie wyświetlić 2 elementu tablicy czyli 'trzy'.

Pozdrawiam!

Ten post edytował scarface 20.03.2005, 14:53:41
Go to the top of the page
+Quote Post

Posty w temacie


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: 28.09.2025 - 20:18