Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]$_GET[NULL]
Forum PHP.pl > Forum > Przedszkole
jacusek
Witam.
Oto fragment skryptu:
  1. $query = 'insert into pacjenci (PESEL, nazwisko, imie, miasto, kod, adres, tel, tel_kom, rok_ur) values
  2. ("'.$_GET['PESEL'].'","'.$_GET['nazwisko'].'","'.$_GET['imie'].'",
  3. "'.$_GET['miasto'].'","'.$_GET['kod'].'",
  4. "'.$_GET['adres'].'","'.$_GET['tel'].'","'.$_GET['tel_kom'].'","'.$_GET['rok_ur'].'")';

I mam problem przy wartości PESEL. Nie zawsze będzie on podawany, ale z przyczyn oczywistych chciałbym, żeby w bazie (MySQL) była wartość klucza UNIQUE.
Jak zostawiam puste miejsce to wpisuje mi do bazy empty string i przy następnym wpisie bez PESEL wpisuje mi błąd duplicate entry - co w sumie jest dość logiczne.
Czy da się to jakoś obejść. Z uwagi na możliwość wystąpienia już PESELi z "0" na początku PESEL ma wartosć varchar w bazie.
Z góry dzięki za pomoc
nospor
gdy pesel jest pusty to do bazy wpisuj NULL a nie pusty string
jacusek
właśnie w bazie mam wpisany defaultowa NULL. To jest oczywiste. Natomiast przy przesyłaniu get-em wrzuca mi pusty string. I tutaj leży kłopot. A nie mogę wymagać od osób które to później będą obsługiwały żeby pisywały null do formularza. Tego to właśnie chce uniknąć.
phpion
No to daj warunek, że jeśli długość pola jest większa od 0 i jest to poprawny pesel to wpisujesz jako string. W przeciwnym wypadku wstawiasz wartość (nie stringa!) NULL.
nospor
Cytat
właśnie w bazie mam wpisany defaultowa NULL
I? Jak na pudelku masz napisane: "wkladac tylko pomarancze" a ty tam mimo wszystko wlozysz jablko, to sory, ale w pudelko bedzie jablko a nie pomarancza.
Tak samo tu: to co ze masz default ustawiony na null... wkladasz pusty string to masz pusty string.
Sugerowalem ci wlasnie to, co powtorzył w poprzednim poscie phpion
jacusek
Dzięki za rady pomogło 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.