Eerst: je hebt een syntaxisfout. [0-9+] is een tekenklasse die kan overeenkomen met (i) cijfers in het bereik 0 t/m 9 , of (ii) een + teken. Om de + . te gebruiken als een kwantor (zoals bedoeld), verplaats de + na de ] , zoals zo:([0-9]+) .
Tweede: Je gebruikt $2 in uw artikel, dat is de productnaam. Als je de ID wilt gebruiken, moet je $1 . gebruiken .
Dit is wat je moet gebruiken:
RewriteEngine On
RewriteRule ^products/([0-9]+)\-([a-z0-9_\-]+)/?$ products.php?product_id=$1 [NC,L,QSA]
Ik heb de productnummers, streepjes en onderstrepingstekens toegevoegd voor het geval je het ooit nodig hebt.
Derde: U moet op de hoogte zijn van sql-injecties , uw script is niet veilig. U kunt dit oplossen door mysql_real_escape_string te gebruiken .