私の質問は誰にでも簡単です。ちょうどこのPHPをほぼ1ヶ月学んでいます。私はOOPスタイルを使って自分のログインシステムを実行しようとしました。ユーザー名とパスワードがadminの既定のユーザーとしてログインする必要がある場所。ログインしようとしたときに、オブジェクトが見つかりませんでした。だからここ ログインシステムでOOPスタイルを実行する
以下の私のコード。表:
CREATE TABLE loginmodule
(
loginId INT PRIMARY KEY AUTO_INCREMENT,
loginUsername VARCHAR(50),
loginPassword VARCHAR(50)
)
ここに私のログインスクリプトがあります。
loginMe.php
<?php
require_once('../connection/connection.php');
require_once('../connection/loginCRUD.php');
require_once('../process/createProcess.php');
?>
<!doctype html>
<html>
<head>
<title>Login Frame</title>
</head>
<body>
<div id = "container">
<h1>Login</h1>
<form action = "post" action = "../process/createProcess.php">
<div class = "form-field">
<input type = "text" id = "username" name = "loginUsername" placeholder = "Enter Username">
</div>
<div class = "form-field">
<input type = "password" id = "password" name = "loginPassword" placeholder = "Enter Password">
</div>
<div class = "form-field">
<input type = "submit" id = "submit" name = "submit" value = "Login">
</div>
</form>
</div><!--- end container --->
</body>
</html>
だから私は、別のファイルに私のCRUDを脇に置きます。 loginCRUD.php
<?php
error_reporting(0);
class CRUD
{
public function readLogin($dbusername,$dbpassword)
{
global $myDatabase;
$result = $myDatabase->query("SELECT * FROM loginmodule WHERE loginUsername = '$dbusername' AND loginPassword = '$dbpassword'");
if($result->num_rows > 0)
{
$row = $result->fetch_assoc();
return $row;
}
}
}
?>
私はまた私の検証が起こる私のプロセスを脇に置き最終。私が何かを逃した場合 createProcess.php
<?php
require_once('../connection/connection.php');
require_once('../connection/loginCRUD.php');
session_start();
$dbusername = $_POST['loginUsername']; //Get the value from textfield.
$dbpassword = $_POST['loginPassword'];
if(!empty($dbusername) && !empty($dbpassword))
{
if($loginUsername == $dbusername && $loginPassword == $dbpassword)
{
$create = loginCRUD::readLogin($dbusername,$dbusername);
echo "You are logged in!";
@$_SESSION['loginUsername'] = $loginUsername;
}
}
?>
は私をガイド。これは私が知っているよりも、ショートカットのスタイルがある場合:)
完全なエラーメッセージで質問を更新できますか?それはあなたを助けることがより簡単になります。 – olibiaz
'$ myDataase'はタイプミスです。 '$ myDatabase'でしょうか? – chris85
この文は、 '$ loginUsername == $ dbusername && $ loginPassword == $ dbpassword){...'、 '$ loginUsername'と' $ loginPassword'をどこから取得しましたか? –