3

これで、ユーザーがユーザー名とパスワードでログインしたときに、名前などのデータを取得し、それをウェルカムページに配置する必要があるセッションでログインフォームを作成しました。

現在、このコードを作成しましたが、このコードはすべてのユーザー データを取得します。

 <?php 
 mysql_connect("localhost", "root", "") or die(mysql_error()); 
 mysql_select_db("usersdata") or die(mysql_error()); 
 $data = mysql_query("SELECT * FROM userid") 
 or die(mysql_error()); 
 Print "<table border cellpadding=3>"; 
 while($info = mysql_fetch_array( $data )) 
 { 
 Print "<tr>"; 
 Print "<th>Name:</th> <td>".$info['Name'] . "</td> "; 
 Print "<th>Username:</th> <td>".$info['Email'] . " </td></tr>"; 
 } 
 Print "</table>"; 
 ?> 

その方法を見つけたいと思っています。:D

4

4 に答える 4

1

mysql_ ではなく mysqli_ 拡張子を使用する必要がありますが、次のようなものが必要です。

$result = mysql_query("SELECT * FROM userid WHERE username = '" . $username . "'")
    or die(mysql_error());
if(mysql_num_rows($result) == 1) {
    //Found the user
    $row = mysql_fetch_array($result);
    //Results can be accessed like $row['username'] and $row['Email']
} else {
    //Too few or too many records were found
}

注: 例として username='$username' を使用しました。ID は特定の行を参照するため、ログイン プロセスからユーザーの ID を追跡することをお勧めします。

于 2013-06-12T21:16:48.913 に答える
0

セッションでログインフォームをすでに作成しているので、現在ログインしているユーザーのデータを取得するには、次のようにします。

$_SESSION['userid']: ログインページに入力する必要があります。 $_SESSION['userid'] = $id

セッションの詳細: PHP セッション W3schools

その後:

$query= mysql_query("SELECT * FROM `userid` WHERE `id` = '".$_SESSION['userid']."' ")or die(mysql_error());
$arr = mysql_fetch_array($query);
$num = mysql_numrows($query); //this will count the rows (if exists) 

HTML

<html>
 //...
<?php if($num > 0){ ?>
<table border="1" cellpadding="3">
<tr><td colspan="2" align="center">Your Info</td></tr>
<tr>
 <td>Name: <?php echo $arr['Name']; ?></td>
</tr>

<tr>
 <td>Email: <?php echo $arr['Email']; ?></td>
</tr>
</table>
<?php }else{ ?>
 User not found.
<?php } ?>
 //...
</html>
于 2013-06-12T21:29:58.423 に答える
0

コード例は、データベースからすべてのユーザーを取得し、ループを使用してデータをwhileループします。

ログインしたユーザーを取得するには、データを取得するクエリを変更する必要があります。ユーザーがすでにログインしているため、テーブルに主キーがあり、IDを知っていると想定しています。

$data = mysql_query("SELECT * FROM userid WHERE id={$userid}");
$info = mysql_fetch_array( $data );
echo $info['Name'];

$info1 人のユーザーのすべてのユーザー情報が含まれるよう$useridになりました。ログインしているユーザーの実際の ID を入力する必要があります。

于 2013-06-12T21:16:57.477 に答える
0

$data = mysql_query("SELECT * FROM userid")

する必要があります

$data = mysql_query("SELECT * FROM userid WHERE Name='$selectedName'")

もちろん、定義する必要があります$selectedName

また、 http://dev.mysql.com/doc/refman/5.0/en/select.htmlを読んで基礎を学ぶことをお勧めします。

于 2013-06-12T21:19:08.563 に答える