2016-09-04 65 views
0

情況: 形式在https://example.com 如果在輸入用戶寫入「演示」提交後,他們將被重定向到 https://demo.example.com其中「演示」是從他們之前推出的價值。如何傳遞給URL(子網域)的輸入值以表格

如何做到這一點?

我的代碼:

<form class="form-inline" action="http://example.com" method="GET"> 
 
    <div class="form-group"> 
 
    <label class="sr-only" for="exampleInputAmount">Login</label> 
 
    <div class="input-group"> 
 
     <div class="input-group-addon">https://</div> 
 
     <input type="text" class="form-control" id="exampleInputAmount" placeholder="username" value=""> 
 
     <div class="input-group-addon">.example.com</div> 
 
    </div> 
 
    </div> 
 
    <button type="submit" class="btn btn-primary">Login</button> 
 
</form>

回答

2

如果jQuery是OK的你,這裏有一個簡單的解決辦法:

$(function() { 

    $('#form').submit(function() { 

     var subdomain = $('#exampleInputAmount').val(); 
     $('#form').attr('action', 'http://' + subdomain + '.example.com'); 

     return true; 
    }); 

}); 
+0

我把這個腳本內標籤只是身體結束之前。這沒有用。我不知道爲什麼。 :) –

+0

您是否將jQuery添加到頁面? (例如,轉換爲頭文件')。 JavaScript控制檯會拋出一些錯誤? – Blazeag

+0

@Syafiq Zainal,你也可以將id =「form」添加到你的表單屬性 – Blazeag

1

按鈕後點擊表格將被提交。因此,在頁面頂部,您可以使用下面的代碼。

PHP解決方案:

if(isset($_GET['submit'])){ 
    $text = $_GET['inputtext']; 
    $url = 'http://'.$text.'example.com'; 
    header('Location: ' . $url); 
    exit(); 
} 

HTML變化:

<input type="text" name="inputtext" class="form-control" id="exampleInputAmount" placeholder="username" value=""> 
<button name="submit" type="submit" class="btn btn-primary">Login</button> 
+0

這適用於重定向,但這種方式你會失去所有其他POST/GET表格數據後,直接指向子域,如果需要驗證這是不是最好的:) – Blazeag

+0

上面的輸入:我認爲沒有什麼是OP需要... – Riad

+0

對,現在還不清楚。 @Syafiq Zainal,你會在重定向到subdomain.example.com之後執行身份驗證嗎? – Blazeag

相關問題