2016-12-27 4 views
0

Wie Sie die Get Methode URL in PHP ändern. Hier ist mein Codekonvertieren Formular Get Methode URL in PHP

<form method="get" action="offers.php"> 
    Name :<input type="text" name="name"><br> 
    Subject : <input type="text" name="sub"><br> 
    <input type="submit" value="Submit"> 
</form> 

und in offers.php Datei Code

<?php 
    $name = $_REQUEST['name']; 
    $subject = $_REQUEST['sub']; 
?> 

Nachdem er die Eingangswerte zeigt url "http://localhost/htaccess/offers.php?name=raj&sub=kumar" aber ich möchte die URL zeigen http://localhost/htaccess/raj/kumar ist. Wie man dieses Problem löst. Wie konvertiert man diese URL? Hier sind raj und kumar eingegebene Werte nicht für den Standardwert.

+0

Wenn Sie das Formular an dieser URL gehen wollen werden, Nachdem Sie die Umschreibungsregeln so eingerichtet haben, dass sie mit der URL übereinstimmen, müssen Sie JavaScript verwenden, um die Formularaktion beim Senden von Formularen zu ändern. Dies wird nicht automatisch vom Browser gehandhabt, da dies keine Standardaufgabe ist. Es ist rein kosmetisch. –

Antwort

0

Änderung zu Post senden.

ändern $ _REQUEST zu $ ​​_POST

Auch setzen die $ _POST Daten innerhalb einer bedingten, wie:

if ($_SERVER['REQUEST_METHOD'] == 'POST') 
{ 
    $name = $_POST['name']; 
    $subject = $_POST['sub']; 
} else { 
    // form was not posted 
} 
+0

Sie möchten die URL ändern, um die Formularwerte als Ordner aufzunehmen und mod_rewrite zu verwenden, und nicht die get-Werte ausblenden. –

1

Hmm, Sie haben ein paar Dinge passiert. Erstens, um loszuwerden, die ?name=raj&sub=kumar Zeichenfolge auf Ihrer URL

Verwenden POST nicht GET

<form method="POST" action="offers.php"> 
    Name :<input type="text" name="name"><br> 
    Subject : <input type="text" name="sub"><br> 
    <input type="submit" value="Submit"> 
</form> 

Als nächstes haben Sie eine ganz andere Welt von Fragen in Rewrite-Regeln mit offers.php Änderung raj/kumar zu machen. Versuchen Sie, ein paar dieser Links, die Sie dorthin zu gelangen:

Die grundlegende Prämisse ist dies:

offers.php wird noch angefordert werden, bis Sie ändern Ihr Formular, um wie folgt auszusehen:

<form method="POST" action="raj/kumar"> 
    Name :<input type="text" name="name"><br> 
    Subject : <input type="text" name="sub"><br> 
    <input type="submit" value="Submit"> 
</form> 

aber das wird nicht funktionieren, bis Sie htaccess und mod_rewrite für Sie zu arbeiten „umschreiben“, dass raj/kumar url „behandelt“ von offers.php

+0

Sie müssen JS verwenden, um die Aktion des Formulars (oder nur 'location.href' im Pfad) zu ändern. Was sie suchen ist, die URL in etwas wie '/ {name}/{sub} /' zu ändern, nicht nur die URL in ein statisches 'raj/kumar' zu ändern oder von GET nach POST zu wechseln. –

+0

Raj und Kumar geben Eingabewerte – narendra