URL rewritting avec formulaire - méthode GET

sacha63

Nouveau WRInaute
Bonjour,

Je suis un débutant en php et en URL rewriting.
Je souhaite créer une calculatrice qui ai une URL de la forme :
adresse_site/calculatrice/[opération]/nombre1/nombre2
J'ai donc utilisé une méthode GET qui me donne une addresse de la forme :

http://localhost/calculatrice.php?choix=addition&nombre1=5&nombre2=5

Avec ce que j'ai pu trouvé sur les forums, j'ai donc créé un .htaccess qui contient :

Code:
RewriteEngine On 
RewriteRule ([a-z]+)/([0-9]+)/([0-9]+).php$ /calculatrice.php?choix=$1&nombre1=$2&nombre2=$3 [L,QSA]

Mais cela n'a aucun effet. J'ai essayé plusieurs modifications sans succès.
Quelqu'un a-t-il une piste?
Merci.
 

sacha63

Nouveau WRInaute
Bonjour,

Merci de votre réponse.
Avec cette ligne, lorsque je test avec http://localhost/addition/5/5, j'arrive sur une page blache (mais pas une page d'erreur).
Par contre, lorsque je test directement en cliquant sur le bouton d'envoie du formulaire, j'ai toujours l'adresse http://localhost/calculatrice.php?op=addition&nombre1=5&nombre2=5
Merci
 

sacha63

Nouveau WRInaute
D'après ce que j'ai compris, il faut que je passe par une base de données pour enregistrer les valeurs.
Il n'y a pas une solution plus simple?
Merci.
 

spout

WRInaute accro
Non t'as dû mal comprendre.

- Post:
PHP:
<span class="syntaxdefault"></span><span class="syntaxkeyword"><</span><span class="syntaxdefault">form action</span><span class="syntaxkeyword">=</span><span class="syntaxstring">"..."</span><span class="syntaxdefault"> method</span><span class="syntaxkeyword">=</span><span class="syntaxstring">"POST"</span><span class="syntaxkeyword">>&nbsp;</span><span class="syntaxdefault"></span>
- Redirect:
PHP:
<span class="syntaxdefault">$url </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">"/</span><span class="syntaxkeyword">{</span><span class="syntaxdefault">$_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'operation'</span><span class="syntaxkeyword">]}</span><span class="syntaxstring">/</span><span class="syntaxkeyword">{</span><span class="syntaxdefault">$_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'nombre1'</span><span class="syntaxkeyword">]}</span><span class="syntaxstring">/</span><span class="syntaxkeyword">{</span><span class="syntaxdefault">$_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'nombre2'</span><span class="syntaxkeyword">]}</span><span class="syntaxstring">"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Location: </span><span class="syntaxdefault">$url</span><span class="syntaxstring">"</span><span class="syntaxkeyword">);&nbsp;</span><span class="syntaxdefault"></span>
- Get: /addition/5/5/ => accès à $_GET['operation'], $_GET['nombre1'], $_GET['nombre2']
 

sacha63

Nouveau WRInaute
Merci beaucoup! Je réussis bien à avoir l'URL.
Par contre, je n'arrive plus à afficher des éléments sur ma page, même un "echo" (j'ai une page blanche) :

Code:
<?php

if(isset($_POST['nombre1']) AND isset($_POST['op']) AND isset($_POST['nombre2'])) // Si les varaibles existent
{
   
    $url = "/{$_POST['op']}/{$_POST['nombre1']}/{$_POST['nombre2']}";
    header("Location: $url");                                                                       //redirection
     $nombre1 =htmlspecialchars($_GET['nombre1']); // On sécurise
    $op = htmlspecialchars($_GET['op']);
    $nombre2 = htmlspecialchars($_GET['nombre2']);

    echo 'Test';
 

sacha63

Nouveau WRInaute
Re: URL rewritting avec formulaire - méthode GET [Résolu]

C'est bon, j'avais mal placé la méthode GET dans ma page.
Encore merci pour votre aide
 

Discussions similaires

Haut