test2 Posted July 17, 2008 Report Share Posted July 17, 2008 (edited) Tātad man ir šādi GETI index.php?do=comments index.php?do=reg index.php?do=gallery man r gatavs rewrite, kas viņu pārstāda uz /comments/ /reg/ /gallery/ RewriteEngine On RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|jpeg) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ ?do=$1 [QSA,L] Bet ir gadijumi, kur man ir vajadzība, kautvai tapašam index.php?do=comments paddot vel vienu mainīgo index.php?do=comments&id=2 index.php?do=gallery&id=2 Tātad man vajadzētu kko līdzīgu manam esošajam kodam, tikai lai rewraito arī nākamo ID, protams, es negribu katram GET sarakstīt manuāli, bet kā ir iekš tā mana gatavā koda! Pie reizes lūgums parādīt, ja ir trīs vai vairāki get mainīgie! Edited July 17, 2008 by test2 Link to comment Share on other sites More sharing options...
test2 Posted July 18, 2008 Author Report Share Posted July 18, 2008 Itkā, vel pieliku šitādu te klāt: RewriteRule ^(.*)$ index.php?do=$1 RewriteRule ^([^/\.]+)/([^/\.]+)/?$ /index.php?do=$1&id=$2 [L] Bet viņš vispār nerukā! :( Link to comment Share on other sites More sharing options...
andrisp Posted July 18, 2008 Report Share Posted July 18, 2008 Jo izpildās tikai pirmais nosacījums. Es tev vispār ieteiktu visu stringu padot skriptam, un pēc tam no PHP dalīt daļās. Man parasti ir šāds vienkārš htaccess: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?_path=$1 [QSA] Pēc tam iekš PHP ņemu $_GET['path'], splitoju, daros. Link to comment Share on other sites More sharing options...
test2 Posted July 18, 2008 Author Report Share Posted July 18, 2008 Vot to splitošanu utt, es nesaprotu kā es caur php varu mainīt, es te biju atradis kkādu fcijas ar explode utt, bet es nesaprotu tu varētu man apskaidrot, kas tur īsti notiek... Tur jau ir tā lieta, ka man stāv šitāds: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?_path=$1 [QSA] Viss itkā rukā, bet kā jau teicu citreiz man ir vel kkāds mainīgais plusā index.php?_path=oh&page=12 Tad, kā tas rewraits vsp to page var apsrtādāt, ja viņam ir padots tikkai viens Path, lūdzu paskaidrojiet man! Link to comment Share on other sites More sharing options...
andrisp Posted July 18, 2008 Report Share Posted July 18, 2008 Es īsti nesaprotu, ko tu nesaproti. Piemērs: example.com/pages/12/?action=edit PHP pusē $_GET['_path'] būs 'pages/12' (to ar explode sadali daļas). Un action būs pieejams kā parasti $_GET['action']. Arī citi GET parametri būs pieejami kā parasti. Link to comment Share on other sites More sharing options...
test2 Posted July 18, 2008 Author Report Share Posted July 18, 2008 Es atvainojos par savu stulbumu, bet lūdzu parādi piemēru, manam kodam: if(isset($_GET['do'])) { switch ($_GET['do']) { case 'news': include('inc/news.php'); break; case 'comments': include('inc/com.php'); break; default: include('inc/news.php'); break; } } else { include('inc/news.php'); } Lūk ir mans index.php, jaunumu lapā links uz komentāriem izstīsies šādi: http://tuc.lv/comments/1 Tas ko tu iepriekš iedevi rukā labi viņš katru get revraito piemēram, man tagad nav index.php?do=news, bet gan /news , bet kā man tam comments to id rewraitot! Es nejēdzu to splitošanu! Link to comment Share on other sites More sharing options...
andrisp Posted July 18, 2008 Report Share Posted July 18, 2008 Es nesaprotu, ko tu tajā pēdējā teikumā centies pateikt, bet: $do = ''; $parts = explode('/', $_GET['_path']); if (isset($parts[0])) { $do = $parts[0] } To $do liec iekš case. Tālāk jau iekš comments.php: if (isset($parts[1]) && is_numeric($parts[1])) { $id = (int) $parts[1]; } Link to comment Share on other sites More sharing options...
test2 Posted August 14, 2008 Author Report Share Posted August 14, 2008 Atvainojos, ka pacēlu savu bikiņ pavecu topiku, bet man tagad viena problēma! Tas andrisp foršais variants rukā, bet man tagad ir atsevišķs fails lejupielaadeetaajs.php?fails=kaut-kāds id Un es gribu viņam caur htacces padot šādi download/[1-9], bet tākā man stāv šāds: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?_path=$1 [QSA] Es tur velvienu rewriterule nevaru ierakstīt , jo viņš nereaģē! Un es to lejupielaadeetaajs.php, nēesmu iekļāvis iekš šī te swiča, man nevajag, lai tas uzrādas lapas kontetā: if(isset($_GET['do'])) { switch ($_GET['do']) { case 'news': include('inc/news.php'); break; case 'comments': include('inc/com.php'); break; default: include('inc/news.php'); break; } } else { include('inc/news.php'); } Link to comment Share on other sites More sharing options...
andrisp Posted August 14, 2008 Report Share Posted August 14, 2008 Ja es nemaldos, tad pieprasot lejupielaadeetaajs.php failu, tam vajadzētu atvērties, jo ir šis: RewriteCond %{REQUEST_FILENAME} !-f Kas nozīmē, ka ja ceļs (tātad fails) eksistē, tad neowervraitot to. A varbūt es kaut ko jaucu. :) Link to comment Share on other sites More sharing options...
test2 Posted August 15, 2008 Author Report Share Posted August 15, 2008 Es laikam nemāku paskaidrot, bet lab 2x: kā es piemēram var padot jaunu rewraitu rule, ja stāv jau tas? meiģināju šādi , bet nereaģē: RewriteRule ^files/([a-zA-Z0-9_-]+)/$ lejupielaadeetaajs.php?fails=$1 Ā un tad re ku velviena problēma, piemēram es uzrakstu eksistējošu adresi http://manalapa.lv/style un augšējā adres barā parādas kkāds murgs - http://manalapa.lv/style/?do=style , bet tad kad rakstu http://manalapa.lv/style/ , tad viss ir ok, bet būtībā, man būtu jāaziet uz style folderi, bet abos gadijumos neatveras style, bet paliek main lapa! :( wtf? Link to comment Share on other sites More sharing options...
Recommended Posts