0

index.phpページからリダイレクトされたユーザーのビジネスページを表示するphpページがあります。

一部の Index.php ページ コードは次のとおりです。

while($res = mysql_fetch_array($sql))
{
$mid = (int) $res['mid'];
$uname_d = inputvalid($res['uname']);   
$profile_pic_d = inputvalid($res['profile_picture']);   
$mid = base64_encode($mid);
echo "<div class='members'>";
echo "<h4><a href='businesspage.php?profile=$uname_d'>$uname_d</a></h4>";    
?>
<img src="<?php echo "$upload_directory/$profile_pic_d"; ?>" width="99" 
height="100"/>
<?php
echo "</div>";
}

これで、次のリンクにリダイレクトされます。

http://localhost/wisper/businesspage.php?profile=creativeartbd

したがって、このリンクをリダイレクトして、次のように表示しようとしています。

http://localhost/wisper/creativeartbd

.htaccess コード:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond $1 !^businesspage.php
RewriteRule ^wisper/(.*?)$ wisper/businesspage.php?profile=$1 [R=301,QSA,L]

しかし、残念ながらそれは機能していません。コードに問題はありますか?

アップデート:

現在、index.php ページのコードは次のとおりです。

echo "<h4><a href='$uname_d'>$uname_d</a></h4>";

しかし、リンクは私が望まないこのスタイルにリダイレクトされ、それはオブジェクトが見つからないことを示しています:

http://localhost/businesspage.php?profile=creativeartbd

リンクは次のようになります。

http://localhost/wisper/creativeartbd

.htaccess コード

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond $1 !^businesspage.php
RewriteRule ^(.*?)$ businesspage.php?profile=$1 [R=301,QSA,L]
4

2 に答える 2

0
echo "<h4><a href='businesspage.php?profile=$uname_d'>$uname_d</a></h4>";    

あなたのコードはブラウザに に移動するように指示しているhttp://localhost/wisper/businesspage.php?profile=creativeartbdので、もちろんブラウザはリンクをクリックするとそこに移動します。mod_rewrite は、ブラウザ側ではなく、サーバー側にあります。リンクが希望どおりに見えるようにする必要があります。

echo "<h4><a href='/wisper/$uname_d'>$uname_d</a></h4>";    
于 2013-08-01T09:19:09.790 に答える