Primero: tienes un error de sintaxis. [0-9+]
es una clase de carácter que puede coincidir con (i) dígitos en el rango 0
a través de 9
, o (ii) un +
señal. Para usar el +
como cuantificador (según lo previsto), mueva el +
después del ]
, así:([0-9]+)
.
Segundo: Estás usando $2
en su artículo que es el nombre del producto. Si desea usar la identificación, debe usar $1
.
Esto es lo que necesita usar:
RewriteEngine On
RewriteRule ^products/([0-9]+)\-([a-z0-9_\-]+)/?$ products.php?product_id=$1 [NC,L,QSA]
Agregué los números de producto, guiones y guiones bajos en caso de que los necesite algún día.
Tercero: Debe tener en cuenta las inyecciones de sql , su secuencia de comandos no es segura. Puede arreglar esto usando mysql_real_escape_string .