php - 从 SQL 中提取数据以构建显示用户特定数据的用户仪表板
问题描述
我想在我的 Wordpress 网站上构建一个用户仪表板页面,该页面从数据库中提取数据,以显示在一段时间内使用会员卡进行的用户特定交易的总和,即一个月、一年等的总交易价值。
这是我迄今为止取得的进展:我对数据库进行了一些研究,并与 SQL、PHP、HTML 等集成,但我是初学者,正在 Wordpress 上构建我的网站,并使用我的主机提供的 MySQL 数据库。我正在使用插件来管理我的用户注册、内容限制等。
我意识到我可以建立一个包含我想要的信息的数据库,然后使用 SQL 查询来调用我想要在仪表板上显示的数据。(我还没有建立这个数据库,需要帮助)
为了使它起作用,我需要一种方法来识别每个用户特定的数据(交易)。为此,我将使用用户的会员号(我已经设置成功)作为 SQL 查询的条件。
我正忙着写一个简码,让我可以在我的网站上的任何地方显示仪表板。
我有两个问题:
- 我知道如何使用“get_user_meta”函数来提取用户的会员编号,但是我不知道如何将用户传递给该函数。即短代码中的参数是什么?(这甚至是正确的问题吗?)我的这种理解来自我对这个自定义代码片段的使用,该代码片段可以正确显示其会员卡上的用户会员编号,如下所示。
function my_pmpro_add_member_numb_after_member_card( $pmpro_membership_card_user, $print_sizes, $qr_code, $qr_data ){
$member_number = get_user_meta( $pmpro_membership_card_user->ID, 'member_number', true );
if( $member_number !== "" ){
echo "<p><span style=font-weight:bold>Member Number: </span>".$member_number."</p>";
//Wrapping content in <p> tags will help with consistent spacing
}
}
add_action( 'pmpro_membership_card_after_card', 'my_pmpro_add_member_numb_after_member_card', 10, 4 );
我的简码将使用上述逻辑,如下所示:
// function that runs when shortcode is called
function fund_dashboard_test_shortcode($pmpro_membership_card_user ){
$member_number = get_user_meta( $pmpro_membership_card_user->ID, 'member_number', true );
//SQL query to follow here, something like:
// SELECT column1 FROM table_name WHERE member_number = $member_number;
// additional code here to display data in dashboard layout
}
// register shortcode
add_shortcode('fund_dashboard', 'fund_dashboard_test_shortcode');
我想这里的简单问题是:如何检索用户会员号?
- 假设我能够提取会员编号,是否可以将用户会员编号以如下形式传递到 SQL 查询中:
SELECT column1
FROM table_name
WHERE member_number = $member_number;
我需要这样做才能查询用户特定的数据。
提前感谢你的帮助。
解决方案
推荐阅读
- python-3.x - 在 Twilio Lookup api 中提取电话号码类型的正确 python 查询是什么,为什么?
- c# - Thread.Sleep() 和 await Task.Delay 之间的真正区别是什么?
- c# - 如何通过 ssh 运行 linux shell 脚本文件?
- ionic-framework - 应用程序关闭时的离子4本地通知
- python - 在python3中将ndarray转换为dict
- scheme - 方案:R5RS:: 使其成为万位值
- makefile - 共享的 Makefile 依赖项仅运行一次
- python - 如何从方法的列表中删除变量?
- raku - 如何使用 raku IO.lines.race 结构跳过文本文件的前几行
- sql-server - 查询以将单列数据值提取到 8 个定义的列中