Först: du har ett syntaxfel. [0-9+]
är en teckenklass som kan matcha (i) siffror i intervallet 0
till 9
, eller (ii) ett +
tecken. För att använda +
som en kvantifierare (som avsett), flytta +
efter ]
, som så:([0-9]+)
.
Andra: Du använder $2
i din vara som är produktnamnet. Om du vill använda ID:t måste du använda $1
.
Här är vad du behöver använda:
RewriteEngine On
RewriteRule ^products/([0-9]+)\-([a-z0-9_\-]+)/?$ products.php?product_id=$1 [NC,L,QSA]
Jag lade till produktnumren, bindestreck och understreck om du skulle behöva det någon gång.
Tredje: Du bör vara medveten om sql-injektioner , ditt skript är inte säkert. Du kan fixa detta genom att använda mysql_real_escape_string .