[SQL][PHP]PHP Undefined index, skrypt nie odnajduje zmiennej 'same' |
[SQL][PHP]PHP Undefined index, skrypt nie odnajduje zmiennej 'same' |
20.05.2011, 22:12:33
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 20.05.2011 Ostrzeżenie: (0%) |
Witam,
wyskakuje mi poniższy błąd Notice: Undefined index: same in C:\wamp\www\sklep_internetowy\checkout2.php on line 8 odnosi się do fragmentu kodu checkout2.php 7 mysql_select_db("ecommerce"); 8 if ($_POST['same'] == 'on') { 9 $_POST['shipfirst'] = $_POST['firstname']; 10 $_POST['shiplast'] = $_POST['lastname']; 11 $_POST['shipadd1'] = $_POST['add1']; 12 $_POST['shipadd2'] = $_POST['add2']; 13 $_POST['shipcity'] = $_POST['city']; 14 $_POST['shipstate'] = $_POST['state']; 15 $_POST['shipzip'] = $_POST['zip']; 16 $_POST['shipphone'] = $_POST['phone']; 17 $_POST['shipemail'] = $_POST['email']; 18 } w podrzedzającym skrypcie zdefiniowałem 'same' checkout.php <form method="post" action="checkout2.php"> ... <tr> <td width="50%"> <div align="right">Dane jak dla kupującego</div> </td> <td width="50%"> <input type="checkbox" name="same"> </td> </tr> nie mogę odnaleść błędu, proszę o pomoc |
|
|
20.05.2011, 22:17:16
Post
#2
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) |
Jeżeli 'same' jest polem typu "checkbox", sprawdzasz go instrukcją isset(). Jeżeli go nie zaznaczysz w formularzu, nie zostanie wysłany do serwera, zatem PHP go nie zobaczy.
-------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
20.05.2011, 22:18:44
Post
#3
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) |
Niech Pan zajrzy do strony ,gdzie zassał Pan kod,może znajdzie Pan odpowiedź.
|
|
|
21.05.2011, 17:41:00
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 20.05.2011 Ostrzeżenie: (0%) |
dokładnie przeglądałem książkę ale nic nie znalazłem.
czy można przekazać checkbox jak jest niezaznaczony (value=on) do serwera by następny skrypt go widział? |
|
|
21.05.2011, 17:43:51
Post
#5
|
|
Grupa: Moderatorzy Postów: 6 070 Pomógł: 860 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
Tak. Wystarczy, że przed polem checkbox umieścisz ukryte pole (input type=hidden) o takiej samej nazwie jak nazwa pola checkbox. Temu polu możesz przypisać wartość, która będzie wartością domyślną w przypadku braku zaznaczenia pola checkbox.
|
|
|
21.05.2011, 19:45:02
Post
#6
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) |
Pole typu checkbox jest zaznaczone (1) albo nie jest (0). Innej możliwości nie ma. Sprawdzasz to tak:
PS. Podręcznik PHP nie wspomina o polach typu checkbox. W ogóle mało o obsłudze formularzy. To powinno być podstawowe źródło wiedzy, dlatego takie luki są niedopuszczalne. Ktoś im przypomni? Ten post edytował WebCM 21.05.2011, 19:46:03 -------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
21.05.2011, 20:20:26
Post
#7
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 20.05.2011 Ostrzeżenie: (0%) |
wielkie dzięki, teraz śmiga
|
|
|
Wersja Lo-Fi | Aktualny czas: 8.06.2024 - 07:03 |