PDA

View Full Version : سوال: نشان دادن ارور ؛ بعد از دریافت اطلاعات



someonee
سه شنبه 25 شهریور 1393, 00:48 صبح
سلام،
من یه فرم عضویت ساختم، همه چیز کار میکنه فقط یه مشکل داره اونم اینکه به جای اینکه ارور " فید یوزرنیم نمیتواند خالی باشد " یا " فیلد پسورد نمیتواند خالی باشد " رو بعد از دریافت اطلاعات کاربر و چک کردن اونا نشون بده؛ همون موقع که وارد صفحه register.php میشیم این پیغام رو از اول نشون میده ...
راه حلی برای این مشکل هست ؟

<?php
// Connect to DB
$con = mysql_connect("localhost", "root", "")
or die(mysql_error());
//DB Name
mysql_select_db("testr", $con)
or die(mysql_error());
//Recite Var
$username = isset($_POST['username']) ? $_POST['username'] : '';
$password = isset($_POST['password']) ? $_POST['password'] : '';
//Default
$check_error = 0;
//Check info
//Username
if (!isset($username) || $username == ''){
echo "فیلد نام کاربری نباید خالی باشد!";
$check_error = 1;
}
//PassWord
elseif (!isset($password) || $password == ''){
echo "فیلد کلمه عبور نباید خالی باشد!";
$check_error = 1;
}
//Check correct letters
elseif (preg_match('/^[a-zA-Z0-9 _-]+$/', $username) === 0){
echo "نام کاربری دارای کاراکترهای غیر مجاز است!";
$check_error = 1;
}
//Preventing SQL Injection
$username = mysql_real_escape_string($username);
$password = md5($password);
if ($check_error != 1){
//Insert Info into the DataBase
mysql_query("INSERT INTO register (username,password) VALUES('$username','$password')")
or die(mysql_error());
echo "عضویت شما با موفقیت انجام شد!<br />";
}
//End Connection
mysql_close($con);
?>

arkia
سه شنبه 25 شهریور 1393, 09:32 صبح
اگر دکمه ی ارسال اطلاعات شما به صورت زیر باشد


<input name="doRegister" type="submit" id="doRegister" tabindex="8" class="btn" value="ثبت نام" disabled />



کد شما باید بین این شرط باشد

if (isset($_POST['doRegister'])){// your code here}

someonee
سه شنبه 25 شهریور 1393, 10:40 صبح
من اینجوری گذاشتم :


$username = isset($_POST['username']) ? $_POST['username'] : '';
$password = isset($_POST['password']) ? $_POST['password'] : '';
$submit = isset($_POST['submit']) ? $_POST['submit'] : '';

ولی فرقی نکرد.


<input type="submit" name="submit" value="عضویت" />

arkia
چهارشنبه 26 شهریور 1393, 01:20 صبح
شما باید یک شرط کلی قرار بدید که اگر فرم پست شده بود یا آرایه ی پست خالی نبود وارد بقیه ی ماجرا بشه. نمونه ش واضحه دوباره ببین