- Мод rewrite и странициране
WT форуми -> PHP MySQL ASP.NET -> Мод rewrite и странициране
Създайте нова тема Напишете отговор 
Автор Съобщение
Pro_Lamer4e
Нов
Нов

Регистриран на: 26/10/2009 7:10 am

Support: 2
Bonus: 4
Мнения: 182
Мнение 06/08/2018 10:26 am     Мод rewrite и странициране Отговорете с цитат


здравейте отново, каде бъркам с Mod rewrite и страницирането
когато напиша servers.php?game=cs&page=2 всичко си работи както трябва, но когато напи6а game/cs/page/2 не зарежда страницата

RewriteRule ^game/([0-9a-z_]+)/page/([0-9]+)/$ servers.php?id=servers&game=$1&page=$1 [L]


и страницирането

$query = "SELECT COUNT(server_game) AS numrows FROM amx_servers WHERE server_game='$game'";
$result = mysql_query($query) or die('da');
$row = @mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage = ceil($numrows/$br);
$self = $_SERVER['PHP_SELF'];
$ns = '';
for($page = 1; $page <= $maxPage; $page++) {
if ($page == $pageNum) {
$ns .= "<a class=\"number current\" href=\"$self?game=$game&page=$page\">  $page </a> &nbsp;";
}
else {
$ns .= " <a class=\"number \" href=\"$self?game=$game&page=$page\"   >$page</a> ";
}}
if ($pageNum > 1) {
$page = $pageNum - 1;
$pr = " <a href=\"$self?game=$game&page=$page\"   >&laquo; <<< </a> &nbsp;";
$one = " <a href=\"$self?game=$game&page=1\" >&laquo; $site_lang[lastpageone]</a>  ";
}
else {
$pr = ' ';
$one = ' ';
}
if ($pageNum < $maxPage) {
$page = $pageNum + 1;
$sl = " <a href=\"$self?game=$game&page=$page\"  id=\"page\"> >>> </a>  &nbsp;";
$pl = (" <a href=\"$self?game=$game&page=$maxPage\" >$site_lang[lastpageserv] &raquo;</a> ");
}
else {
$sl = '';
$pl = '';
}
echo $one . $ns .  $pl;
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
teroristd
Редовен
Редовен

Регистриран на: 18/02/2010 1:50 pm

Support: 82
Bonus: 176
Мнения: 1722
Мнение 06/08/2018 12:03 pm      Отговорете с цитат


Така?
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Pro_Lamer4e
Нов
Нов

Регистриран на: 26/10/2009 7:10 am

Support: 2
Bonus: 4
Мнения: 182
Мнение 06/08/2018 2:13 pm      Отговорете с цитат


teroristd написа:
Така?
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2


не, директно като настина на страница 2 и си пише "servers.php?game=cs&page=2"
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
teroristd
Редовен
Редовен

Регистриран на: 18/02/2010 1:50 pm

Support: 82
Bonus: 176
Мнения: 1722
Мнение 06/08/2018 3:14 pm      Отговорете с цитат


Пробвай така.
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2 [L,QSA]


Също така кажи работи ли ако го напишеш в браузъра? Кеша изчисти ли?
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Pro_Lamer4e
Нов
Нов

Регистриран на: 26/10/2009 7:10 am

Support: 2
Bonus: 4
Мнения: 182
Мнение 06/08/2018 3:40 pm      Отговорете с цитат


teroristd написа:
Пробвай така.
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2 [L,QSA]


Също така кажи работи ли ако го напишеш в браузъра? Кеша изчисти ли?


The requested URL /game/cs/page/1 was not found on this server.
да чиста го кеша
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
teroristd
Редовен
Редовен

Регистриран на: 18/02/2010 1:50 pm

Support: 82
Bonus: 176
Мнения: 1722
Мнение 06/08/2018 4:03 pm      Отговорете с цитат


Друго не ми хрумва е че трябва htaccess-a да е в същата папка където е server.php, иначе трябва да се добави и неговото име в условието.

Options +FollowSymLinks -MultiViews
RewriteEngine On

RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2 [L,QSA]
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 156
Bonus: 311
Мнения: 1441
Мнение 06/08/2018 7:57 pm      Отговорете с цитат


Pro_Lamer4e написа:
teroristd написа:
Пробвай така.
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2 [L,QSA]


Също така кажи работи ли ако го напишеш в браузъра? Кеша изчисти ли?


The requested URL /game/cs/page/1 was not found on this server.
да чиста го кеша

Teroristd правилно ти го е дал, това не тръгва само заради крайната наклонена черта:

Цитат:
The requested URL /game/cs/page/1 was not found

RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2
Regex-ът завършва на "/", затова и матчва само ако урл-то завършва на "/"
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
teroristd
Редовен
Редовен

Регистриран на: 18/02/2010 1:50 pm

Support: 82
Bonus: 176
Мнения: 1722
Мнение 07/08/2018 8:09 am      Отговорете с цитат


anonimen написа:
Regex-ът завършва на "/", затова и матчва само ако урл-то завършва на "/"


Изобщо не се сетих за това и почвам да търся проблема къде ли не другаде Very Happy.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Pro_Lamer4e
Нов
Нов

Регистриран на: 26/10/2009 7:10 am

Support: 2
Bonus: 4
Мнения: 182
Мнение 07/08/2018 9:35 am      Отговорете с цитат


anonimen написа:
Pro_Lamer4e написа:
teroristd написа:
Пробвай така.
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2 [L,QSA]


Също така кажи работи ли ако го напишеш в браузъра? Кеша изчисти ли?


The requested URL /game/cs/page/1 was not found on this server.
да чиста го кеша

Teroristd правилно ти го е дал, това не тръгва само заради крайната наклонена черта:

Цитат:
The requested URL /game/cs/page/1 was not found

RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$2
Regex-ът завършва на "/", затова и матчва само ако урл-то завършва на "/"


добре, но пак не става

Not Found
The requested URL /game/cs/page/1/ was not found on this server.

а това е .htaccess

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteRule ^server-([0-9]+)&web$ serv.php?id=info&serv=$1&web=$1 [NE]
RewriteRule ^server-([0-9]+)&players$ serv.php?id=info&serv=$1&players=$1 [NE]
RewriteRule ^server-([0-9]+)&rankchart$ serv.php?id=info&serv=$1&rankchart=$1 [NE]
RewriteRule ^server-([0-9]+)&rules$ serv.php?id=info&serv=$1&rules=$1 [NE]
RewriteRule /game/(.*)/page/(.*)/ ?game=$1&page=$1 [L,QSA]


едит: оправих се благодаря и на двама ви но точката ще е за терорист.
ето по този начин всичко ми работи идялно

RewriteRule ^game/([0-9a-z_]+)/page/([0-9]+)/$ servers.php?game=1&page=$2  [L]


и страницирането

$query = "SELECT COUNT(server_game) AS numrows FROM amx_servers WHERE server_game='$game'";
$result = mysql_query($query) or die('da');
$row = @mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage = ceil($numrows/$br);
$self = $_SERVER['PHP_SELF'];
$ns = '';
for($page = 1; $page <= $maxPage; $page++) {
if ($page == $pageNum) {
$ns .= "<a class=\"number current\" href=\"/game/$game/page/$page/\">  $page </a> &nbsp;";
}
else {
$ns .= " <a class=\"number \" href=\"/game/$game/page/$page/\"   >$page</a> ";
}}
if ($pageNum > 1) {
$page = $pageNum - 1;
$pr = " <a href=\"/game/$game/page/$page/\"   >&laquo; <<< </a> &nbsp;";
$one = " <a href=\"/game/$game/page/1/\" >&laquo; $site_lang[lastpageone]</a>  ";
}
else {
$pr = ' ';
$one = ' ';
}
if ($pageNum < $maxPage) {
$page = $pageNum + 1;
$sl = " <a href=\"$self?game=$game&page=$page\"  id=\"page\"> >>> </a>  &nbsp;";
$pl = (" <a href=\"$self?game=$game&page=$maxPage\" >$site_lang[lastpageserv] &raquo;</a> ");
}
else {
$sl = '';
$pl = '';
}
echo $one . $ns .  $pl;
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
Страница 1 от 1


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети