Jump to content
php.lv forumi

mod_rewrite un $_GET viena


Gigi

Recommended Posts

Sveiki, ar pirmo daudz maz sanāk. Šeit pat forumā atradu.

.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1

 

index.php:

if(isset($_GET['url'])){
	$data = explode("/",$_GET['url']);
}
foreach ($data as &$value) {
echo $value.'</br>';
}

 

bet vai iespējams šos abus apvienot šādi:

 

http://www.webserveris.lv/viesu_gramata/48475/?more=1

 

Tiktu iegūts, ka $data satur:

-viesu_gramata

-48475

 

Vēlētos iegūt 'more' parametru!

$_GET['more'] mainigo nedabuj, bet lietojot ? vietā & iegūst.

 

Zinu, ka visu sarežģiju. Varētu jau lietot to pašu & vai vispar tikai /1

 

Bet vai šādi varētu apvienot?

 

Vēl piemērs: http://www.apollo.lv/portal/news/73/articl...823?comm_page=1

Domāju šeit arī tiek izmantots mod_rewrite, bet kā iegūst to comm_page parametru.

Varbūt, kā savādāk vajag skaldīt to url.

Link to comment
Share on other sites

Tas ar to & gljuks, taads, ka tu velreiz megini ieinsertet URL ieksh GET... kas peec RFC ir jābūt enkodētam!...

 

Resp., PHP visu laiku tiek padots `wrong url` (tas mēģina sagremot divus `?`)... a pirmo mainīgo ?zzz nenopārsē, jo nav & priekšā (tavs rewraitotais ir otrs jau) risinājums ir pārsēt GET vēlreiz un updeitot _GET masīvu (īstenība Apacis pa jaunam veido valīdu URL, bez Query daļas)

 

Principā atcerējos, to risina [QSA] (query string append)

 

RewriteRule ^(.*)$ index.php?url=$1 [QSA]

Edited by Delfins
Link to comment
Share on other sites

×
×
  • Create New...