-1

ユーザー用の小さなログイン システムを作成しました。ユーザーは、account_setting ページでログインしてユーザー情報を変更できます。

しかし、私はphpにかなり慣れていないので、どうすれば各ユーザーに独自のページを提供できるのでしょうか? 公開されているページ。

例、ユーザー "Steven" はuser_id=17.

そのユーザーのページを作成して、そのユーザーの情報がそこに表示されるようにするにはどうすればよいですか。のようなものwebsite.com/user=17...彼の情報。

また、ページがテンプレートとして機能する場合は、ユーザーに応じて情報/URLが異なります。

私は誰かにこれを書くように頼んでいるわけではありません.良いチュートリアルへのリンクは問題なく機能します:)しかし、このトピックに関する5年前の投稿はやめてください.

4

4 に答える 4

0

userprofile.php?userid=17が必要で、$_GET['userid']を使用してそのユーザーに基づいて情報を描画します。HTML は userprofile.php と同じである必要がありますが、ユーザー ID に応じてデータのみが変更されます。ユーザーIDが設定されていない場合は、エラーメッセージまたは何かを表示します

于 2013-02-20T17:30:11.920 に答える
0

一般的に言って:

if (!empty($_GET['user']) && is_numeric($_GET['user'])){
  //Find him in database
  if (user_found($_GET['user'])){
    include "left_column.php" ;
    include "user_info.php" ;
  } else {
    echo "Page is not found" ; //or set header error 404
  }
} else {
  include "news_column.php" ;
}
于 2013-02-20T17:30:45.430 に答える
0

website.com/index.php?user=17

<?php
require_once 'db/connect.php';

//Pull in 'user' from the query string.
$user = isset($_GET['user']) ? trim($_GET['user']) : null;

//Try to pull that user's info from the database.
$stmt = $dbh->prepare("SELECT * FROM user WHERE user_id = :user_id");
$stmt->bindParam(':user_id', $user);
$stmt->execute();
$user= $stmt->fetch(PDO::FETCH_ASSOC);

if(!is_array($user)){
    //User not found. Throw 404 or redirect.
    header('HTTP/1.0 404 Not Found');
    exit;
}
?>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title><?php echo htmlentities($user['name'], ENT_QUOTES, "utf-8"); ?></title>
    </head>
    <body>
        <h1><?php echo htmlentities($user['name'], ENT_QUOTES, "utf-8"); ?></h1>
        <p>
            <?php echo nl2br(htmlentities($user['bio'], ENT_QUOTES, "utf-8")); ?>
        </p>
    </body>
</html>
于 2013-02-20T17:36:09.970 に答える
-1

ユーザー情報をデータベースに保存していると仮定します。議論のために、これは mysql データベースであるとします。あなたがする必要があるのは、ユーザーIDをキャプチャしてから、データベースからその列だけを読み取ることです.

URL が website.com/user/view.php?id=17 の場合、ユーザー変数は $_GET['id'] になります。

だから、このようなもの:

$id = mysqli_real_escape_string($_GET['id']);
$results = mysqli->query("select * from users where id = '$id'");
$results = $results->fetch_assoc();

... ユーザーの情報を表示します。次に、それを表示するページを作成するだけです。

于 2013-02-20T17:30:56.640 に答える