Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][PHP] Problem z pobraniem adresu strony
oi.
post
Post #1





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


Witam, nie wiem jak pobrać zawartość "slowo kluczowe" adresu www.domena.pl/slowo-kluczowe-id22.html
Jeżeli chodzi o nr ID to sprawa jest prosta
  1. $id = $_GET['id'];
, ale jak pobrać treści sprzed tego ID
Go to the top of the page
+Quote Post
nospor
post
Post #2





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




Żeby to ci działało, to zapewne to obrabiasz albo w .htaccess albo w php. To nie możesz od razu tak obrabiać by tę wartość mieć?

No ale jeśli ci się nie chce tak obrabiać to zainteresuj się $_SERVER;
print_r($_SERVER);

ps: po grzyba dajesz tag SQL?? Przecież to nie ma żadnego związku z SQL


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

"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
oi.
post
Post #3





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


Potrzebne jest mi to do wyświetlenie podobnych danych z bazy SQL w przypadku gdyby użytkownik wszedł na podstronę, której treść jest już usunięta .
Wówczas skrypt ma za zadanie podsunąć kilka aktualnych danych z bazy, których tytuł lub treść zawierają to słowo kluczowe w adresie wyszukiwarki.
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




A może to być ci nawet potrzebne do latania samolotem. To nie znaczy, że masz dawać tag SAMOLOT, skoro Twój problem dotyczy zupełnie czego innego. tongue.gif


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

"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
oi.
post
Post #5





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


Spróbowałem z:
  1. $skrypt= $_SERVER[ 'REQUEST_URI' ];
  2. echo $skrypt;

i otrzymuję :

/slowo-kluczowe-id22.html
blisko ale jeszcze nie to :/
Go to the top of the page
+Quote Post
nospor
post
Post #6





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




blisko, blisko.... teraz masz użyć np. wyrażenia regularnego by wybrać to co ci potrzeba.

Gdybyś jednak zastosował się do mojej pierwszej podpowiedzi to byś się nie musiał później bawić w to. no ale Twoja sprawa.

edit: zamiast wyrażenia regularnego możesz użyć zwykłego substr(). wszystkie niezbędne dane masz podane.


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

"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
oi.
post
Post #7





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


  1. print_r($_SERVER);
powoduje wyświetlenie kilkunastu linijek kodu z adresem itp w tym /slowo-kluczowe-id22.html więc nie wiem dlaczego jest lepsze od
  1. $skrypt= $_SERVER[ 'REQUEST_URI' ];


  1. substr($tresc, 0, 105)) ;
substr używam często ale co mi da ucięcie wyrażenia skoro słowo kluczowe w każdym przypadku będzie innej wielkości.
W jaki najprostszy sposób to rozwiązać by nie obciążać serwera wyrażeniami regularnymi?

Ten post edytował oi. 13.06.2011, 12:54:41
Go to the top of the page
+Quote Post
nospor
post
Post #8





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




Cytat
powoduje wyświetlenie kilkunastu linijek kodu z adresem itp w tym /slowo-kluczowe-id22.html więc nie wiem dlaczego jest lepsze od
ałć :/ A kto powiedział że jest lepsze?
dałem ci print_r($_SERVER); byś sobie zobaczył co gdzie co jest i byś wybrał najlepsze. Wybrałeś $_SERVER[ 'REQUEST_URI' ]; i zrobiłeś to co miałeś zrobić.

Cytat
W jaki najprostszy sposób to rozwiązać by nie obciążać serwera wyrażeniami regularnymi?
Przecież napisałem: substr().


Jeśli zaś piłeś do tego co powiedziałem:
Cytat
Gdybyś jednak zastosował się do mojej pierwszej podpowiedzi to byś się nie musiał później bawić w to. no ale Twoja sprawa.
To ja mówiłem o tym:
Cytat
Żeby to ci działało, to zapewne to obrabiasz albo w .htaccess albo w php. To nie możesz od razu tak obrabiać by tę wartość mieć?


Cytat
substr używam często ale co mi da ucięcie wyrażenia skoro słowo kluczowe w każdym przypadku będzie innej wielkości.

No i co z tego ze będzie różnej długosci? Długość całego tekstu znasz, długość tekstu z idxx.html - znasz.
Nie umiesz odjąc jednej wartosci od drugiej?


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

"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
drPayton
post
Post #9





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


No toć dostałeś odpowiedź w pierwszym poście nospor'a, htaccess...

A jak nei htaccess, to regex jest jedynym rozsądnym wyjściem. A jeśli już substr to licząc od ostatniego wystąpienia ciągu "idLICZBA"...
Go to the top of the page
+Quote Post
oi.
post
Post #10





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


id22.html a innym razem będzie id222.html
Cytat
Żeby to ci działało, to zapewne to obrabiasz albo w .htaccess albo w php. To nie możesz od razu tak obrabiać by tę wartość mieć?

Nie będę tego obrabiał w pliku .htaccess . Musze to obrobić w PHP
Go to the top of the page
+Quote Post
nospor
post
Post #11





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




Cytat
id22.html a innym razem będzie id222.html
O jejkuś...
No ale przecież 22 czy 222 to masz w $_GET['id'] więc id222.html znasz! Chłopie, myśl, przestań pisać post za postem tylko najpierw myśl.


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

"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
oi.
post
Post #12





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


22 to DWA znaki a 222 to TRZY znaki
Rozumiem że używając substr() jako
  1. (substr($tresc, 0, -7)) ;
dla id22.html oraz
  1. (substr($tresc, 0, -8)) ;
dla id222.html
Go to the top of the page
+Quote Post
drPayton
post
Post #13





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


A kto Ci każe podawać wartości do obcięcia "z palca"?

strrpos()
Go to the top of the page
+Quote Post
nospor
post
Post #14





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




Cytat
22 to DWA znaki a 222 to TRZY znaki
Aleś ty jesteś odporny na wiedzę.... 2222 to cztery znaki. I co z tego?

  1. $twojeid = '-id'.$_GET['id'].'.html';
  2. $dlugosctwojegoid = strlen($twojeid);

ojej, patrz, już masz długość koncówki...

Wiem i od razu przepraszam, może jestem trochę ironiczny tudzież "niemiły" ale leżysz na takich podstawach to może jak dostaniesz pare kuksańców to wkońcu wbijesz sobie pewien tok myślenia do głowy. Bo jesteś na forum od ponad 5 lat i widzę po dobroci do Ciebie niedochodzi.


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

"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
oi.
post
Post #15





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

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


Nospor "Odporny na wiedzę, trudny do zaj...nia" to też zaleta wink.gif programowanie w PHP to dla mnie hobby, a nowe funkcje przychodzą mi z trudem .
Za złe Ci nie mam ironiczności bo identycznie reaguję jak ktoś nie rozumie oczywistych dla mnie rzeczy :-). Na forum jestem od 5 lat i zauważyłem ze kiedyś mniej odsyłałeś do manuala.
Poradziłem sobie już z tym problemem
  1. $skrypt= $_SERVER[ 'REQUEST_URI' ];
  2. $skrypt = str_replace('-', ' ', $skrypt);
  3. $skrypt = substr($skrypt, 1, -15);

Twój sposób pobierania ilości liczb w ID zaraz dorzucę do tego kodu. Pozdrawiam.
Go to the top of the page
+Quote Post
nospor
post
Post #16





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




Cytat
Na forum jestem od 5 lat i zauważyłem ze kiedyś mniej odsyłałeś do manuala.
Zgadza się. Ale też kiedyś zupełnie był inny poziom ludzi, którzy szukali pomocy. (nie piję w żaden sposób do Ciebie, mówię ogólnie)

Cytat
a nowe funkcje przychodzą mi z trudem .
No ale tu nie chodziło już o funkcję, tylko o pomyślunek. Identycznie problem należałoby rozwiązać niezależnie od języka. Liczysz, długość koncówki, wszystkie ale to wszystkie dane do tego już masz - i po sprawie. Nic tylko odrobinę pomyśleć. smile.gif


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

"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

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: 22.08.2025 - 10:27