0

やあみんな私は簡単なログインスクリプトを作成しています。有効なユーザー名とパスワードを入力すると、関数はlogin_success.phpを呼び出しますが、何も起こりません。リソースには次のリンクを使用しました。

このサイトでもたくさんの投稿を検索しました。あなたの助けは常にありがたいです。コードは次のとおりです。

login.php

<?php
ob_start(); 
include 'connect.php'; 

$usernamefield = $_POST['usernamefield']; 
$passwordfield = $_POST['passwordfield']; 

$sql = "SELECT * FROM login WHERE username = '$usernamefield' and password = '$passwordfield'"; 
$result = mysql_query($sql); 

$count = mysql_num_rows($result); 

if($count == 1) {
    session_register("usernamefield"); 
    session_register("passwordfield"); 
    header("Location: login_success.php"); 
} else { 
    echo "Invalid username or password"; 
} 
exit(); 
?> 

login_success.php

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

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

1 に答える 1

1

login.phpsession_start();ファイルの先頭に配置します。を使用してセッション変数を設定し$_SESSION['variable']='value';ます。を使用してアクセスを確認するif(isset($_SESSION['variable'])){と、それが完了するはずです。

は非推奨であり、次のsession_register('variable');ものと一緒に使用しないでください:http session_is_registered('variable'): //php.net/manual/en/function.session-register.php

これを新しいPHPインストールで機能させようとしている場合は、5.4.xを使用している可能性があり、これらの関数は削除されているため、機能しません。

于 2012-12-03T02:48:04.423 に答える