Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: IIS5.1+MySQL+PHP i checkbox
Forum PHP.pl > Forum > Serwery WWW > IIS
asz
Witam.

Na wstepie podaje konfiguracje srodowiska, w ktorym pracuje:
1. IIS 5.1 (na XP Professional)
2. MySQL 4.0.13. (j.w. na XP Prof)
3. PHP 4.3.2.

Mam plik o nazwie "dodaj_kurs.php", w ktorym jest kilka pol rozwijalnych oraz jedno pole checkbox o nazwie "tamIZPowrotem". Wycinek kodu z tego pliku dla checkboxa wyglada nastepujaco:

<body>

<form action="wyswietl_dodaj.php" method="post">

<input type="checkbox" name="tamIZPowrotem" value="1" />Kurs powrotny

<input class="przycisk" value="Dodaj kurs" type="submit" />

</body>
</html>


Przy NIE kliknieciu checkboxa (brak w nim "ptaszka") i wybraniu przycisku "Dodaj kurs" dane sa poprawnie zapisywane do bazy ale pojawia sie poniższy komunikat w pliku "wyswietl_dodaj.php", ktory zostaje wywolany, i ktory obsluguje wysylany formularz ze strony "dodaj_kurs.php":

Notice: Undefined index: tamIZPowrotem in c:\inetpub\wwwroot\wyswietl_dodaj.php on line 89

Po kliknieciu checkboxa wszystko jest ok.

Dodam, ze:

1. w pliku "wyswietl_dodaj.php" sa zdefiniowane wszystkie zmienne, w tym ta odpowiedzialna za checkboxa:

<?php

$tamIZPowrotem = $_POST['tamIZPowrotem']; //to jest linia 89, która generuje błąd!

//inne zmienne z formularza i kod...

?>

2. W przypadku kiedy uzywam APACHE'a zamiast IIS-a ten blad sie nie pojawia...

Ja wyeliminowac pojawiajacy sie komunikat przy korzystaniu z IIS-a??

/***********/
/* 02.10.2007 */
/***********/

Hmm... doprawdy ciekawe, że problem, który powyżej opisywałem nie występuje przy konfiguracji:
1. IIS 6.0 (na Windows Server 2003 Ent. Edt.)
2. MS SQL 2000 Ent.
3. PHP 5.2.4.

Co najmniej jest to... dziwne ;-)
Pozdrawiam.
nevt
dodaj oprócz:
name="tamIZpowrotem"

parametr:
id="tamIZPowrotem"

o ile pamiętam parametr name został zdeprecjonowany w XHTML 1.1 i zastąpiony przez id - więc bezpieczniej jest używać obu...

Pozdrawiam, Leszek.
vokiel
W pliku "wyswietl_dodaj.php" tam gdzie są zdefiniowane wszystkie zmienne, tą odpowiedzialną za checkboxa zrób tak:

  1. <?php
  2. if (isset($_POST['tamIZPowrotem'])) {
  3. $tamIZPowrotem = $_POST['tamIZPowrotem'];
  4. }
  5. ?>
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-2024 Invision Power Services, Inc.