10/10/2018, 10:05

Giúp đỡ về form đăng nhập = PHP

Mình tạo form sau trên html :

<form action="index.php?login=yes" method=POST>
<table border="0">
<tr>
<td>
<LABEL>Username:</LABEL><br/>
<LABEL>Password:</LABEL>
</td>
<td>
<INPUT TYPE="text" id="user" name="user" style="width:150px"/>
<INPUT TYPE="password" id="password" name="pass" style="width:150px"/>
</td>
</tr>
<tr>
<td align="right"><INPUT TYPE="Submit" value="Sign in"/></td>
<td align="center"> <INPUT type="reset" value="Reset"/></td>
</tr>
</table>
</form>

Mình muốn kiểm tra việc đăng nhập này = 1 file php nên đã tạo ra 1 file php để kiểm tra, nhưng ko hiểu sai chỗ nào, mong các bạn chỉ giúp :

<?php
$user=$_POST['user'];
$pass=$_POST['pass'];
$login=$_GET['login'];
if($login=='yes')
{
$con=mysql_connect('localhost','root','123456789') ;
mysql_select_db('sql');
$get="SELECT count(id) FROM login WHERE user='$user' and pass='$pass'";
$result=mysql_query($get);
mysql_close($con);
if($result!=1) echo "Login Failure";
else{
echo "Login sucess!";
};
};
?>

//mình cài localhost = Appserv , user/pasS : root/123456789
//CSDL tạo trên phpmyadmin là : sql . có 1 table tên login + 1 dòng dữ liệu id,user,pass : admin/admin

Trên file php bị sai chỗ nào mà mình gõ sao nó cũng báo "Login Failure" hết . Mong được hướng dẫn tận tình...thanks
ngoc_viet08 viết 12:21 ngày 10/10/2018
if($result!=1) echo "Login Failure";
else{
echo "Login sucess!";
};
if($result!==1)
{
echo "Login Failure";
}
else
{
echo "Login sucess!";
};
ngodoan viết 12:11 ngày 10/10/2018
hic...vẫn lỗi đó bạn ơi. Nhập admin/admin rồi mà vẫn báo " Login Falure" . hic hic

đây là link hình trên phpmyadmin, mình đã tạo database "sql"

lenggiauit viết 12:10 ngày 10/10/2018
mysql_query trả về array nếu echo ra thì $result ko phải là giá trị 1 hoặc 0 hoặc ...
Code:
<?php
$user=$_POST['user'];
$pass=$_POST['pass'];
$login=$_GET['login'];
if($login=='yes')
{
$con=mysql_connect('localhost','root','123456789') ;
mysql_select_db('sql');
$get="SELECT count(id) as tcount FROM login WHERE user='$user' and pass='$pass'";
$result=mysql_query($get);
mysql_close($con);
while($rows = mysql_fetch_array($result))
		{
			extract($rows);
			$tcount == 1 ? echo 'Login sucess!' : echo 'Login false!';
		}

?>
ngodoan viết 12:21 ngày 10/10/2018

[=========> Bổ sung bài viết <=========]

Được gửi bởi lenggiauit
mysql_query trả về array nếu echo ra thì $result ko phải là giá trị 1 hoặc 0 hoặc ...
Code:
<?php
$user=$_POST['user'];
$pass=$_POST['pass'];
$login=$_GET['login'];
if($login=='yes')
{
$con=mysql_connect('localhost','root','123456789') ;
mysql_select_db('sql');
$get="SELECT count(id) as tcount FROM login WHERE user='$user' and pass='$pass'";
$result=mysql_query($get);
mysql_close($con);
while($rows = mysql_fetch_array($result))
		{
			extract($rows);
			$tcount == 1 ? echo 'Login sucess!' : echo 'Login false!';
		}

?>
Parse error: syntax error, unexpected T_ECHO in C:\AppServ\www\version1.2\index.php on line 15 ...

lỗi nữa rồi nè (
hoainguyenduc viết 12:06 ngày 10/10/2018
Được gửi bởi ngodoan
Mình tạo form sau trên html :

<form action="index.php?login=yes" method=POST>
<table border="0">
<tr>
<td>
<LABEL>Username:</LABEL><br/>
<LABEL>Password:</LABEL>
</td>
<td>
<INPUT TYPE="text" id="user" name="user" style="width:150px"/>
<INPUT TYPE="password" id="password" name="pass" style="width:150px"/>
</td>
</tr>
<tr>
<td align="right"><INPUT TYPE="Submit" value="Sign in"/></td>
<td align="center"> <INPUT type="reset" value="Reset"/></td>
</tr>
</table>
</form>

Mình muốn kiểm tra việc đăng nhập này = 1 file php nên đã tạo ra 1 file php để kiểm tra, nhưng ko hiểu sai chỗ nào, mong các bạn chỉ giúp :

<?php
$user=$_POST['user'];
$pass=$_POST['pass'];
$login=$_GET['login'];
if($login=='yes')
{
$con=mysql_connect('localhost','root','123456789') ;
mysql_select_db('sql');
$get="SELECT count(id) FROM login WHERE user='$user' and pass='$pass'";
$result=mysql_query($get);
mysql_close($con);
if($result!=1) echo "Login Failure";
else{
echo "Login sucess!";
};
};
?>

//mình cài localhost = Appserv , user/pasS : root/123456789
//CSDL tạo trên phpmyadmin là : sql . có 1 table tên login + 1 dòng dữ liệu id,user,pass : admin/admin

Trên file php bị sai chỗ nào mà mình gõ sao nó cũng báo "Login Failure" hết . Mong được hướng dẫn tận tình...thanks
Bạn xem lại chổ này dùm mình
Code:
   if($result!=1) echo "Login Failure";
   else echo "Login sucess!";
vì cái $result này nó trả về là 1 object result nên nó báo là fail đúng rồi
Bạn sửa lại là :
Code:
   if(!mysql_num_rows($result)) echo "Login Failure";
   else echo "Login sucess!";
thử xem có chạy dc hem.
Và bỏ dấu ; sau dấu } trong đoạn này nữa :
Code:
if($result!=1) echo "Login Failure";
else{
echo "Login sucess!";
                  };
Thân!
ngodoan viết 12:13 ngày 10/10/2018
aaaaaaaaaa! sửa lại y như vậy rồi. nhưng log sao nó cũng báo sucess hết. ko điền gì hết, bấm submit nó cũng báo Login success . Ngược lại với cái ban đầu bị
lenggiauit viết 12:08 ngày 10/10/2018
Được gửi bởi ngodoan

[=========> Bổ sung bài viết <=========]



Parse error: syntax error, unexpected T_ECHO in C:\AppServ\www\version1.2\index.php on line 15 ...

lỗi nữa rồi nè (
<?php
$user=$_POST['user'];
$pass=$_POST['pass'];
$login=$_GET['login'];
$state = "";
if($login=='yes')
{
$con=mysql_connect('localhost','root','123456789') ;
mysql_select_db('sql');
$get="SELECT count(id) as tcount FROM login WHERE user='$user' and pass='$pass'";
$result=mysql_query($get);
mysql_close($con);
while($rows = mysql_fetch_array($result))
{
extract($rows);
$state = $tcount == 1 ? 'Login sucess!' : 'Login false!';
}
echo $state;
}
?>
ngodoan viết 12:08 ngày 10/10/2018
Oh yeah! Login sucess! Thanks các bạn nhiều, đặc biệt bạn Lenggiauit ^^. chạy rồi bạn ơi...mừng quá . vậy là xong 1 phần
Bài liên quan
0