Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL][PHP]PHP Undefined index
Forum PHP.pl > Forum > Przedszkole
nowAnd22
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
WebCM
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.
Rid
Niech Pan zajrzy do strony ,gdzie zassał Pan kod,może znajdzie Pan odpowiedź.
nowAnd22
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ł?
phpion
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.
WebCM
Pole typu checkbox jest zaznaczone (1) albo nie jest (0). Innej możliwości nie ma. Sprawdzasz to tak:
  1. if(isset($_POST['nazwa_pola']))
  2. {
  3. echo 'Pole jest zaznaczone';
  4. }
  5. else
  6. {
  7. echo 'Pole nie jest zaznaczone';
  8. }
  9.  
  10. //Czyli w twoim przypadku
  11. if (isset($_POST['same']))
  12. {
  13. /* dalszy kod */
  14. }

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?
nowAnd22
wielkie dzięki, teraz śmiga
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.