مشکل در اجرای کد فرم لاگین

jalaladdin

Active Member
این کد را برای فرم لاگین نوشتم روی سیستمم اجرا میشود مشکلی نداره اما همین کد روی لپ تاب ،وقتی روی دکمه ورد کلیک میکنم شرط دوم یعنی پیغام خوش آمدی را میدهد !راهنمایی کنید

PHP:
 <?php

if(isset($_POST['username']))
{
    $con = mysql_connect("localhost","root","");
    if(!$con)
    {
        die('could not connect');
    }

    mysql_select_db("register",$con);

    $username = addslashes($_POST['username']);
    $password = md5($_POST['password']);
    $result   = mysql_query("SELECT COUNT(*) FROM `users` WHERE `username`='$username' AND `password`='$password';");
    

    if(!$result)
    {
        echo 'Could not run query: ' . mysql_error();
        exit;
    }
    $row = mysql_fetch_row($result);
   
    if($row[0] > 0)
    {
        $_SESSION['username'] = $username;
        $_SESSION['password'] = $password;
      
        echo $_SESSION['username']." خوش آمدی";
        
        printf('<form action="logout.php" method="post" class="   dir">
               
        <br/>
        <input type="submit" value="خروج"  />');  exit;
    }
   elseif (empty($username )) {
    printf('<div class=" bg-text1" >لطفانام کاربری و کلمه عبور را وارد کنید</div>');
     printf('<form action="1.php" method="post" class=" " >
        
        
  <div class="dir"> نام کاربری:<input type="text" name="username"   value="" size="20"  class="textbox"   /></div>
      
      <div class="dir">رمز عبور:  <input type="password"   name="password"  value="" size="20"  class="textbox" /></div>
       
     <div align="center">  <input type="submit" value="ورود" class="button" /></div>
        <a href="register.html" ><div class="dir">ثبت نام کاربر جدید </a></div>
        <a href="forgetpassword.php" ><div class="dir">کلمه عبور را فراموش کرده ام </a></div>
        </form>');
    
    
}
    else
    {
        printf('<div class=" bg-text1" >نام کاربری یا کلمه عبور اشتباه می باشد</div>');
         printf('<form action="1.php" method="post" class=" " >
        
        
   نام کاربری:<input type="text" name="username"   value="" size="20"  class="textbox"   /></div>
      
     رمز عبور:  <input type="password"   name="password"  value="" size="20"  class="textbox" /></div>
       
     <div align="center">  <input type="submit" value="ورود" class="button" /></div>
        
        </form>');
    }
    
    
}?>
 

3dsmax

Member
سلام دوست عزیز ...

این خط زیر رو به جای query که نوشتی جایگزین کن، نیاز نیست از count استفاده کنی، میتونی از تابع mysql_num_rows به جای mysql_fetch_row استفاده کنی، این تابع که میگم میاد چک میکنه ببینه چند تا رکورد داری، در این حالت هم یا صفری یا یکیه دیگه.

یه ; هم انگار اضاف زدی تهه query

PHP:
$result   = mysql_query("SELECT * FROM `users` WHERE `username`='".$username."' AND `password`='".$password."');

بعد این طوری چک میکنی آیا رکوردی با این مشخصات ثبته یا نه.

PHP:
$count = mysql_num_rows($result);

if($count > 0)
{
	echo "welcome";
}
 

3dsmax

Member
یه نکتیه دیگه شما اومدید به جای دستور پرکاربرد و ساده ای که خود php قرار داده، یعنی echo، اومدین از یه تابعی که ساختارش به این شکل نیست استفاده کردین، این تابع printf کارش به صورت زیره

PHP:
$num 	= "...";
$location 	= "...";

$format = 'The %2$s contains %1$d monkeys. 
		That is a nice %2$s full of %1$d monkeys.';

printf($format, $num, $location);


بعد از پارامتر اول که اینجا $format هستش، هر چند تا که پارامتر خواستین می تونین بهش پاس بدین، بعد بر اساس علامت خاصی که واسش تعیین شده و شما اونو در متنوتون جای میدین، خودش مقدار متغییر پارامتر رو قرار میده.
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا