私はログインとセッションの作成にこのクエリを使用しました。コアphpのログイン用セッションを作成するには?
$username = $_REQUEST['user'];
$password = $_REQUEST['pass'];
$member = mysqli_query($conn,"SELECT * FROM `user` WHERE `email` = '".$username."' AND `password` = '".$password."' ");
$member1 = mysqli_fetch_assoc($member);
if ($member1>0)
{
$_SESSION['username']=$member1['fullName'];
$_SESSION['companyid']=$member1['comapanyId'];
header('Location: home.php');
}
else
{
header('Location: index.php');
}
私はセッションを作成することができる午前私はこのページに
$_session['companyid'];die;
をエコー場合、それはID 完璧にすることを印刷することを意味します。ここではhome.phpにジャンプしてこのセッションを使用しています。私はこのページの上に
私はエラー通知が得る私session_start()
と書いています。 未定義のインデックス:print_r($_SESSION['companyid'])
場合は今、私はこのようなISSET機能を使用し、この問題のために
を企業ID、
if (isset($_SESSION['companyid'])) {
echo $_SESSION['companyid'];
}
しかし、私は再び失敗していますhome.phpに
$_SESSION
を印刷するにはどうすればいいのですか。 私は間違っています。私はエコー場合、私はセッションを作成することができています
あなたのコードは[** SQLインジェクション**](https://en.wikipedia.org/wiki/SQL_injection)攻撃に対して脆弱です。あなたは[** mysqli **](https://secure.php.net/manual/en/mysqli.prepare.php)または[** PDO **](https ://secure.php.net/manual/en/pdo.prepared-statements.php)ドライバ。 [**この記事**](https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)には、いくつかの良い例があります。 –
**プレーンテキストのパスワードを保存しないでください**。代わりに['password_hash()'](http://us3.php.net/manual/en/function.password-hash.php)と['password_verify()'](http://us3.php.net /manual/en/function.password-verify.php)。 5.5より前のバージョンのPHPを使用している場合は、MD5またはSHA1を使用せず**パスワードをハッシュします。代わりに、[この互換性パック](https://github.com/ircmaxell/password_compat)を使用することができます。 –
セッションを使ってすべてのページの先頭に 'session_start();'を置く必要があります。 –