problema rewrite

Secţiune dedicată începatorilor.

Moderatori: Moderatori, Start Moderator

scrubs
Junior Member
Mesaje: 33
Membru din: Joi Mar 20, 2008 7:43 am

problema rewrite

Mesajde scrubs » Mar Iun 28, 2011 10:55 am

salut am o problema la un rewrite
RewriteEngine On
RewriteRule ^(.*)-([0-9]+)\.html$ \categorii.php?nume_categorie=$1&id_categorie=$2 [QSA,L]
RewriteRule ^(.*)-(.*)-([0-9]+).html$ \local.php?nume_categorie=$1&numelocal=$2&id_local=$3 [QSA,L] mi se bate cap in cap si imi da eroare la select din mysql daca pun in fata de ex RewriteRule ^categorii-(.*)-([0-9]+)\.html$ \categorii.php?nume_categorie=$1&id_categorie=$2 [QSA,L] numai este nici o problema. Ma puteti lamuri si pe mine...multumesc!!!



MarPlo
Senior Member
Mesaje: 885
Membru din: Mie Sep 24, 2008 9:32 am
Localitate: Braila
Contact:

Mesajde MarPlo » Mar Iun 28, 2011 7:16 pm

Incearca in loc de (.*) sa scrii ([^-]*)
Acestea (.*)-(.*) se cam bat cap in cap, deoarece formula (.*) contine toate caracterele, deci si "-".
In general e bine sa specifici mai exact setul de caractere continut de acea portiune din URL, cum ar fi: ([a-z0-9_]+)-([0-9]+)
Cursuri gratuite: | | | |

w3apps
Average Member
Mesaje: 156
Membru din: Joi Sep 02, 2010 11:41 pm

Mesajde w3apps » Mar Iun 28, 2011 10:44 pm

Salut,

Eu folosesc ceva de genul:

RewriteRule ^([0-9A-Za-z\-]+)-_-([0-9]+)\.html$ fisier.php?id=$2

Atunci un link ar arata asa: www.site.ro/categorie-noua-_-5463.html

Folosesc "-_-" ca despartitor intre nume si id pentru ca nulte nume contin si "-"

Apropo am vazut ca tu trimiti ca variabile si numele categoriei. Chiar ai nevoie de el atat timp cat ai id'ul categoriei (e mult mai usor sa iti faca sql injection pe un string decat pe un numar) ?

Sper sa te ajute la ceva!


Înapoi la “PHP Incepători”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 21 vizitatori