0
我想實現:
- 一個索引頁(的index.html),它允許用戶註冊,它運行於JavaScript (index.js)檢查字段(不在片段index.js提到),然後重定向到一個寄存器頁(腳本/ register.php),其然後將這些值對數據庫。
什麼是實際發生的事情:
- 它重定向到正確的PHP頁面,但是沒有值似乎使用
$_GET
方法時轉移:我得到一個空白頁。
我在做什麼錯?
代碼:
的index.html(僅一個片段)
<input name="user" type="text" id="user" size="25" />
<input name="email" type="text" id="email" size="25" />
<input name="pass" type="password" id="pass" size="25" />
<input type="submit" name="signup" id="signup" value="Sign Up" />
<script type = "text/javascript", src = "index.js">
</script>
index.js(僅一個片段)
document.getElementById("signup").onclick = signup;
var aref = "refcode";
function signup()
{
window.location.href = 'scripts/register.php?emailaddress=' + document.getElementById("email").value + '&username=' + document.getElementById("user").value + '&password=' + document.getElementById("pass").value + '&aref=' + aref;
}
腳本/ register.php(僅摘錄)
<?php
echo $_GET['emailaddress'];
echo $_GET['username'];
echo $_GET['password'];
echo $_GET['aref'];
?>
編輯:我不小心複製了 '腳本/ register.php' 的錯誤代碼,對不起所有的答案誰糾正了它我
'
要訪問它們:
在你的代碼永遠不會使用好變量名:
來源
2013-10-28 18:37:49
您的字段在URL和register.php中的命名方式不同。嘗試這個。
來源
2013-10-28 18:38:19
他們是一樣的'index.js' – Izkata
啊,我在問題的編輯歷史中看到它最初是錯誤輸入的...... – Izkata
對於沒有JS的解決方案,並且PHP替代:
來源
2013-10-28 18:40:18 user2896540
正常的方式做你想要的是使用你的形式
method
屬性或jQuery中的.submit()
事件是什麼。我會告訴我會怎麼做這:HTML 不使用JavaScript的使用$ _ POST
HTML
POST
PHP使用Jquery
JS
注意 我的建議你的是,你應該在這種情況下使用
POST
方法GET requests a representation of the specified resource. Note that GET should not be used for operations that cause side-effects, such as using it for taking actions in web applications. One reason for this is that GET may be used arbitrarily by robots or crawlers, which should not need to consider the side effects that a request should cause.
和
POST submits data to be processed (e.g., from an HTML form) to the identified resource. The data is included in the body of the request. This may result in the creation of a new resource or the updates of existing resources or both.
所以基本上GET用來檢索遠程數據,POST用來插入/更新遠程數據。
來源
2013-10-28 18:53:23