2

www.mysite.com/more.php?book=1 というページがあり、www.mysite.com/book-title.html のようなリンクを作成したいのですが、どうすればよいですか?

私のページ www.mysite.com/more.php?book=1 で、次のような URL を生成します

$res = mysql_query("SELECT * FROM book WHERE id_book={$_GET['book']}");
while ($rw = mysql_fetch_object($res)){ 
    $title = strtolower(str_replace(" ", "-", $rw->title)).'.html';
    }

$title がありますが、.htaccess の mod 書き換えでこれを使用して URL www.mysite.com/book-title.html を取得する方法がわかりません

私がやりたいことをうまく説明できたと思います。前もって感謝します。

4

1 に答える 1

1

投稿のタイトル (つまり、URL エンコードされたバージョン) が一意であることを確認する必要があります。その後、mod_rewrite を使用して .htaccess を設定できます。

RewriteEngine On
RewriteRule ^(.*)\.html$ more.php?book=$1

また、PHP スクリプトがPDOを使用して SQL インジェクションを回避していることを確認してください。

$db = new PDO('mysql:dbname=my_db;host=127.0.0.1', 'user', 'password');
$statement = $db->prepare("select * from book where BOOK_NAME = :book");
$statement->execute(array(':book' => $_GET['book']));
$row = $statement->fetch();
于 2013-02-24T14:04:10.210 に答える