-3

私はphpとmysqlから始めたばかりで、このシナリオがあります。ユーザーはページに登録してログインします。 を使用し$_SESSION['SESS_USERNAME']て彼に挨拶すると、ここまですべて正常に動作します。次に、このログインしたユーザーに関連するデータ (名、姓、住所など) を入力フィールドに表示して、データベースで編集および更新できるようにしたいと考えています。どうすればいいですか?多くの例を見つけましたが、ログインしたユーザーだけのデータを表示したい場合、自分のシナリオに最適なものがわかりません。どんな助けも大歓迎です! ありがとう

4

3 に答える 3

3

次のようなことをしたいと思うでしょう。

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM users WHERE username = '".$_SESSION['SESS_USERNAME']."'");

while($row = mysqli_fetch_array($result))
  {
  echo $row['FirstName'] . " " . $row['LastName'];
  echo "<br />";
  }

mysqli_close($con);
?>

これはを使用してMySQLi SELECTいます。

SELECT * FROM users WHERE username = '".$_SESSION['SESS_USERNAME']."'基本的に、セッションのユーザー名と等しいusersところからすべての行を選択すると言います。usernameしたがって、理論的には、そのユーザー名セッションのデータが返されます。

列データを表示するには、列名を次の場所に入力するだけです。

$row['column_name']

これは、echoたとえば、'doutすることができます。

これがお役に立てば幸いです。今後も、試したことを教えてください。よくある質問をお読みになることをお勧めします。

于 2013-03-22T14:29:50.047 に答える
0

他の情報はどこに保存されますか? それらを検索して取得するには、ユーザー名を使用する必要があります。それらがMySQLデータベースにあると仮定して、エントリを安全に取得するためにPDOのチュートリアルを見てください

于 2013-03-22T14:33:09.033 に答える
0

彼の user_id を使用することをお勧めします。彼がログインすると、user_id で彼の情報を取得します。

例:

<?php

$user = new User();

//Check if is numeric only
if(is_numeric($_SESSION["user_id"]))
  $user->GetUser((int)$_SESSION["user_id"]);
else
  throw new Exception("Session incorrect");   

class User
{
   public $user_name;
   public $last_name;
   public $address;

   public function __construct()
   {
   }

   public function GetUser($user_id)
   {
      //Get user info from database
      // fill object
     $this->user_name = $result["username"];
     $this->last_name = $result["last_name"];
     $this->address = $result["address"];

     return $this;
   }
}
?>
于 2013-03-22T14:34:46.340 に答える