Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
Głupie i pewnie proste ale nie wiem.
Potrzebuje przerobić cześć swoich funkcji tak aby nie wszystkie ich argumenty były wymagane. I nie mam dobrego pomysłu. Chodzi o to, żeby np warunek WHERE był opcjonalny. Tylko, że nie bardzo wiem co wstawić jako warunek żeby zawsze był prawdziwy. Np jak wymusić opcjonalność $con i $ord w poniższym zapytaniu? SELECT * FROM $tab WHERE $con ORDER BY $ord Poratuje ktoś podpowiedzią? pozdro |
|
|
|
![]() |
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 |
ale może napisz do czego praktycznie to chcesz wykorzystac, bo moze cos za bardzo kombinujesz.
Tu pisalem o opcjonalnych warunkach: http://nospor.pl/wyszukiwarka-zapytanie-za...runkow-n31.html order by zrobic nalezy analogicznie -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
OK widzę, że tak samo rozwiązaliśmy ten problem. Myślałem, że w SQL są jakieś dodatkowe mechanizmy zapewniające opcjonalność fragmentów zapytania.
A przy okazji czy wiesz coś na temat: http://forum.php.pl/index.php?showtopic=133781&hl= pozdro Jeszcze jedno pytanko. Czemu dostaje błąd przy takim warunku "SELECT * FROM $t WHERE id = $tab['index']" ale po wstawieniu SELECT * FROM $t WHERE id = $a gdzie $a = $tab['index'] wszystko jest już ok pozdro Ten post edytował nowy_pehapowiec 27.10.2009, 13:54:46 |
|
|
|
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 |
podstaw obslugi stringow
przeczytaj dokladnie 2 razy to: http://pl.php.net/manual/pl/language.types.string.php a znajdziesz rozwiązanie -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
OK, widzę, że rozwiązania sa trzy albo nawiasy albo łączenie stringów za pomocą kropki albo wpisywanie indeksów bez apostrofów czy innych znaków. Która z tych opcji najlepiej się tobie sprawdziła w praktyce?
Teraz pytanie czemu tak jest? Co takiego jest w $q = "SELECT * FROM $t WHERE id = $tab['index']" że nie może być poprawnie sparsowane? pozdro |
|
|
|
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 |
Cytat Która z tych opcji najlepiej się tobie sprawdziła w praktyce? jakos nie zwracalem na to uwagi szczegolnieCytat Teraz pytanie czemu tak jest? To sie pytaj tych od php. Co tam jest? No tam jest apostrof ps: cieszę się, ze przestudiowałeś link dokładnie -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
No wiem, że apostrof, ale nie wiem czemu miałby powodować jakieś niejednoznaczności i błędy? Przecież jeśli otwieram string znakiem" i w środku mam zmienną z indeksem to czemu u licha nie może być w apostrofach ten indeks - nie rozumiem. Nospor a czy jest jakaś ogólnie przyjęta umowa jaki zapis stosować? Mi najbardziej intuicyjne wydaje się łączenie stringów za pomocą kropki ale to mało wygodne jest, więc albo brak apostrofów albo nawiasy - jak radzisz?
PS nie mogę sobie poradzić z: http://forum.php.pl/index.php?showtopic=133781&hl= pomógłbyś mi? Nie wiem co to może być pozdr |
|
|
|
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 |
Cytat ale nie wiem czemu miałby powodować jakieś niejednoznaczności i błędy pewnie z tego samego powodu co brak srednika na koncu instrukcji powoduje bledy - bo tak.Cytat Nospor a czy jest jakaś ogólnie przyjęta umowa jaki zapis stosować Nie kombinujesz za bardzo? Stosuj tak jak ci wygodnie. Ja w wiekszosci wypadkow stosuje łączenie stringow - bo tak. Choć gdy mam dużo zmiennych wstawic do tekstu to wstawiam bez łączenia.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
pewnie z tego samego powodu co brak srednika na koncu instrukcji powoduje bledy - bo tak. To jedyna rzecz jakiej nie lubię w PHP: średniki i zabawy z " i ' Nie kombinujesz za bardzo? Stosuj tak jak ci wygodnie. Ja w wiekszosci wypadkow stosuje łączenie stringow - bo tak. Choć gdy mam dużo zmiennych wstawic do tekstu to wstawiam bez łączenia. Pytałem przez ciekawość, zawsze można się czegoś dowiedzieć:) Np wczoraj widziałem kod znajomego który funkcje w PHP zawsze wywołuje w podobny sposób: 1 Kopiuje z pliku z funkcją jej nazwę i argumenty. 2 Wkleja do skryptu i po znaku = przypisuje każdemu argumentowi wartość. Twierdzi, że w ten sposób nigdy nie myli argumentów bo zawsze ma ich nazwy w kodzie i są one identyczne jak te w kodzie funkcji. Dla mnie to jest ekstremalnie nienaturalne ale co najmniej osobliwe i interesujące pozdro |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.08.2025 - 01:45 |