1

次のコードに問題があります。表示される2つのエラーメッセージは次のとおりです。

Notice: Use of undefined constant myusername - assumed 'myusername' in C:\Program Files\wamp\www\login_success.php on line 3

Deprecated: Function session_is_registered() is deprecated in C:\Program Files\wamp\www\login_success.php on line 3
Login Successful

ただし、最初に入力した情報がない場合でも、ログインは成功したと表示されます。

どこでもあなたの助けをいただければ幸いです。

HTML

メンバーログイン ユーザー名:パスワード:    

CSS

<?php

$host="localhost";
$username="root";
$password="";
$db_name="Hockey Club";
$tbl_name="members";


mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");


$myusername=$_POST['username'];
$mypassword=$_POST['password'];


$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM members WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);


$count=mysql_num_rows($result);



if($count==1){


session_register("myusername");
session_register("mypassword");
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>

および--login_success.php

<?php
session_start();
if(!session_is_registered(myusername)){
header("location:main_login.php");
}
?>

<html>
<body>
Login Successful
</body>
</html>
4

2 に答える 2

3
if(!session_is_registered(myusername)){

引用符を使用するのを忘れました。コードで基本的なデバッグを行ってください。

そう:

if (!session_is_registered('myusername')) {

そして、警告が示すようにsession_is_registered、PHP バージョンでは非推奨であり、実際には新しいバージョンでは削除されています。ドキュメントをお読みください。

その代わり:

if (!isset($_SESSION['myusername'])) {
于 2013-01-11T18:34:32.557 に答える
0

を使用しないでくださいsession_is_registered()

変化する

session_register("myusername");
session_register("mypassword");

$_SESSION['myusername'] = $username;
$_SESSION['mypassword'] = $password;

if(!session_is_registered(myusername)){

if(!isset($_SESSION['myusername'])) {
于 2013-01-11T18:38:47.703 に答える