Witam
Wykonałem formularz (do sklepu potrzebny do przyjęcia zamówienia) który w pole "value" wkleja dane zawarte na serwerze przypisane do tego pola
<?php
echo "<tr><td>Imie</td><td>"; echo '<input type=text name = imie value = "'.$form_kasa_user_id['first_name'].'" maxlength = 40 size = 40>'; ?>
<?php
echo "<tr><td>Nazwisko</td><td>"; echo '<input type=text name = nazwisko value = "'.$form_kasa_user_id['last_name'].'" maxlength = 40 size = 40>'; ?>
oraz element (pod spodem) który osoba może sama wypełnić jeżeli ma być inny niż powyższy
<td><input type = text name = dos_imie value = "" maxlength = 40 size = 40></td>
<td><input type = text name = dos_nazwisko value = "" maxlength = 40 size = 40></td>
Dodatkowo formularz powiązany jest z koszykiem . Czyli do wykonania zamówienia potrzebne są dane zawarte w koszyku(co osoba kupiła?) oraz je dane np imię ,nazwisko.
Problem polega na tym że jeżeli ta sama osoba kupuje ten sam produkt 3 razy to zamówienie jest w pełni przyjęte tylko za 1 razem za 2i 3 niestety nie(nie są podane informacje o zakupionym produkcie , nie został zapisany w bazie) . Tak się dzieje jeżeli wszystkie pola value( w tym przypadku 2: imię i nazwisko) w formularzu są pobierane z serwera. wszystko jest zapisane jeśli np imię pobierane jest z serwera a nazwisko wpisywane jest ręcznie przez stronę.
Podaję funkcje która zapisuje dane w bazie MYSQL:
<?php
function umiesc_zamowienie($szczegoly_zamowienia)
{
// wyciągnięcie szczegółów zamówienia jako zmiennych
// ustawienie adresu dostawy na taki sam jak adres klienta
if(!$dos_imie&&!$dos_nazwisko)
{
$dos_imie = $imie;
$dos_nazwisko = $nazwisko;
}
$lacz = lacz_bd();
// wstawienie adresu klienta
$zapytanie = "select idklienta from klienci where
imie='$imie' and nazwisko='$nazwisko'";
else
return false;
$zapytanie = "insert into klienci values
('', '$imie', '$nazwisko')";
if (!$wynik)
return false;
$zapytanie = "select idklienta from klienci where
imie = '$imie' and nazwisko = '$nazwisko'";
else
return false;
$zapytanie = "insert into zamowienia values
('', $idklienta, ".$HTTP_SESSION_VARS['calkowita_wartosc'].", '$data', 'CZĘŚCIOWE', '$dos_imie', '$dos_nazwisko')";
if (!$wynik)
return false;
$zapytanie = "select idzamowienia from zamowienia where
idklienta = $idklienta and
wartosc > ".$HTTP_SESSION_VARS['calkowita_wartosc']."-.001 and
wartosc < ".$HTTP_SESSION_VARS['calkowita_wartosc']."+.001 and
data = '$data' and
stan_zam = 'CZĘŚCIOWE' and
dos_imie = '$dos_imie' and
dos_nazwisko = '$dos_nazwisko'";
else
return false;
// umieszczenie wszystkich produktów
foreach($HTTP_SESSION_VARS['koszyk'] as $isbn => $ilosc)
{
$dane=pobierz_dane_ksiazki($isbn);
$zapytanie = "delete from produkty_zamowienia where
idzamowienia = '$idzam' and isbn = '$isbn'";
$zapytanie = "insert into produkty_zamowienia values
('', '$idzam', '$isbn', ".$dane['cena'].", $ilosc)";
if(!$wynik)
return false;
}
return $idzam;
}
?>
Bardzo proszę o pomoc Krzysiek
----------------------
Jeśli chcemy dać kod na forum umieszczamy go
w odpowiednich tagach, no i nie ma potrzeby
aby cała treść posta była pogrubiona !
Tym razem poprawiłem, ale na przyszłość
proszę się do tego stosować.
---
~strife