- ベストアンサー
PHPでMYSQLを使ったログイン
- PHPを利用してMYSQLを使ったログインフォームを作成しました。ログイン後には、IDとFirst Name、Last Nameを表示するようにしたいのですが、その実装方法がわかりません。
- PHPでMYSQLを使ってログインフォームを作成しましたが、表示する情報が正しく取得できません。どのような書き方や設定が必要なのか教えてください。
- MYSQLを使用してPHPでログインフォームを作成しましたが、ログイン後のユーザー情報が表示されません。効果的な方法を教えてください。
- みんなの回答 (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>
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
微妙に何をやりたいかわかりませんが、普通ログインシステムをつくるなら ユーザーの認証は最初の1回だけおこない、あとはセッションをつかって ログイン状態をキープします
補足
説明が下手ですみません。 select * from kd3musers where username='s' でsの列のからidやfnameやlnameをどうやって引っ張ってくればいいのですか?