Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] isset
blizniak
post 30.09.2008, 02:11:58
Post #1





Grupa: Zarejestrowani
Postów: 253
Pomógł: 0
Dołączył: 14.04.2005

Ostrzeżenie: (0%)
-----


  1. <form method="post" action = "index.php">
  2. <p>
  3. <? echo $lang[7]; ?><select name="rodz_lok" >
  4.        
  5.        <?
  6.          $wynik = mysql_query("select  *  from rodzaj_lok ");
  7.                            
  8.                 while($rzad1 = mysql_fetch_array($wynik))
  9.                   {
  10.                      if($_SESSION['langu'] == 'polish' or $_SESSION['langu']==NULL)
  11.                       {
  12.                         $idd = addslashes($rzad1["nam_pl"]);
  13.                       }
  14.                     if($_SESSION['langu'] == 'english')
  15.                       {
  16.                         $idd = addslashes($rzad1["nam_ang"]);
  17.                       }
  18.  
  19.                     echo '<option value='.$rzad1["id"].'>' .$idd.'</option>';
  20.                    
  21.                   }
  22.        ?>
  23.  
  24.        </select></p>
  25.  
  26.        <p><? echo $lang[8]; ?><select name="region" >
  27.        
  28.        <?
  29.          $wynik = mysql_query("select  *  from region ");
  30.                            
  31.                 while($rzad1 = mysql_fetch_array($wynik))
  32.                   {
  33.                      if($_SESSION['langu'] == 'polish' or $_SESSION['langu']==NULL)
  34.                       {
  35.                         $idd = addslashes($rzad1["reg_pl"]);
  36.                       }
  37.                     if($_SESSION['langu'] == 'english')
  38.                       {
  39.                         $idd = addslashes($rzad1["reg_ang"]);
  40.                       }
  41.  
  42.                     echo '<option value='.$rzad1["id"].'>' .$idd.'</option>';
  43.                    
  44.                   }
  45.        ?>
  46.  
  47.  
  48.        </select></p>
  49.        
  50.        <p><? echo $lang[9]; ?><select name="licz" >
  51.        
  52.        <?
  53.        
  54.          echo '<option  value=1>1</option>';
  55.          echo '<option  value=2>2</option>';
  56.          echo '<option  value=3>3</option>';
  57.          echo '<option  value=4>4</option>';
  58.          echo '<option  value=5>5</option>';
  59.          
  60.                
  61.        ?>
  62.  
  63.  
  64.        </select><? echo $lang[10]; ?></p>
  65.        
  66.        <p>
  67.          <input type="image" src="images/button.gif" name="advert_1" value="continue"/>
  68.        </p>
  69. </form>

  1. <?php
  2. if (!isset($_POST['advert_1'])){
  3. echo "pusta";
  4. }
  5.  
  6. if (isset($_POST['advert_1'])){
  7.  
  8.  if ($_POST['rodz_lok']==1)
  9.   {
  10.    echo "<p>";
  11.    echo $_POST['rodz_lok'];
  12.    echo "</p>";
  13.  
  14.  
  15.   }
  16.  
  17.  
  18.  if ($_POST['rodz_lok']=="2")
  19.   {
  20.    echo "<p>";
  21.    echo $_POST['rodz_lok'];
  22.    echo "</p>";
  23.  
  24.  
  25.   }
  26.  
  27.  
  28.  if ($_POST['rodz_lok']=="3")
  29.   {
  30.    echo "<p>";
  31.    echo $_POST['rodz_lok'];
  32.    echo "</p>";
  33.  
  34.  
  35.   }
  36.  
  37. }
  38. ?>

problem tutaj jest taki ze pod firefox wszystko jest dobrze natomiast w operze i internet expolorer po wyslaniu formularza pokazuje ze zmienna
  1. <?php
  2. $_POST['advert_1']
  3. ?>
jest pusta
w momencie gdy zmienie
  1. <input type="image" src="images/button.gif" name="advert_1" value="continue"/>
na
  1. <input type="submit" src="images/button.gif" name="advert_1" value="continue"/>

to wszystko dziala pod kazda przegladarka
w czym tu jest problem ?
Go to the top of the page
+Quote Post
peter13135
post 30.09.2008, 06:29:00
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


no więc... isset zwraca true, zawsze, kiedy zmienna jest zdefiniowana.. nawet jeśli jest pusta
  1. <?
  2. isset($a)/false
  3. $a='';
  4. isset($a)//true
  5. $a='asd';
  6. isset($a)//true
  7. ?>


więc proponuje takie coś
  1. <?php
  2. if($a)//jeśli $a ma jakąś zawartość
  3. ?>


--------------------
:)
Go to the top of the page
+Quote Post
blizniak
post 30.09.2008, 07:57:01
Post #3





Grupa: Zarejestrowani
Postów: 253
Pomógł: 0
Dołączył: 14.04.2005

Ostrzeżenie: (0%)
-----


no ok ale czemu to jest zalezne od przegladarki, bo tak jak wyzej napisalem w jednej jest wszystko dobrze a w innej nie
Go to the top of the page
+Quote Post
Pilsener
post 30.09.2008, 08:05:24
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


http://forum.php.pl/index.php?showtopic=75989
Nic na to nie poradzisz, nie wszystkie przeglądarki wysyłają wartość dla type="image". Zrób normalny submit i ostyluj go przy pomocy CSS/JS.
Go to the top of the page
+Quote Post
wookieb
post 30.09.2008, 08:16:24
Post #5





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(peter13135 @ 30.09.2008, 07:29:00 ) *
  1. <?php
  2. if($a)//jeśli $a ma jakąś zawartość
  3. ?>

Nie sprecyzowałeś. ZAWSZE ma jakąś wartość. Nawet pustą ale ma.
if($a) bedzie true jezeli nie równa sie 0, false, nie jest pustym ciągiem, nie jest null


--------------------
Go to the top of the page
+Quote Post
rodia
post 30.09.2008, 12:19:29
Post #6





Grupa: Zarejestrowani
Postów: 21
Pomógł: 5
Dołączył: 29.07.2008

Ostrzeżenie: (0%)
-----


Jest jeszcze funkcja empty(). Zwaraca wartość true jeżeli zmienna nie istnieje lub jeśli jest pusta. Zatem w tym przypadku powinna być lepsza od zmiennej isset()


--------------------
Strony internetowe http://rodia.eu
Go to the top of the page
+Quote Post
nospor
post 30.09.2008, 12:23:24
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




kazda przegladarka pole IMAGE wysyla jako nazwa_x oraz nazwa_y
czyli u Ciebie
nie $_POST['advert_1']
a $_POST['advert_1_x']
i bedzie smigac na kazdej przeglądarce


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 15:16