下面的代碼是爲了將值插入到MySQL數據庫中,如果密碼匹配,用戶名或電子郵件尚未使用。這段代碼是從另一個頁面上的ajax調用的。當它被調用時,頁面會將我重定向到register.php,而不是由ajax在後端完成。有沒有人看到可能導致此問題的任何問題?它不會給我任何錯誤,只是一個空白的白頁。PHP註冊代碼不能正常工作
$user = strip_tags(htmlspecialchars($_POST['user'], ENT_QUOTES));
$pass = strip_tags(htmlspecialchars($_POST['pass'], ENT_QUOTES));
$cpass = strip_tags(htmlspecialchars($_POST['cpass'], ENT_QUOTES));
$age = strip_tags(htmlspecialchars($_POST['age'], ENT_QUOTES));
$email = strip_tags(htmlspecialchars($_POST['email'], ENT_QUOTES));
$country = strip_tags(htmlspecialchars($_POST['count'], ENT_QUOTES));
$lang = strip_tags(htmlspecialchars($_POST['lang'], ENT_QUOTES));
$mdpass = md5($pass);
$mdcpass = md5($cpass);
$created = Date("Y-m-d");
$result = mysql_query("SELECT username,email FROM tableName WHERE username = '$user'");
while ($row = mysql_fetch_array($result))
{
if ($row['username']>0) {
echo 'nvuname';
}
elseif ($row['email']>0)
{
echo 'nvemail';
}
else
{
if ($mdpass == $mdcpass && $age>>14)
{
mysql_query("INSERT INTO tableName (username, pword, email,created,admin,rnumenab,autoreload,country,mailenab,updates,lang) VALUES ($user, $mdpass, $email, $created,'0','1','1',$country,'1','0',$lang)");
echo 'success';
}
}
的JavaScript:
$("#regsubmit").click(function() {
var action = $("#mainReg").attr('action');
var form_data = {
user: $("#user-reg").val(),
pass: $("#pass-reg").val(),
cpass: $("#cpass-reg").val(),
email: $("#email").val(),
age: $("#age").val()
};
$.ajax({
type: "POST",
url: action,
data: form_data,
success: function(result)
{
if(result=='success') {
$('#register-action').animate({
opacity : '-=1',
bottom : '-=60%'
}, 600);
$('#register-action-bckgnd').hide();
$('.message').fadeOut(600);
} else {
$('.regerror').fadeIn(600);
}
}
});
return false;
});
謝謝你,如果你看到任何問題,請讓我知道。非常感謝!
另外:如何清理我的輸入以便不包含HTML標籤或者strip_tags是否可以做到這一點?謝謝。
編輯:它現在的作品,並提交頁面不重新加載,但它總是返回錯誤,而不是成功,即使我確信我使用的是一個開放的電子郵件,用戶名。原來我有('$ age')而不是('#age')。想法?
雖然你的問題是不是不清楚,它的質量是低,因爲還有比問題更多的代碼,使它看起來好像你希望我們做你的工作。考慮從代碼中剝離任何不相關的部分,或者改進問題本身。 *「這是我的代碼,請爲我修復」*通常在這裏不起作用。 – 2012-01-02 21:01:37
@TomvanderWoerdt我刪除了任何不必要的東西 – 2012-01-02 21:03:21
你顯然希望'$ age> 14'而不是'$ age >> 14'(後者是一個位移) – ThiefMaster 2012-01-02 21:09:56