Primo: hai un errore di sintassi. [0-9+]
è una classe di caratteri che può corrispondere a (i) cifre nell'intervallo 0
tramite 9
, o (ii) un +
cartello. Per utilizzare il +
come quantificatore (come previsto), sposta il +
dopo il ]
, in questo modo:([0-9]+)
.
Secondo: Stai usando $2
nel tuo articolo che è il nome del prodotto. Se vuoi usare l'ID, devi usare $1
.
Ecco cosa devi usare:
RewriteEngine On
RewriteRule ^products/([0-9]+)\-([a-z0-9_\-]+)/?$ products.php?product_id=$1 [NC,L,QSA]
Ho aggiunto i codici prodotto, il trattino e il trattino basso nel caso ne avessi bisogno un giorno.
Terzo: Dovresti essere a conoscenza di sql injections , il tuo script non è sicuro. Puoi risolvere questo problema utilizzando mysql_real_escape_string .