Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> "if" w zapytaniu do bazy danych nie działa
Cywil
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 2.11.2016

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


Mam następujący problem...

  1.  
  2. $result=$mysqli->query("SELECT*FROM tabela ".
  3.  
  4. if($zmienna==1){
  5. echo "WHERE an=1";
  6. }else if($zmienna==2){
  7. echo "WHERE an=0";
  8. }
  9. ." LIMIT 12");
  10.  


Po odpaleniu strony, pokazuje mi się error "Parse error: syntax error, unexpected 'if' (T_IF) in C:\xampp\htdocs\projekt\search.php on line 64"

linia 64 to linia z pierwszym ifem

Dlaczego kod nie działa?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
kapslokk
post
Post #2





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


Bo nie można wstawiać ifów w stringach.
Masz dwie możliwości:
1. Przypisanie zapytania do zmiennej i w zalezności od warunku doklejanie odpowiednich czesci - google: "php string concatenation"
2. Elvis operator
Go to the top of the page
+Quote Post
nospor
post
Post #3





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




A ja tylko przeniose na przedszkole i tamtez prosilbym autora o pisanie kolejnych tematow


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

"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
Tomplus
post
Post #4





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


Tak jak napisał kapslokk
1) Wyrzuć warunki przed zapytanie, do pierwszej linii.
2) zamień ECHO na np. $where
3) wstaw $where tam gdzie wstawiłeś cały warunek czyli tabela ".$where." limit
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 Aktualny czas: 19.08.2025 - 03:58