Kristabs Posted April 11, 2006 Report Share Posted April 11, 2006 (edited) Pašlaik gatavojos veidot jaunu lapu izmantojot mod_rewrite. Man vajadzētu mazliet palīdzību ar RewriteRule. Vai var uzrkastīt tādu universālu? domain.lv/module/var1/var2/var3 un lai cik man vajadzētu izmantot mainīgos , tik arī viņi galā kabinātos klāt un ja modulis vai neviens mainīgais nav, tad attiecīgi viņi arī nerādās. Man sanāk pagaidām tā, ka es uzrakstu RewriteRule prieksh domain.lv/module/var, tad arii, ja es adresee noraadu tikai domain.lv/module man met "Not Found". Respektīvi, ja es priekš šādas struktūras uzrakstu RewriteRule, tad man arī vienmēr jābūt tiem pašiem parametriem arī padotiem, kā viens mazāk, tā "Not Found". Ceru, ka mani sapratāt un varēsiet man palīdzēt. UPDATE: Domāju, domāju un izdomāju, ka man tagad katram iespējamajam variantam ir jāraksta savs RewriteRule? index.php?module=xxx uz to un to index.php?module=xxx&a=xxx tas un tas, un taa taalaak, ja? UPDATE Nr2: Atradu forumā iz Rozes sacītā:Es tavā vietā iesākumā ieliktu šādu ruli: RewriteEngine On RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|jpeg) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?dir=$1 [QSA,L]Un tad attiecīgi 'dir' mainīgo explodēt pa '/' un sadalīt pa mainīgajiem ($lang, $page, $subpage) un veikt analīzi jau php galā. Šitais būtu pareizāk par to pirmo variantu, kad katram iespējamajam variantam rakstīt savu Rule? Edited April 11, 2006 by Kristabs Link to comment Share on other sites More sharing options...
Delfins Posted April 11, 2006 Report Share Posted April 11, 2006 (edited) es visu `drazu` uzticu PHP, rewrite tikai nodod to drazu.. RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?$1 [QSA] Tādējādi es kombinēju: - locale - module - action - mainīgos [/locale][/module][/action][/parms1]..[/parmN] PS: notiek čekošana, bet nav nekas drausmīgs, ja viss ir piemamots Array-os un failos, nevis jāselektē DB.. $items = explode( '/', $request ); $i = 0; $p = $items[$i]; if (!empty($LOCALES[$p])) { $CUR_LOCALE = $p; } else { $CUR_LOCALE = $DEFAULT_LOCALE; $i++; } $p = $items[$i]; if (!empty($MODULES[$p])) { $CUR_MODULE = $MODULES[$p]; $i++; } else { $CUR_MODULE = $DEFQAULT_MODULE; $p1 = $ } $p = $items[$i]; ... // action init, kas var būt vai nu fails, vai klases f-ja (ja OOP pieeja) tādējādi tu PRE_loadē settingus tekošajam pieprasījumam (kods ir pavisam īss, lai uztrauktos par perfomance) Edited April 11, 2006 by Delfins Link to comment Share on other sites More sharing options...
Kristabs Posted April 11, 2006 Author Report Share Posted April 11, 2006 Paldies par paraugiem, Delfins. Izmantoshu sho variantu. Link to comment Share on other sites More sharing options...
Recommended Posts