Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql][php] przyjazne linki
Forum PHP.pl > Forum > Przedszkole
radziowie
Postanowiłem stworzyć przyjazne linki i w tym celu korzystam z 3 linijek kodu:

  1. $text = strtr($link, '±ćęłń󶿼ˇĆĘŁŃӦݬ', 'acelnoszzACELNOSZZ');
  2. $text = preg_replace('/[^a-zA-Z0-9-_]/', '-', $text);
  3. $text = preg_replace('/-+/', '-', $text);


gdzie zmienna $link jest tytułem który ma być zmieniony. To działa. Problem jest w tym, że tworzę
  1. function zmien_link() {
  2. $text = strtr($link, '±ćęłń󶿼ˇĆĘŁŃӦݬ', 'acelnoszzACELNOSZZ');
  3. $text = preg_replace('/[^a-zA-Z0-9-_]/', '-', $text);
  4. $text = preg_replace('/-+/', '-', $text);
  5. }

I teraz gdy w danym momencie chce wywołać funkcje zmien_link() to nie nwy¶wietla mi danych to znaczy zamiast wywołać adres tytul-newsa,1.html wy¶wietla ,1.html. Czym może to być spowodowane?
mat-bi
A dlaczego funckja nie przyjmuje parametrów i nic nie zwraca?
radziowie
Wła¶nie nie wiem a funkcja zapisana jest w osobnym pliku, który jest zał±czany na pocz±tku kodu strony. Nie mam pojęcia dlaczego
mat-bi
Po prostu, je¶li funckja ma nic nie zwracać, musisz zrobić globaln± zmienn± global
radziowie
dodałem do funkcji global $link; ale i to nic nie dało
mat-bi
Sory, ale ty co¶ tam my¶lisz? Przecież tekst jest w zmiennej $text, nie $link
radziowie
Mam funkcje
  1. function zmien_link() {
  2. global $text;
  3. $text = strtr($link, '±ćęłń󶿼ˇĆĘŁŃӦݬ', 'acelnoszzACELNOSZZ');
  4. $text = preg_replace('/[^a-zA-Z0-9-_]/', '-', $text);
  5. $text = preg_replace('/-+/', '-', $text);
  6. }

Zmienna text jest ustalana na podstawie zmiennej link więc chyba dobrze mam. Po za tym zmieniłem globaln± na text i to samo ;/
bigbadcompany
Dodałbym tam jeszcze MB_CASE_LOWER żeby wszystkie litery zmieniało ci na małe wygl±da estetyczniej. Co do problemu to przyjrzałbym się co masz wpisane w htaccessie może tam tkwi problem. Poza tym całkiem niedawno sam walczyłem z przyjaznymi linkami. SprawdĽ najpierw inne funkcje dopasowuj±c je pod swoje potrzeby może wtedy namierzysz bł±d.
radziowie
Temat do zamknięcia. Dzięki wszystkim smile.gif Zastanawia mnie tylko jedna rzecz. Dlaczego np. ż zamienia mi na z natomiast ± lub ¶ nie zamienia już na a b±dĽ s
To jest wersja lo-fi głównej zawarto¶ci. Aby zobaczyć pełn± wersję z większ± zawarto¶ci±, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.