![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Tak więc mam sobie skrypt rejestracji, na innych hostingach śmiga świetnie (bez błędnie) zresztą na moim domowym serwerze też, ale mimo to mam notice'y. Tak wiem to nie błędy i da się to wyłączyć ale chcę tego uniknąć i poprawić kod.
Wywala mi takie coś: Kod Notice: Undefined variable: login in /usr/local/www/apache22/data/silnik/funkcje.php on line 181 Notice: Undefined variable: email in /usr/local/www/apache22/data/silnik/funkcje.php on line 183 Notice: Use of undefined constant rok - assumed 'rok' in /usr/local/www/apache22/data/silnik/funkcje.php on line 200 Notice: Undefined index: data_urodzenia[rok] in /usr/local/www/apache22/data/silnik/funkcje.php on line 200 Notice: Use of undefined constant miesiac - assumed 'miesiac' in /usr/local/www/apache22/data/silnik/funkcje.php on line 201 Notice: Undefined index: data_urodzenia[miesiac] in /usr/local/www/apache22/data/silnik/funkcje.php on line 201 Notice: Use of undefined constant dzien - assumed 'dzien' in /usr/local/www/apache22/data/silnik/funkcje.php on line 202 Notice: Undefined index: data_urodzenia[dzien] in /usr/local/www/apache22/data/silnik/funkcje.php on line 202 Skrypt rejestracji:
Oczywiście konto w bazie danych oraz id zostaje skopiowane poprawnie tylko właśnie wyrzuca mi jeszcze błędy. Proszę o pomoc (IMG:style_emoticons/default/wink.gif) . |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 2 Dołączył: 9.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dwa pierwsze - wypadałoby przypisać zmiennym jakieś wartości zanim się je użyje w zapytaniu do bazy. Pozostałe - to brakujące cudzysłowy w indeksach tablic.
No i w 54 linii to chyba chodziło wartość z tablicy Kod $data_urodzenia['rok'] a nie o indeks o takiej nazwie. Ten post edytował mandragorek 18.03.2011, 19:52:41 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Są to ostrzeżenia, nie błędy.
Zacznij używac funkcji isset. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Tylko do wartości email i login były przypisane dane w formularzu.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 2 Dołączył: 9.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ok, tylko że przed
Kod $czy_istnieje = mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$login'"); nie masz nigdzie przypisanego co się w $login znajduje. Potem pod następnym ifem już korzystasz bezpośrednio z danych z $_POST; |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Czyli przypisać $_POST do $login ?
Poprawiłem na coś takiego:
Ale mimo to wyrzuca mi brak indexu z tą datą: Kod Notice: Undefined index: data_urodzenia[rok] in /usr/local/www/apache22/data/silnik/funkcje.php on line 202 Notice: Undefined index: data_urodzenia[miesiac] in /usr/local/www/apache22/data/silnik/funkcje.php on line 203 Notice: Undefined index: data_urodzenia[dzien] in /usr/local/www/apache22/data/silnik/funkcje.php on line 204 Choć te dane są przydzielone w formularzu z opcją wyboru. Ten post edytował Przem4S 18.03.2011, 20:13:57 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 2 Dołączył: 9.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Edytowałem swoją pierwszą odpowiedź, więc nie zauważyłeś. Chodzi najpewniej o to, że jako indeks dajesz np. 'data_urodzenia[rok]' a nie wartość, która siedzi w tej tablicy.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Hm tak więc jak tą datę tam zaadoptować?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 2 Dołączył: 9.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
W sumie to też masz robione dwa razy, najpierw źle a potem dobrze
Kod $data_urodzenia['rok'] = $_POST['data_urodzenia[rok]']; $data_urodzenia['miesiac'] = $_POST['data_urodzenia[miesiac]']; $data_urodzenia['dzien'] = $_POST['data_urodzenia[dzien]']; a odrobinę niżej już masz ładnie wyciągnięte po kolei te same zmienne z $_POST i nadpisujesz tę zmienną $data_urodzenia. Kod $data_urodzenia = date($_POST['data_urodzenia']['rok'].'-'.$_POST['data_urodzenia']['miesiac'].'-'.$_POST['data_urodzenia']['dzien']); więc w sumie to możesz te wcześniejsze 3 linijki spokojnie wyrzucić, bo i tak wstawiasz tam za chwilę co innego. Natomiast jeśli ci potrzebne poszczególne wartości z tej tablicy data_urodzenia przesyłanej w $_POST to wyciągasz, to tak jak z każdej innej tablicy wielowymiarowej Kod $data_urodzenia['rok'] = $_POST['data_urodzenia']['rok'];
Ten post edytował mandragorek 18.03.2011, 20:40:38 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
@UP
Nom głupi błąd. Bez tych 3'ech zmiennych poszło od strzału. Dziękuję - pomógł. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 21:56 |