Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z IF i linkiem
invx
post 19.06.2004, 03:51:56
Post #1





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


mam taki kod
  1. <?php
  2.  
  3. if ( isset($_GET[m]) )
  4.     {
  5.          if( empty($_POST[login]) )
  6.         {
  7.             $login=1;
  8.         }
  9.         if( empty($_POST[pass]) )
  10.         {
  11.             $pass=1;
  12.         }
  13.         if( empty($_POST[pass2]) )
  14.         {
  15.             $pass2=1;
  16.         }
  17.         if( empty($_POST[pytanie]) )
  18.         {
  19.             $pytanie=1;
  20.         }
  21.         if( empty($_POST[odpowiedz]) )
  22.         {
  23.             $odpowiedz=1;
  24.         }
  25.         if( empty($_POST[kolor]) || $_POST[kolor] == wybierz )
  26.         {
  27.             $kolor=1;
  28.         }
  29.     }
  30. if ( $login !== 1 && $pass !== 1 && $pass2 !== 1 && $pytanie !== 1 && odpowiedz !== 1 && kolor !==) 
  31.     {
  32.         $action=&#092;"loguj.php?mode=add_user_save\";           //link1
  33.     }
  34.     else
  35.     {
  36.         $action=&#092;"loguj.php?mode=add_user&m=spr\";        //link2
  37.     }
  38.  
  39.  
  40.     echo&#092;"
  41.     <center>
  42.     <p align='center' class='title'>REJESTRACJA</p>
  43.     <form method='POST' action='$action'>
  44.     <table>
  45.     &#092;";
  46. #********************************************
  47. #Sprawdzanie loginu
  48. #********************************************
  49.     if ( isset($_GET[m]) )
  50.     {
  51.         if ( $login == 1 )
  52.         {
  53.             $clas=&#092;"formularz_error\";
  54.         }
  55.         else
  56.         {
  57.             $clas=&#092;"formularz\";
  58.         }
  59.     }
  60.     else
  61.     {
  62.         $clas=&#092;"formularz\";
  63.     }
  64.  
  65.     echo&#092;"
  66.     <tr class=$clas>
  67.     <td  align='right'><b>Login:</b>
  68.     </td>
  69.     <td class='formularz'><input type='text' value='$_POST[login]' name='login' size='20'><br>
  70.     </td>
  71.     </tr>
  72.     &#092;";
  73.  
  74. // reszta pul do sprawdzania
  75.  
  76. ?>

chodzi o to, ze jak by nie bylo zwsze jest spelniany pierwszy warunek, i zawsze $action, przyjmuje wartosc loguj.php?mode=add_user_save,a chce zeby dopier jesli wszystkie pola nie sa puste to przeszlo do pliku z mode=add_user_aave

Ten post edytował invx 19.06.2004, 03:59:13


--------------------
RCXcms
www.rcx.prv.pl
Pierwszy polski w pełni zintegrowany system portal
Go to the top of the page
+Quote Post
Kinool
post 19.06.2004, 08:06:34
Post #2





Grupa: Zarejestrowani
Postów: 560
Pomógł: 0
Dołączył: 15.07.2003
Skąd: Kwidzyn

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


$pass !== 1 co to za twor?? jesli to ma byc negacja to tak: $pass!=1


--------------------
Go to the top of the page
+Quote Post
Ludvik
post 19.06.2004, 08:26:55
Post #3





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Cytat
$a !== $b - Nie identyczny - TRUE jeśli $a nie jest równy $b, lub nie są tego samego typu. (tylko w php 4) 

Więc to chyba nie jest błąd.

W tym if-ie pierwszym masz w dwóch ostatnich zmiennych błąd.

  1. <?php
  2. if($login !== 1 && $pass !== 1 && $pass2 !== 1 && $pytanie !== 1 && odpowiedz !== 1 && kolor !==1)
  3. ?>

Powinno być:
  1. <?php
  2. if($login !== 1 && $pass !== 1 && $pass2 !== 1 && $pytanie !== 1 && $odpowiedz !== 1 && $kolor !==1)
  3. ?>

Chyba, że ci chodziło o stałe winksmiley.jpg Poza tym masz to troszkę niewygodnie. Jak chcesz sprawdzić błąd to musisz sprawdzać 6 zmiennych... Nie lepiej na początku zainicjować zmienną $blad z wartością 0, a potem w razie błędu przypisać jej 1? Potem wystarczy sprawdzić tylko tą zmienną.

Ten post edytował Ludvik 19.06.2004, 08:29:01


--------------------
Go to the top of the page
+Quote Post
invx
post 19.06.2004, 16:53:14
Post #4





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


nie moge uzyc jednej zmiennej, bo potem wykorzystuje je do okreslania, co jest zle, poprawilem te zmienne, ale nic to nie zmienilo dalej zle.

Ten post edytował invx 19.06.2004, 16:58:29


--------------------
RCXcms
www.rcx.prv.pl
Pierwszy polski w pełni zintegrowany system portal
Go to the top of the page
+Quote Post
stoprocent
post 19.06.2004, 17:10:01
Post #5





Grupa: Zarejestrowani
Postów: 338
Pomógł: 2
Dołączył: 17.05.2003
Skąd: Kraków , Londyn

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


A jakbys poprostu zamiast tego :
  1. <?php
  2.  
  3. if ( isset($_GET[m]) )
  4.     {
  5.          if( empty($_POST[login]) )
  6.         {
  7.             $login=1;
  8.         }
  9.         if( empty($_POST[pass]) )
  10.         {
  11.             $pass=1;
  12.         }
  13.         if( empty($_POST[pass2]) )
  14.         {
  15.             $pass2=1;
  16.         }
  17.         if( empty($_POST[pytanie]) )
  18.         {
  19.             $pytanie=1;
  20.         }
  21.         if( empty($_POST[odpowiedz]) )
  22.         {
  23.             $odpowiedz=1;
  24.         }
  25.         if( empty($_POST[kolor]) || $_POST[kolor] == wybierz )
  26.         {
  27.             $kolor=1;
  28.         }
  29.     }
  30.  
  31. ?>

dal :
  1. <?php
  2.  
  3. if ( isset($_GET['m']) )
  4.     {
  5.          if( empty($_POST['login']) )
  6.         {
  7.             $error=1;
  8.         }
  9.         if( empty($_POST['pass']) )
  10.         {
  11.             $error=1;
  12.         }
  13.         if( empty($_POST['pass2']) )
  14.         {
  15.             $error=1;
  16.         }
  17.         if( empty($_POST['pytanie']) )
  18.         {
  19.             $error=1;
  20.         }
  21.         if( empty($_POST['odpowiedz']) )
  22.         {
  23.             $error=1;
  24.         }
  25.         if( empty($_POST['kolor']) || $_POST['kolor'] == 'wybierz' )
  26.         {
  27.             $error=1;
  28.         }
  29.     }
  30.  
  31. //A pozniej tyklo
  32. if($error!=1){}
  33.  
  34. ?>

Bo tak czy tak nawet jak jedno pole nie bedzie wypelnione to ci wroci , a jak zadne nie bedzie puste to sie zapisze . biggrin.gif

Ten post edytował nasto 19.06.2004, 17:10:36


--------------------
Go to the top of the page
+Quote Post
invx
post 19.06.2004, 17:42:11
Post #6





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


dalej to samo sad.gif


--------------------
RCXcms
www.rcx.prv.pl
Pierwszy polski w pełni zintegrowany system portal
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: 16.04.2024 - 06:41