Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL] Pobieranie id klienta i wpisywanie do zapytania.
Forum PHP.pl > Forum > Przedszkole
PatroL14
Witam !

Mam mały problem, otóż mam 2 tabele "Polisy" i "Klienci", chcę dodać polisę do klienta, ale nie chce pobrać mi jego id.


KOD :

  1. $IDklienta = $_GET['id'];
  2. $klient = mysql_fetch_array(mysql_query("SELECT * FROM `Klienci` WHERE `id`='$IDklienta' LIMIT 1"));


  1. mysql_query("INSERT INTO `Polisy` (id, id_klienta, nr_polisy, rodzaj_ubez, prze_ubez, okres_ubez, skladka, platnosc, uwagi) VALUES('','$IDklienta','$nrpolisy','$rodzajubez','$przeubez', '$okresubez', '$skladkaubez', '$platnoscubez', '$uwagiubez')") OR die("Nie można dodać polisy klienta do bazy !");


To jest dosyć dziwne bo jak pobieram id do adresu to działa :

  1. echo '<form method="post" action="switch.php?klient=polisy&dodaj='.$IDklienta.'">';
bpskiba
INSERT INTO `Polisy` (id.....
VALUES('',.......

wygląda mi na to, że w tabeli polisy masz klucz główny o nazwie id, do którego chcesz wpiszć pusty ciąg znaków.
Zamiast komunikatu "nie można dodać polissy" wyświetl sobie mysql_error
Wazniak96
Cytat(bpskiba @ 3.08.2012, 07:32:00 ) *
INSERT INTO `Polisy` (id.....
VALUES('',.......

wygląda mi na to, że w tabeli polisy masz klucz główny o nazwie id, do którego chcesz wpiszć pusty ciąg znaków.
Zamiast komunikatu "nie można dodać polissy" wyświetl sobie mysql_error

id ma auto_incument czyli dodaje się automatycznie przez baze.
Co do autora postu: Wklej calą cząstke kodu bo byc moze zapytanie nie wykonuje się przez wczesniejsze instrukcje. SQL jest wykonany prawidłowo na moje oko. Tylko jedna uwaga. Jezeli dajesz OR die() to przed mysql_query stawiaj @ aby nie wyswietlilo blędu tylko sam tekst, a potem ewentualnie mysql_error()
Wazniak96
Mogl bys trochę streścic kod dawając w jednym echu pare rzeczy ;P

Edit: Przepraszam, niedokladnie przejzalem kod wink.gif
PatroL14
Poszukaj to :
  1. if(empty($_POST['dodaj_polise']))


i wtedy niżej masz formularz bo to jest wszystko w tabeli smile.gif
Wazniak96
Pokazuje komunikat, ze polisa dodana .?
PatroL14
Właśnie nic nie pokazuje, gdy klikam dodaj polise to wyskakują mi te polisy co nie są przypisane do żadnego klienta.
Wazniak96
  1. echo '<form method="post" action="switch.php?klient=polisy&dodaj='.$IDklienta.'">';
A gdzie podany GET id .? biggrin.gif zamien dodaj na id i powinno smigac
PatroL14
Ale jak klikam to mam jego id adres mam taki : switch.php?klient=polisy&dodaj=1

To jest właśnie dziwne.
Wazniak96
bo masz dane taki link w action. Podmien tamto dodaj na id i powinno byc good.
PatroL14
Czyli zamiast
  1. action="switch.php?klient=polisy&dodaj='.$IDklienta.'">';

mam dać tak ? :
  1. action="switch.php?klient=polisy&dodaj='.$_GET['id'].'">';
bpskiba
jeżeli id jest typu liczbowego z opcją autoincrement, to próba wpisania pustego ciągu skończy się zwróceniem błędu i cały rekord nie zostanie dodany
PatroL14
Mam dodane w strukturze tabeli id polis ustawione na auto i id_klienta bez auto.

Zmiana na :

  1. action="switch.php?klient=polisy&dodaj='.$_GET['id'].'">';


nic nie dała ;/
Niktoś
A z jakiej strony przekierowujesz(wchodzisz) na polisy.php?
I jak wygląda url wejściowy?
PatroL14
Wchodzę do pliku "listaklientow.php" i widzę listę klientów, a następnie wchodzę do ich polis przez link "switch.php?klient=polisy&id=tu mam id klienta" i tam mam ten cały kod co powyżej napisałem.
Niktoś
Kliknij na ten link i wklej tutaj całego url'a z przeglądarki.Może ma złą postać.
PatroL14
http://www.strona.pl/switch.php?klient=polisy&id=1

To jest link do polis klienta o id 1.
webdice
Cytat(Wazniak96 @ 3.08.2012, 11:49:57 ) *
(...) Jezeli dajesz OR die() to przed mysql_query stawiaj @ aby nie wyswietlilo blędu tylko sam tekst, a potem ewentualnie mysql_error()


Nie ucz ludzi złych nawyków. Poczytaj o try oraz catch.
PatroL14
Nie rozumiem jak za pomocą try i catch to rozwiązać ;/
Dopiero zacząłem 2dni temu przygodę z php i niezbyt wszystko kumam.
webdice
Cytat(PatroL14 @ 4.08.2012, 09:56:35 ) *
Nie rozumiem jak za pomocą try i catch to rozwiązać ;/
Dopiero zacząłem 2dni temu przygodę z php i niezbyt wszystko kumam.


To Ci nie ma pomóc w rozwiązaniu problemu. Nawiązałem tylko do wypowiedzi ~Wazniak96.
PatroL14
Ok poradziłem sobie można zamknąć temat smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.