2011-08-27 3 views
1

Je travaille avec mod_rewrite pour la première fois. Je vais présenter un scénario. Faites-moi savoir si c'est possible ou non. Supposons que j'ai une table de base de données avec trois attributs table (ID, titre, parentid)Url réécriture mod_rewrite

et mon URL pour accéder au contenu particulier ressemble à ceci:

example.com/content.php?id=some_value 

Maintenant, pour id some_value, le titre est some_title. Est-il possible que ce que

example.com/some_title/ 

peut être rebaptisés ci-dessus url.OR

example.com/content.php?id=some_value&title=some_title 

je aussi url tels que:

example.com/content.php?id=some_value&title=some_title&parenttitle=parent_title 

Dans ce cas devrait être entré url quelque chose comme ceci:

example.com/parent_title/some_title/ 

Si je n'ai pas été clair, faites-le moi savoir. Encore une fois c'est ma première tentative de mod_rewrite. Donc, même une petite information sera très utile.

Répondre

3

Voici ce que vous pouvez mettre dans votre fichier .htaccess

# /id - search an ID 
    RewriteRule ^([0-9]+)(/?)$ /content.php?id=$1 [QSA,L]                 

    # /title - search a title 
    RewriteRule ^([a-z0-9\-\ ]+)$ /content.php?title=$1 [NC,QSA,L]               

    # /parent/child - search parent and child 
    RewriteRule ^([a-z\-\ ]+)/([a-z0-9\-\ ]+)$ /content.php?parent=$1&child=$2 [NC,QSA,L]         

    # /id/name - search id and title 
    RewriteRule ^([0-9]+)/([a-z0-9\-\ ]+)$ /content.php?id=$1&child=$2 [NC,QSA,L]           

    # /search/some_title - search for a title 
    RewriteRule ^search/([a-z0-9\-\ ]+)(/?)$ /search.php?q=$1 [NC,QSA,L]  

etc ...

+0

Je suppose que c'est possible après tout! – Tech4Wilco

-1

NON! La réécriture d'URL NE générez rien. Changez simplement les choses que vous avez à autre chose! vous devriez mettre l'id, le titre ou le parentid dans l'URL si vous allez les utiliser!

+0

merci .. que ce que je pensais. Y at-il une alternative php disponible? – akashr

+0

@akashr bien sûr [this] (http://stackoverflow.com/questions/7196698/rewriting-urls-in-php-instead-of-server-config/7199782#7199782) – tttony

+0

@akashr pourquoi vous ne mettez pas d'identifiant et l'ID parent dans l'URL? Je pense que vous pouvez obtenir vos données par titre (si c'est unique) – undone