09/10/2018, 22:42

Thắc mắc về PHP ! Mong giúp đỡ !

Em đang tự học php, nhưng bị vướng 1 chỗ :Em tạo 3 file :
index.php :
<HTML>
<HEAD><TITLE>MUA BAN RAO VAT </TITLE></HEAD>
<BODY>
<B>Ban phai dang nhap de tham gia mua ban !<B> <br>
<?
session_start();
if(@session_is_registered("userID"))
{
$user=$_SESSION["userID"];
echo "Good morning ".$user." <br>";
echo "<a href='account.php'>My Account</a>";
}
else
{
echo "<a href='login.php'>Login</a> ::: <a href='register.php'>Register</a>";
}
?>
</BODY>
</HTML>
Login.php
<HTML>
<HEAD><TITLE>TRANG LOGIN</TITLE></HEAD>
<BODY>
NHAP USERNAME VA PASSWORD <br>
<form method=post action='check.php'>
<input type=text name=txtUser><br>
<input type=pass name=txtPassword><br>
<input type=submit value="LOG ME IN">
</form>
<hr>
</BODY>
</HTML>
Check.php
<?
$user=$HTTP_POST_VARS["txtUser"];
$password=$HTTP_POST_VARS["txtPassword"];

if (($user=="Admin")&&($password=="123"))
{
echo "Xin chao ban ".$user."<br>";
echo "Password cua ban la : ".$password.";
session_start();
session_register(“userID”);
$_SESSION[“userID”]=$user;
}
else
{
echo "Sai Username hoac password";
}
echo "<a href='index.php'>Tro ve trang chu</a>";
?>
Em đã dò rất kỹ nhưng nó vẫn báo lỗi, có ai giải đáp giúp em ko?
trungnd viết 00:46 ngày 10/10/2018
Bạn post cái lỗi đó lên đi nhé.
ohyesssvn viết 00:55 ngày 10/10/2018
Cái ni nhiều bài khác có nói rồi mà, đưa cái session_start() lên trên hết
p.a viết 00:45 ngày 10/10/2018
Bạn có thể nói rõ hơn ko ? chỉ đưa câu <? session start(); lên đầu thui hay là đưa toàn bộ phần code php lên đầu, bạn có thể làm mẫu cho mình 1 cái ko ? THANKS
tnlinh viết 00:47 ngày 10/10/2018
Quote Được gửi bởi p.a
Bạn có thể nói rõ hơn ko ? chỉ đưa câu <? session start(); lên đầu thui hay là đưa toàn bộ phần code php lên đầu, bạn có thể làm mẫu cho mình 1 cái ko ? THANKS
Bạn chỉ cần đưa <?php session start(); ?> lên trên đầu thôi. Dấu trắng (blank/space) cũng không được chen lên trước cái lệnh này. Và ở trang nào dùng session thì lệnh trên đây cũng phải có mặt.

Về lâu dài, bạn nên đọc thêm tài liệu để hiều vì sao.
p.a viết 00:49 ngày 10/10/2018
Mình đã bỏ cả phần HTML ở đầu nhưng vẫn ko được !
File Index.php
<?
session_start();
if(@session_is_registered("userID"))
{
$user=$_SESSION["userID"];
echo "Good morning ".$user." <br>";
echo "<a href='account.php'>My Account</a>";
}
else
{
echo "You must register to join us <a href='login.php'>Login</a> ::: <a href='register.php'>Register</a>";
}
?>
File Login.php
<HTML>
<HEAD><TITLE>TRANG LOGIN</TITLE></HEAD>
<BODY>
NHAP USERNAME VA PASSWORD <br>
<form method=post action='check.php'>
<input type=text name=txtUser><br>
<input type=pass name=txtPassword><br>
<input type=submit value="LOG ME IN">
</form>
<hr>
</BODY>
</HTML>
File Check.php
<?
session_start();
$user=$HTTP_POST_VARS["txtUser"];
$password=$HTTP_POST_VARS["txtPassword"];
if (($user=="Admin")&&($password=="123"))
{
echo "Xin chao ban ".$user."<br>";
echo "Password cua ban la : ".$password.";
session_register ("userID");
$_SESSION["userID"]=$user;
}
else
{
echo "Sai Username hoac password";
}
echo "<a href='index.php'>Tro ve trang chu</a>";
?>
Khi chạy và đăng nhập thì nó báo lỗi : "Parse error: parse error, expecting `','' or `';'' in c:\inetpub\wwwroot\check.php on line 9"
Vậy là sao ?
tinhyeu2 viết 00:45 ngày 10/10/2018
vậy là bị lỗi hang này rồi

echo "Password cua ban la : ".$password.";
phảii là echo "Password cua ban la : ".$password."";
p.a viết 00:43 ngày 10/10/2018
Cám ơn bạn ! Đúng là sai chổ đó ! THANKS !Nếu có thắc mắc gì mình sẽ hỏi tiếp , thanks !Bạn có vẻ biết nhiều về PHP quá nhỉ ? có thể cho mình xin Y.M để có gì mình hỏi thêm ko ?
php&mysql viết 00:49 ngày 10/10/2018
Làm sao để hiển thị nick thành viên online
mình có một website có đăng ký thành viên bây giờ muốn khi thành viên login
thì làm sao để hiển thị nick của thành viên đó và tổng số thành viên củng như guest đang online.
vi du:
=== statistic ====
total online: 10
thành viên:3
guest:7
nick1, nick2, nick3
==============
Thật ra có tham khảo một số web làm theo kiểu timeout mà không hiểu lắm
tnlinh viết 00:55 ngày 10/10/2018
Quote Được gửi bởi tinhyeu2
vậy là bị lỗi hang này rồi

echo "Password cua ban la : ".$password.";
phảii là echo "Password cua ban la : ".$password."";
Thực ra nên viết là:

(1) echo "Password cua ban la : " . $password;

hoặc:

(2) echo "Password cua ban la : $password";

hoặc

(3) echo 'Password cua ban la : ' . $password;

Cách 3 là tốt nhất vì tốc độ nhanh nhất. Với cái ví dụ đơn giản này thì tốc độ không thành vấn đề nhưng việc biết khi nào dùng dấu nháy đơn khi nào nên dùng nháy kép (và... không dùng thừa) là 1 thói quen tốt.
Bài liên quan
0