Форма отправки URL Форматирование - PullRequest
2 голосов
/ 04 ноября 2011

У меня есть форма, которая при отправке идет по URL "signup.php? Username = xx", где xx - это поле ввода.Вместо этого мне было интересно, смогу ли я заставить его перейти к следующему URL «signup / xx», где xx берется из поля ввода.

Ответы [ 3 ]

2 голосов
/ 04 ноября 2011

Для этого вам нужно использовать Javascript и некоторый тип .htaccess. Но почему бы вам не использовать POST вместо GET?

Я не хочу singup?username=sawny&password=1234 в моей истории.

EDIT:

Я сделал что-то вроде этого:

$(document).ready(function() {
    $("submit[name='foo']").live('submit', function() {

        var usr = $("form input[name='user']").val();
        $("form input[name='user']").remove(); //Else it will be singup/usr?user=

        $("form[name='bar']").attr("action", "singup/"+ usr);
    });
});

, а затем регулярное выражение @zero, опубликованное в файле .htaccess.

0 голосов
/ 04 ноября 2011

Включить jQuery , если еще не включено

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>

, а затем добавить этот скрипт

<script>
$(function(){
    $("form").submit(function(e){
        e.preventDefault();
        var action = $(this).attr("action");
        var username = $(":input[name='username']").val();
        action = action + "/" + username;
        location.href = action;
    })
})
</script>
0 голосов
/ 04 ноября 2011

Попробуйте это:

RewriteRule ^signup/([^/]*)$ /signup.php?username=$1 [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...