[ Jorgovan88 @ 23.11.2014. 01:00 ] @
Pravim neku skriptu. Znaci trebalo bi da uradim ovo

Code:
/index.php?user=1&tip=0&url=http://www.youtube.com/watch?v=WTDWH35nGWQ


E sad posto je ovako "ruzno" onda sam URL rewrite odradio pa dobio ovako sto je mnogo "lepse"

Code:
/1-0-http://www.youtube.com/watch?v=WTDWH35nGWQ


"Ruzniji" link radi bez problema - znaci lepo mi prosledi ovaj URL

Code:
<?php
echo $_GET["url"];
?>

Rezultat
Code:
http://www.youtube.com/watch?v=WTDWH35nGWQ


"Lepsi" mi zbog znaka pitanja prosledi samo ovo

Code:
http://www.youtube.com/watch


ovo je .htaccess linija koja to rewrituje
Code:
RewriteRule ^([^-]*)-([^-]*)-([^-]*)$ /index.php?user=$1&tip=$2&url=$3 [L]


Verovatno sam ovde nesto kod .htaccess-a pogresio samo ne znam sta :(

Tnx :)
[ Tpojka @ 23.11.2014. 01:17 ] @
Probati sa upotrebom funkcija urlencode() i urldecode() na odgovarajucim mjestima.
Mada bih licno koristio samo identifikator video klipa (i.e. WTDWH35nGWQ).
[ Jorgovan88 @ 23.11.2014. 01:23 ] @
Youtube je ovde cisto primer... Tu ce biti svakakvih linkova... Pravim nesto kao URL shortener pa ce link izgledati ovako

domen.com/{UserID}-{TipLinka}-{Link}

Ovo je na istu foru kao adf . ly easy link... Samo sto oni nemaju tip linka jer kod njih se ne mogu ubacivati Adult linkovi...
kod mene ce biti 0 = FamilySafe | 1 = Adult Link

znaci adfly radi ovako

adf . ly/{UserID}/{Link}

I kod njih ovo radi lepo a kod mene ne radi :(

Tako da te fore sa urlencode() i "%20" padaju u vodu jer ja prilikom dobijanja linka ne dobijem ceo link jer ga znak pitanja prepolovi ;)
[ Jbyn4e @ 23.11.2014. 08:06 ] @
Probaj sa dodavanjem QSA flega, pa javi.
https://wiki.apache.org/httpd/RewriteFlags/QSA
[ dusans @ 23.11.2014. 09:38 ] @
Ovo što si naveo nije sintaksno ispravan Url kada se radi o standardnom parsiranju:

Code:

/index.php?user=1&tip=0&url=http://www.youtube.com/watch?v=WTDWH35nGWQ

Međutim, $_GET["url"] ga ipak sažvaće kako tebi treba, dok se rewrite zbuni.
Dakle, ako koristiš nešto što je standardno, onda moraš da poštuješ i konvencije - morao bi da uradiš url encode tog url parametra.
Ako baš hoćeš ovako kako si zamislio, bez encode-a, onda cenim da moraš da napraviš
custom implementaciju rada sa tvojom strukturom query stringova.

Citat:

Tako da te fore sa urlencode() i "%20" padaju u vodu jer ja prilikom dobijanja linka ne dobijem ceo link jer ga znak pitanja prepolovi ;)

Polovi ga baš zbog toga što nisi uradio encode.
[ Jorgovan88 @ 23.11.2014. 16:24 ] @
Ljudi moji dobio sam 10tak odgovora na vise mesta da bih trebao uraditi URL encode

Ne moze se uraditi URL encode jer link mora biti u izvornom obliku prosledjen skripti... Znaci korisnik napise ovako

domen.com/{userid}-{tiplinka}-{IondaOvdeCovekStaviSvojLink}

Ovo MORA da radi ovako jer u suprotnom ovaj "tool" je beskoristan

Uostalom cudno mi je zasto se ljudi pitaju sta ce mi ovo a adf ly ima ovaj alat vec duze vreme i radi sve bez problema sto znaci da je tehnicki ovo izvodljivo


Code:
http://adf {tacka} ly/1232778/http://www.youtube.com/watch?v=GkVb92Ll89g


Eto ovo to sto mi treba
[ plus_minus @ 23.11.2014. 17:13 ] @
Koliko ja znam, znak pitanja se enkodira kao %3F ...
Pa ako je samo ? problem + još 2 do tri karaktera, možda najobičniji str_replace( array( real_chars), array( handmadeEncodedchars ), $url ) mož' da odradi posao.. negde na pravom mestu u tvojoj skripti.. ?
[ Jorgovan88 @ 23.11.2014. 17:24 ] @
Ne mogu da koristim urlencode
[ plus_minus @ 23.11.2014. 17:25 ] @
Pa ti i nemoj da koristiš url encode, RUČNO upišeš problematične karaktere. Pre nego što >> daš zeleno svetlo << da se to što već hoćeš da spakuješ transportuje dalje, tamo gde ti nemaš više kontrole, TAD, tik pre toga, str_replace().

Jel' se i dalje ne razumemo?
[ dusans @ 23.11.2014. 17:35 ] @
Da li je tebi uopšte potreban rewrite?
Da li ga koristiš samo da bi lakše dohvatio parametre preko $_GET?

Ako ti ne treba rewrite, što jednostavno ne splituješ query string po "-"
i uzmeš ono što ti treba i zaboraviš i na $_GET i na rewrite i na encode?

[ Jorgovan88 @ 23.11.2014. 17:52 ] @
Problem kod explode stringa po "-" je taj sto ukoliko neko ubaci link tipa

Code:
http://www.elitesecurity.org/t480569-Prosledjivanje-informacija-GET-Metodom-koje-sebi-imaju-znak-pitanja


Onda cu dobiti puno clanova.... Kako cu reci koji mi clan treba ako link izgleda ovako??

Code:
domen.com/{UserID}-{TipLinka}-http://www.elitesecurity.org/t...m-koje-sebi-imaju-znak-pitanja
[ dusans @ 23.11.2014. 18:03 ] @
http://php.net/manual/en/function.explode.php
Pogledaj limit parametar
[ Jorgovan88 @ 23.11.2014. 18:13 ] @
Ovo ce da radi
Svaka cast - to je resenje ;) Hvala Vam pozdrav i sve najbolje ;)

EDIT

Ustvari ne radi mi u ovom primeru..
domen.com/{UserID}-{TipLinka}-http://www.elitesecurity.org/t...m-koje-sebi-imaju-znak-pitanja

problem je do htaccess linije... Dobijem Internal server error 500

Code:
RewriteRule ^([^-]*)-([^-]*)-([^-]*)$ /index.php?user=$1&tip=$2&url=$3 [QSA,L]

[ NenadS @ 23.11.2014. 21:59 ] @
A http://php.net/manual/en/function.preg-match.php
[ Nemanja Avramović @ 23.11.2014. 23:00 ] @
Odakle ti uopšte dobijaš te podatke? Šta generiše/poziva ovaj dole URL?

Code:
domen.com/{UserID}-{TipLinka}-http://www.elitesecurity.org/t...m-koje-sebi-imaju-znak-pitanja
[ Jorgovan88 @ 23.11.2014. 23:45 ] @
Ovaj link se generise direktno - cilj svega jeste da ako npr svojim korisnicima nudite 100.000 programa za download npr imate sajt kao Filehyppo onda mozete ispred download linka ubaciti ovo, samo stavite svoj UserID

Code:
http://shorted.ga/1/0/


I ja cu Vam platiti za klikove ;)

Radi sad super - evo test

Code:
http://shorted.ga/1/0/http://www.elitesecurity.org/t480569-Prosledjivanje-informacija-GET-Metodom-koje-sebi-imaju-znak-pitanja


[Ovu poruku je menjao Jorgovan88 dana 24.11.2014. u 03:08 GMT+1]