htaccess和php_self不在同一页面上工作

时间:2014-04-29 10:18:30

标签: php .htaccess request-uri

然后我使用php_self并按下按钮我转到index.php,但我想留在我点击的页面。

所以我的.htaccess现在看这个:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /svetaine/
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

表格分页中的代码在这里:

<h1>Skaitmeniniai fotoaparatai</h1>
<form method='get'>
<?php
//check if the starting row variable was passed in the URL or not
if (!isset($_GET['startrow']) or !is_numeric($_GET['startrow'])) {
 //we give the value of the starting row to 0 because nothing was found in URL
  $startrow = 0;
//otherwise we take the value from the URL
} else {
 $startrow = (int)$_GET['startrow'];
}
//this part goes after the checking of the $_GET var
$fetch = mysql_query("SELECT * FROM sfotoaparatai order by rand() LIMIT $startrow,   20")or
die(mysql_error());
 $num=Mysql_num_rows($fetch);
    if($num>0)
    {
    echo "<table border=2  >";
    echo "<tr><td>Prekes Pavadinimas</td><td>Kaina</td><td>Parduotuve</td>    <td>Nuoroda</td></tr>";
    for($i=0;$i<$num;$i++)
    {
    $row=mysql_fetch_row($fetch);
    echo "<tr>";
    echo"<td>$row[1]</td>";
    echo"<td>$row[2] LT</td>";
    echo"<td>$row[3]</td>";
    echo "<td><a href=\"{$row[4]}\"><img    src=\"".base_url()."images/parduotuve.png\" /></a></td>";
    echo"</tr>";
    }
    echo"</table>";
    }
 ///now this is the link..
  echo '<a href="'.$_SERVER['PHP_SELF'].'?startrow='.($startrow+5).'">Sekantis</a>';

  $prev = $startrow - 5;

 //only print a "Previous" link if a "Next" was clicked
 if ($prev >= 0)
echo '<a href="'.$_SERVER['PHP_SELF'].'?startrow='.$prev.'"> Buves</a>';
?>
</form>
</body>

然后我点击下一页表格我的链接更改为localhost / svetaine / index.php?startrow = 5,它应该是localhost / svetaine / sfotoaparatai?startrow = 5

1 个答案:

答案 0 :(得分:0)

你的规则如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /svetaine/

RewriteCond %{QUERY_STRING} (^|&)startrow=[0-9] [NC]
RewriteRule ^ - [L]

RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>