0

.htaccesURLの書き換えに問題があります。

というフォルダーがdirあり、その中に3つのファイルがあります


ここに画像の説明を入力


.htaccess空です、i.php空でもありますindex.php私にはあります

 $sql = mysql_query("SELECT * FROM clients ORDER By id DESC LIMIT 10"); 
        while($row = mysql_fetch_array($sql)){

        $url = "i/$row[id]/".preg_replace('/[^a-zA-Z0-9-_]/', '-', $row['company']);
        echo "<a href='".$url ."'>".$row['company'].'<br/ ></a>';

        }

ホバーすると、次echoのようなリンクが出力されます

localhost/dir/i/101/today-in-news

localhost // is localhost obviously
dir // is a folder where I keep index.php and i.php files
i // is i.php
101 // is the id of the news
today-in-news // is the title of the news

そのため、クリックすると目的の場所に移動しますが、ID を削除する必要があります。この場合、リンクをクリックしたときに101のみリンクを表示する必要があります。localhost/dir/i/today-in-news私はできる限りのことを試みましたが、結果はありませんでした。

4

1 に答える 1

1

このコードは、そのタイトルをi.phpデータベースなどから取得できる場所に渡します。.htaccess 情報については、こちらをご覧ください。

index.php :

$sql = mysql_query("SELECT * FROM clients ORDER By id DESC LIMIT 10"); 
while($row = mysql_fetch_array($sql)){
    $url = "i/".preg_replace('/[^a-zA-Z0-9-_]/', '-', $row['company']);
    echo "<a href='".$url ."'>".$row['company'].'<br/ ></a>';
}

.htaccess :

<IfModule mod_rewrite.c> 
    RewriteEngine On
    RewriteRule ^i\/([a-zA-Z0-9_-])+\/?$ i.php?title=$1 [L]
</IfModule> 

i.php

$title = $_GET['title'];
于 2013-04-14T21:50:12.293 に答える