Wordpress:从特定用户的数据库$wpdb中获取数据



你好,我今天在做一个项目。我想在前端打印特定用户每次登录时的数据。当他们登录时,将获得他们的用户id,并仅从该特定用户获取数据。

我有这个数据库。我想要vendor_id 3,如果没有值将返回;没有该用户的佣金数据";

现在这是我的wordpress wpdb代码

<table border="1">
<tr>
<th>Vendor ID</th>
<th>Total Due</th>
<th>Time</th>
</tr>
<?php
global $wpdb;
$result = $wpdb->get_results ( "SELECT * FROM wp_pv_commission" );
$vendor = get_current_user_id();
foreach ( $result as $userdata) {
?>
<tr>
<td><?php echo $userdata->vendor_id;?></td>
<td><?php echo $userdata->total_due;?></td>
<td><?php echo $userdata->time;?></td>
</tr>
<?php
}
?>
</table>

它返回这个的数据。但我想要的只是像现在这样的每个用户,我以供应商id 3登录。它展示了一切。什么是正确的wordpress php条件代码我需要使用

谢谢你的回答。

您的代码是正确的,但从数据库中选择数据的条件是错误的

如果不应用where子句,MYSQL将始终返回所有记录。因此,您需要在查询中提供where子句

<table border="1">
<tr>
<th>Vendor ID</th>
<th>Total Due</th>
<th>Time</th>
</tr>
<?php
global $wpdb;
$vendor = get_current_user_id();
$result = $wpdb->get_results ( "SELECT * FROM wp_pv_commission where vendor_id=".$vendor );
foreach ( $result as $userdata) {
?>
<tr>
<td><?php echo $userdata->vendor_id;?></td>
<td><?php echo $userdata->total_due;?></td>
<td><?php echo $userdata->time;?></td>
</tr>
<?php
}
?>
</table>

如何在MySQL 中使用where子句

最新更新