Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%)
|
Witam,
jestem właśnie w trakcie przerabiania swojej strony. Na chwilę obecną strona jest na kilkunastu plikach chcę ją usprawnić i zawartość treści dodać do bazy danych. A więc: mam stworzoną tabele z kolumnami: id|nazwa|menu_up|kolejnosc ->prykładoway wpis -> 1|Moje usługi|0|1 Chciał bym (o ile się da) kiedy w zmiennej (odpowiednio ustawiony plik .htaccess) $_GET jest http://localhost/moje_uslugi (tj. http://localhost/index.php?id=moje_uslugi), aby po tym wyszukać w bazie wiersz z Moje usługi. Wiem że zmiana z "Moje usługi" na "moje_uslugi" z poziomu php załatwiam funkcją str_replace. Ale jak wyszukać wpis który potrzebuje, czy można jakoś w locie z poziomu bazy zastosować fukncję str_replace. Moja funkcja ze str_replace: -zmiana polskich znaków na znaki bez ogonków -zmiana dużych znaków na małe -usunięcie [spacji], myślników i całej reszty znaków na podkreślnik [ _ ] obrazowo SELECT * FROM menu WHERE nazwa = 'moje_uslugi' -> wynik -> 1|Moje usługi|0|1 Jakiś pomysł? - Pozd. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%)
|
zamiast str_replace, użyj urlencode() i urldecode()
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%)
|
Też nad tym myślałem ale chciał bym uniknąć % (procentów) i nieczytelnych znaczników w linkach strony.
A więc wracam do pytania z wyżej. pozdr. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
A więc: mam stworzoną tabele z kolumnami: id|nazwa|menu_up|kolejnosc ->prykładoway wpis -> 1|Moje usługi|0|1 Chciał bym (o ile się da) kiedy w zmiennej (odpowiednio ustawiony plik .htaccess) $_GET jest http://localhost/moje_uslugi (tj. http://localhost/index.php?id=moje_uslugi), aby po tym wyszukać w bazie wiersz z Moje usługi. Wiem że zmiana z "Moje usługi" na "moje_uslugi" z poziomu php załatwiam funkcją str_replace. Ale jak wyszukać wpis który potrzebuje, czy można jakoś w locie z poziomu bazy zastosować fukncję str_replace. nie tędy droga... linki buduj po id tym bardziej, że korzystasz z htaccess... czyli w htaccess zrób odpowiednie przekierowanie po tym co rozpoznasz w adresie i dla przykładu liczą się tylko cyfry po pierwszym do drugiego slasha... przykłady na moje usługi: http://localhost/1/moje_uslugi => przepisane na => http://localhost/index.php?id=1 http://localhost/1/twoje_uslugi.html => przepisane na => http://localhost/index.php?id=1 http://localhost/1/pic_na_wode_fotomontarz_dalej_uslugi.html => przepisane na => http://localhost/index.php?id=1 linki tylko będziesz budował wg. określonych zasad i żeby lepiej wyglądały oraz były bardziej jak to mawiają seo... ale znaczenie będzie miała dla przykłądu odpowiednio przepisana cyfra w htaccess do prawidłowego get'a czy cokolwiek... no a w kodzie np wyświetlisz taką nazwę jaką masz w bazie plus odpowiednio przygotowany link: <a href="http://localhost/1/moje_uslugi">Moje usługi</a> no i zapytanie sql juz masz banalne: SELECT * FROM menu WHERE id = :id_z_geta -> wynik -> 1|Moje usługi|0|1 :id_z_geta - jest to wartość... zapisałem tak z przyzwyczajenia i zachęcam do korzystania z PDO ps. jeśli byś nie kozystał z htaccess to to id zawieraj w parametrrze get... Ten post edytował zegarek84 25.05.2010, 21:07:24 |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 9 Dołączył: 13.02.2006 Skąd: Warszawa Ostrzeżenie: (0%)
|
Po pierwsze urlencode() i urldecode() w nowszych wersjach przegladarki nie robi procentow itp znaczkow (IMG:style_emoticons/default/smile.gif) .
Po drugie to poczytaj troche manuala jak operowac na stringach, pelno jest tego w internecie. A po 3 i co wazniejsze to ja bym zrobil wlasnie na urlencode() + id - tak jak pisal poprzednik. Wtedy masz adres: "http://localhost/2,tekst" , pobierasz dane, robisz explode na przecinek i masz juz id. Nie obciaza bazy i jest duzo wygodniejsze. Pozdrawiam |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%)
|
Tak, ale ja potrzebuje to nie tylko do linków. Dlatego szukam konkretnego rozwiązania a nie częściowego ominięcia problemu.
Wiec wracam do swojego pytania. A wiec tak rozwiązanie mojego problemu jest proste. Mianowicie zapytanie powinno wyglądać:
podziękowania dla 6nom pozd. Ten post edytował linx 26.05.2010, 14:19:55 |
|
|
|
![]() ![]() |
|
Aktualny czas: 21.12.2025 - 09:33 |