Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Instrukcja if..., skladnia........???
kramot
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 11.01.2005

Ostrzeżenie: (10%)
X----


Mój problem jest następujący:
Pobieram z formularza dane: $tytul, $id_rodzaj, $id_nosnik.
W/w dane mają posłużyć mi za wytyczne do wyszukiwania w bazie odpowiednich wierszy. Napisałem instrukcje warunkową która w zależności od podanych przez uzytkownika danych uruchamia zapytanie do bazy.
Gdy uzytkownik wpisuje wszystkie dane czyli: tytul, rodzaj i nosnik akcja konczy sie powodzeniem. Jesli natomiast podaje jedynie tytul to niestety niedziala to prawidlowo.

  1. <?php
  2. if (isset($_POST['tytul']) && isset($_POST['rodzaj']) && isset($_POST['nosnik']))
  3. {
  4.  $q = &#092;"SELECT * FROM pozycje WHERE tytul LIKE '%$tytul%' and id_rodzaj = '$id_rodzaj'-1 and id_nosnik = '$id_nosnik'-1 \"; //$id_rodzaj - 1 bo pobrana wartosc z formularza jest zwiekszona o 1 w stosunku do wartosci w 
  5. azie danych(raczej nie tu tkwi problem - raczej)
  6.  }
  7.  elseif (isset($_POST['tytul']) and $id_rodzaj == 1 and $id_nosnik == 1) //przyrownuje $id_rodzaj i $id_nosnik do 1 bo takie maja wartosci gdy uzytkownik n
  8. ewybierze inaczej.
  9.  {
  10.  $q = &#092;"SELECT * FROM pozycje WHERE tytul LIKE '%$tytul%'\";
  11.  }
  12.  else 
  13.  {
  14.  exit;
  15.  }
  16. ?>

Kombinowałem już ze skladnia i funkcjami na kilka sposobow. Szukałem równierz w manualu mozliwosci zwiazanych z instukcja switch ale z tego co wyczytalem nienadaje sie do czegos takiego (Tablice lub obiekty nie mogą być użyte, o ile nie zostaną przekształcone w jakiś typ prosty.)
Jesli w ktoryms momecie niewyrazilem sie jasno prosze o zwrocenie uwagi.
Z gory dziekuje i pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kszychu
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Drobna uwaga, która rzuciła mi się w oczy. W linii 2 sprawdzasz zmienną $_POST['tytul']. Po co to samo robisz w linii 12? Przecież cały ten kod będzie wykonany tylko wtedy, gdy ta zmienna będzie ustawiona, więc w linii 12 zawsze będzie true.
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 3.10.2025 - 17:30