带有echo变量的MySql select语句

时间:2017-07-26 13:52:32

标签: php html mysql mysqli

我有两个表的mysql数据库。主表包含用户登录详细信息,辅助表包含用户活动。表格按帐号链接。

我已创建注册页面并登录用户注册和登录的页面。用户显示带有两个按钮的主页。

当用户点击该按钮时,它应该根据用户登录凭据运行查询。查询如下所示:

$result = mysql_query("select mydate, preamount, currentdeposit,
debit, currentinterest, totalamount, status  from NormalAccount where
acctnumber = '$actno'n ORDER BY mydate DESC LIMIT 5");

因为我需要根据用户帐号进行过滤,所以我设计了一个表格,他们需要再次输入帐号。这使整个过程看起来像双重工作,用户抱怨两次输入信息的整个过程。

我想要什么:

如何编写查询,以便查询自动填充用户凭据,以便他们在查看帐户详细信息之前无需再次输入帐号?

我已经在页面上进行了会话,这使我能够使用echo(例如echo acctname)在页面上提取和显示用户详细信息,其中它在页面的任何部分显示用户的帐户名称。

我使用php with echo下面自动使用帐户名向用户自动显示欢迎消息。如何在下面集成此代码

<?php echo $userRow['acctname']; ?>

进入主查询的WHERE子句,以便它自动填充用户的帐户名,以便它根据他们的acctname过滤记录?

我在每个页面上都有一个会话,其中包含以下代码:

<?php
ob_start();
session_start();
require_once 'dbconnect.php';
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
$res=mysql_query("SELECT * FROM userss WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
?>

感谢。

Zollyzo

2 个答案:

答案 0 :(得分:0)

我不完全确定我理解这个问题,但是第一次询问帐号时,您可以在第一次从用户收到时将其存储在$ _SESSION变量中。然后,您可以稍后检索它,即使它位于不同的页面上。

<?php
session_start();
...
//you get the account number somehow in $actno
$_SESSION['acctNr'] = $actno
...
//later in your code, or on another page that has had session_start() run
$actno = $_SESSION['acctNr']
//use it as you would before.

答案 1 :(得分:0)

如果用户已成功登录,请将其帐号(可能还有其他详细信息)保存在会话变量中。您可以将该会话变量用于后续查询,因此您无需要求用户再次输入其帐号。

基本用法:https://www.w3schools.com/php/php_sessions.asp