PDA

View Full Version : سوال: مشکل در جلوگیری از ثبت نام یوزرهای تکراری به صورت اجکسی



ironclip
چهارشنبه 29 مرداد 1393, 17:33 عصر
بخش جاوا اسکریپت


$(function(){
$('#a1').blur( function(){
check_username();
})
});

function check_username(){
$('.username_error').html('<img src="./images/loader.gif" />').show();
var user = $('#a1').val();
if(user.length <= 2 ){
$('#a1').css('background-color' , '#FCC2C4');
slidedown('نام کاربری باید بیشتر از دو کاراکتر باشد');
return false;
}
if(!user.match(/^[a-zA-Z][a-zA-Z\d-_\.]+$/)){
$('#a1').css('background-color' , '#FCC2C4');
slidedown('لطفا نام کاربری را با کلمات و اعداد لاتین وارد کنید');
return false;
}


$.GET('valid.php' ,{user:user}, function(data){
if(data == "true"){
$('#a1').css('background-color' , '#ff0000');
slidedown(' این نام کاربری قبلا انتخاب شده ');
}
else
{
$('#a1').css('border' , '1px solid #CEF2C4');
$('.username_error').hide();
}
}); //$.post

}; //check_username





بخش html


<div>نام کاربری : <input name="username" type="text" id="a1" /> <br /><div class="username_error" style="display:none" ></div>کلمه عبور : <input name="password" type="password" id="a2" /><br />ایمیل : <input name="email" type="text" id="a3" /><br /><input name="send" type="submit" value="ثبت نام" id="ajax_reg" /></div>

فایل valid.php


<?php$con=mysql_connect('localhost','root','');if(! $con) {die ('MySQL connect error !');}if(!mysql_select_db('pro-test')){die('MySQL database select error !');}
$user=@$_GET['username'];
if(!$user){ die('لطفا نام کاربری را وارد کنید !');}
$result = mysql_query("SELECT u_username FROM users WHERE u_username = '$user' ");if($result) echo "true"; else echo "false"; mysql_close($con);?>

اینم سورس mysql


CREATE TABLE IF NOT EXISTS `users` (
`u_id` int(11) NOT NULL AUTO_INCREMENT,
`u_username` varchar(40) NOT NULL,
`u_password` varchar(32) NOT NULL,
`u_email` varchar(50) NOT NULL,
PRIMARY KEY (`u_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;


--
-- حذف داده‌هاي جدول `users`
--


INSERT INTO `users` (`u_id`, `u_username`, `u_password`, `u_email`) VALUES
(1, '6801', '0cc175b9c0f1b6a831c399e269772661', 'moh.6801@yahoo.com');


مشکل من اینجاست اجکسش کامل انجام نمیشه ، متود گیت و پست رو به درستی انجام نمیده و مقدار data مشخص نمیشه که بتونم براش کد نویسی کنم
یعنی مقداری که به صورت گیت یا پست به فایل ولید ارسال می کنم مقدار برگشتی نمی دونم داره یا نه !؟
ممون میشم دوستان رسیدگی کنند تا بتونم مشکلم رو رفع کنیم

alibehroozi
چهارشنبه 29 مرداد 1393, 19:47 عصر
از اجکس استفاده نکنید از XMLREQUEST استفاده کنید :d

Mohammadsgh
چهارشنبه 29 مرداد 1393, 21:42 عصر
مشکل ای جکس تو این کار چیه؟(بهترین کاره)

ironclip
چهارشنبه 29 مرداد 1393, 23:12 عصر
مشکل ای جکس تو این کار چیه؟(بهترین کاره)

سلام
مشکل از این متود های گیت و پست بود که من اینجا با حروف بزرگ نوشته بودم که جاوا اجراش نمی کرد ! (خط 22) بخش جاوا
بعدش در بخش php این کد هم یه تغییر کوچک هم دادم تا اسکریپت بدون مشکل اجرا شد :چشمک: