プロが教える店舗&オフィスのセキュリティ対策術

PHPでMYSQLを使いってログインフォームを作ったのですが
画像の上の方ようなテーブルを作りPHP側のログインフォームでログインしてもらい
画像のusernameの[S]でログインしたらIDとFirst NameとLast NameをPHPで
画像の下の方のように表示するようにしたいのですが

echo "<tr><th>ID</th><th>USERNAME</th><th>First Name</th><th>Last Name</th></tr>";
$st = ("select * from kd3musers where username='$username'");
(この間)
echo "<tr><td>$id</td><td>$username</td><td>$first_name</td><td>$last_name</td></tr>";

(この間)の中身がわかりません。
別の書き方や、わかる方がいましたらよろしくお願いします

「PHPでMYSQLを使ったログイン」の質問画像

A 回答 (2件)

PHPでデータベースに接続するときのまとめ


http://qiita.com/mpyw/items/b00b72c5c95aac573b71

【サンプルコード】

<?php

function h($str) {
return htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
}

$username = 's';

try {

$dsn = 'mysql:dbname=test;host=localhost;charset=utf8';
$dbuser = 'root';
$dbpass = '';
$options = array(
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
);

$pdo = new PDO($dsn, $dbuser, $dbpass, $options);
$stmt = $pdo->prepare('SELECT * FROM kd3musers WHERE username = ?');
$stmt->execute($username);

} catch (PDOException $e) { }

header('Content-Type: text/html; charset=utf-8');

?>
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<?php if (isset($e)): ?>
<p>Error: <?php echo h($e->getMessage()) ?></p>
<?php else: ?>
<table border="1">
<tr>
<th>ID</th>
<th>USERNAME</th>
<th>First Name</th>
<th>Last Name</th>
</tr>
<?php foreach ($stmt as $row): ?>
<tr>
<td><?php echo h($row['id']); ?></td>
<td><?php echo h($row['username']); ?></td>
<td><?php echo h($row['first_name']); ?></td>
<td><?php echo h($row['last_name']); ?></td>
</tr>
<?php endforeach; ?>
</table>
<?php endif; ?>
</body>
</html>
    • good
    • 0

微妙に何をやりたいかわかりませんが、普通ログインシステムをつくるなら


ユーザーの認証は最初の1回だけおこない、あとはセッションをつかって
ログイン状態をキープします

この回答への補足

説明が下手ですみません。
select * from kd3musers where username='s'
でsの列のからidやfnameやlnameをどうやって引っ張ってくればいいのですか?

補足日時:2014/02/10 20:27
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!