Bonjour,

Je fais une menu de navigation avec url rewrite. Le tout vient de la base de donnee. Le probleme est que si je code pas en "dur" dans le Htaccess tout va bien mais tout ce que j'ai en parametre url ne correspond pas des que je passe mes variables de ma requete.
En fait, j ai l impression qu il prend le parametre section pour le parametre url

Le parametre section est un array qui permet d inserer une page en fonction du nom de la section qui est gerer par le menu dont je poste la fonction.
Le parametre url est en fait, la reecriture d url qui est stockee et geree dans une base de donnees

Merci d avance de vos lumieres

David

Voici le code operationel:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
$query = "SELECT parent,id_group,name_menu,url FROM menu WHERE lang='".$_SESSION['lang']."'";
                $result = mysql_query($query);
 
                $categories = array();
                while($row = mysql_fetch_array($result)) {
                        $categories[] = array(
                        'parent_id' => $row['parent'],
                        'categorie_id' => $row['id_group'],
                        'name_menu' => $row['name_menu'],
                        'url_rewrite' => html_entity_decode($row['url'], ENT_NOQUOTES, "UTF-8")    
                        );
                }
                function show_menu($parent, $level, $array){ 
                    $html = "";
                    $level_previous = 0;
 
                    if(!$level && !$level_previous){
                        $html .= "\n<ul>\n";
                    } 
 
                    foreach ($array as $node){
                        if ($parent == $node['parent_id']){
                            if ($level_previous < $level) $html .= "\n<ul>\n";
                            $html .= "\t<li><a href=\"".$node['url_rewrite']."-".$_SESSION['lang']."\">".$node['name_menu']."</a>";
                            $level_previous = $level;
                            $html .= show_menu($node['categorie_id'], ($level + 1), $array);
                        }
                    }
                    if(($level_previous == $level) && ($level_previous != 0)){
                        $html .= "</ul>\n</li>\n";
                    }elseif($level_previous == $level){
                        $html .= "</ul>\n";
                    }else{
                        $html .= "</li>\n";
                    }
                    return $html; 
                }
                echo show_menu(0, 0, $categories);
Mon HTACCESS qui fonctionne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
RewriteRule ^(fr|en|kh)/website-building$ index.php section=website_building&url=website-pictura-crea&lang=$1 [L]
Mon HTACCESS comme je voudrais:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
RewriteRule ^(fr|en|kh)/(.*)$ index.php?section=$2&url=$2&lang=$1 [L]