-2

我已经尝试了多种代码组合,以尝试在他们登录后在他们自己的个人资料页面上向他们显示我的客户数据。

这是我第一次设计网站,我以前从未使用过 MySQL,但我对它的工作原理有了一个快速的了解。

我知道我需要创建会话以在他们登录时“存储”他们的信息,然后我可以按我的意愿显示它?

有人有我可以使用的代码吗?

我的 SQL 信息:

  • 数据库:taxretur_login
  • 表:成员

我想展示的方面:

  • 姓名
  • 电子邮件
  • 用户名

谢谢。斯坦。

更新:

此代码有效并将我的所有表格信息拉到用户页面,但我只想要该特定用户独有的数据:

<?php
$dbhost = 'localhost';
$dbuser = '';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT id_user, email, 
           name, username
    FROM members';

mysql_select_db('taxretur_login');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_assoc($retval))
{
echo "User ID :{$row['id_user']}  <br> ".
     "Email: {$row['email']} <br> ".
     "Name: {$row['name']} <br> ".
     "Username : {$row['username']} <br> ".
     "--------------------------------<br>";
}  
echo "Fetched data successfully\n";
mysql_close($conn);
?>
4

4 回答 4

2

在数据库中创建成员表

CREATE TABLE `members` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` char(20) NOT NULL,
  `name` char(30) NOT NULL,
  `email` char(40) NOT NULL,
  `pass` char(20) NOT NULL,
  PRIMARY KEY (`id`)
);

将用户添加到表成员中

INSERT INTO `members` VALUES ('1', 'user1', 'mr. x', 'email@domain.com', '123');

只需在页面 connection.php 中将变量更改为您的 mysql 用户

连接.php

<?php
$mysql_host = "localhost";
$mysql_user = "root";
$mysql_pass = "";
$mysl_database = "taxretur_login";

$conn = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_select_db($mysl_database, $conn);
?>

登录.php

<?php
include("connection.php");

if(isset($_POST["submit"])) {
    $username = $_POST["username"];
    $pass = $_POST["pass"];

    $sql = "SELECT * FROM members 
            WHERE username='$username' AND pass='$pass'";
    $result = mysql_query($sql);
    $numRows = mysql_num_rows($result);
    if($numRows==1) {
        session_start();
        $_SESSION["username"] = $username;
        header("Location: ./profile.php");
    } else {
        echo "Invalid Login Information";   
    }
}
?>

<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="post">
<table>
<tr><td>User Name</td><td><input type="text" name="username" /></td></tr>
<tr><td>Password</td><td><input type="password" name="pass" /></td></tr>
<tr><td></td><td><input type="submit" name="submit" value="Login" /></td></tr>
</table>
</form>

配置文件.php

<?php
session_start();
include("connection.php");

$username = $_SESSION["username"];

$sql = "SELECT * FROM members WHERE username='$username'";
$result = mysql_query($sql);

if($row = mysql_fetch_array($result)) {
    $username = $row["username"];
    $name = $row["name"];
    $email = $row["email"];

    echo "
    <table>
        <tr><td>User Name</td><td> : </td><td>$username</td></tr>
        <tr><td>Name</td><td> : </td><td>$name</td></tr>
        <tr><td>Email</td><td> : </td><td>$email</td></tr>
    </table>
    ";
}
?>
于 2013-09-24T10:47:37.270 回答
1

您应该先尝试一下,这里有帮助。使用 select 语句连接数据库并打印名字 http://www.w3schools.com/php/php_mysql_select.asp
http://www.tutorialspoint.com/mysql/mysql-select-query.htm

于 2013-09-24T10:12:07.063 回答
0

假设您的用户有一个用户 id (uid),您应该能够从数据库中获取相对于他们所说的“uid”的信息。

示例查询如下所示:

SELECT firstname, lastname, email FROM `users` WHERE `id` = 'UID_HERE';

如果您的表格中有名字、姓氏和电子邮件字段/列。

一定要考虑使用Mysqli来完成所有数据库工作,因为 mysql_ 不再被开发。

于 2013-09-24T10:24:33.457 回答
0

修改您的查询

$sql = 'SELECT id_user, email, name, username
          FROM members';

$sql = "SELECT id_user, email, name, username
          FROM members where id_user = '$dbuser'";
于 2013-09-24T10:36:56.793 回答