Mysql
 sql >> Base de données >  >> RDS >> Mysql

réécrire les URL pour le nom du produit

Première : vous avez une erreur de syntaxe. [0-9+] est une classe de caractères qui peut correspondre à (i) des chiffres dans la plage 0 à 9 , ou (ii) un + pancarte. Pour utiliser le + en tant que quantificateur (comme prévu), déplacez le + après le ] , comme ceci :([0-9]+) .

Deuxième : Vous utilisez $2 dans votre article qui est le nom du produit. Si vous souhaitez utiliser l'ID, vous devez utiliser $1 .

Voici ce que vous devez utiliser :

RewriteEngine On
RewriteRule ^products/([0-9]+)\-([a-z0-9_\-]+)/?$ products.php?product_id=$1 [NC,L,QSA]

J'ai ajouté dans les numéros de produits, un tiret et un trait de soulignement au cas où vous en auriez besoin un jour.

Troisième : Vous devez être conscient des injections SQL , votre script n'est pas sûr. Vous pouvez résoudre ce problème en utilisant mysql_real_escape_string .