在 WP Shortcode 中显示来自 mySQL 的数据字段
Displaying Datafield from mySQL in WP Shortcode
我正在尝试使用来自新 table 的短代码在 WP 前端显示字段数据。
See Table
在查阅了许多资源和研究之后,我似乎没有找到一种简单的方法来显示包含在 SQL 查询中选择的特定字段中的文本数据(不是 table)通过 SELECT FROM WHERE.
到目前为止,我调用了 wpdb,选择了字段,创建了一个循环并回显了。但是没有显示结果。
我也尝试过使用 print_r 和内爆,但都失败了。
<?php
function Initial_Brief(){ global $wpdb;
$results = $wpdb->prepare( "SELECT 'Initial_Brief'* FROM `Portal_100` WHERE Project_Title = 'Project 1'");
foreach ($results as $result)
echo $result['results'];
}
add_shortcode('Initial_Brief','Initial_Brief')
?>
非常感谢,
要分享这个我觉得非常强大的逻辑,就是使用简码来显示网站上的所有文本,通过创建一个 HTML 表单来更新特定领域。我将创建一个编辑图标,鼠标悬停在编辑角色上时会显示,单击它会触发一个带有 html 表单的弹出窗口,该表单调用一个函数来更新数据库中的特定字段。
您缺少这样调用 get_results 方法:
<?php
global $wpdb;
$id = 23;
$sql = $wpdb->prepare( "SELECT * FROM tablename WHERE id= %d",$id);
$results = $wpdb->get_results( $sql , ARRAY_A );
?>
使用prepare方法是为安全执行准备SQL查询的好习惯(例如抢占SQL注入),但还没有执行,它 returns 一个经过清理的查询字符串,如果有查询要准备的话。
它也是 query 方法的好伴侣。
经过一些迭代,我终于让它工作了!
我明白了 mySQL 不接受带间距的输入?
如何为多个单词或段落插入 WHERE 条件?
使用以下脚本对我有用,但我必须将 WHERE 值更改为整数。
<?php
add_shortcode('Initial_Brief', function(){
global $wpdb;
$sql = $wpdb->prepare("Select Value from `P100` WHERE `P100`.`id` = 1 ");
$results = $wpdb->get_results( $sql , ARRAY_A );
foreach ($results as $result) {
$display = implode(", ", $result);
echo $display;
});?>
我正在尝试使用来自新 table 的短代码在 WP 前端显示字段数据。
See Table
在查阅了许多资源和研究之后,我似乎没有找到一种简单的方法来显示包含在 SQL 查询中选择的特定字段中的文本数据(不是 table)通过 SELECT FROM WHERE.
到目前为止,我调用了 wpdb,选择了字段,创建了一个循环并回显了。但是没有显示结果。 我也尝试过使用 print_r 和内爆,但都失败了。
<?php
function Initial_Brief(){ global $wpdb;
$results = $wpdb->prepare( "SELECT 'Initial_Brief'* FROM `Portal_100` WHERE Project_Title = 'Project 1'");
foreach ($results as $result)
echo $result['results'];
}
add_shortcode('Initial_Brief','Initial_Brief')
?>
非常感谢,
要分享这个我觉得非常强大的逻辑,就是使用简码来显示网站上的所有文本,通过创建一个 HTML 表单来更新特定领域。我将创建一个编辑图标,鼠标悬停在编辑角色上时会显示,单击它会触发一个带有 html 表单的弹出窗口,该表单调用一个函数来更新数据库中的特定字段。
您缺少这样调用 get_results 方法:
<?php
global $wpdb;
$id = 23;
$sql = $wpdb->prepare( "SELECT * FROM tablename WHERE id= %d",$id);
$results = $wpdb->get_results( $sql , ARRAY_A );
?>
使用prepare方法是为安全执行准备SQL查询的好习惯(例如抢占SQL注入),但还没有执行,它 returns 一个经过清理的查询字符串,如果有查询要准备的话。 它也是 query 方法的好伴侣。
经过一些迭代,我终于让它工作了!
我明白了 mySQL 不接受带间距的输入? 如何为多个单词或段落插入 WHERE 条件?
使用以下脚本对我有用,但我必须将 WHERE 值更改为整数。
<?php
add_shortcode('Initial_Brief', function(){
global $wpdb;
$sql = $wpdb->prepare("Select Value from `P100` WHERE `P100`.`id` = 1 ");
$results = $wpdb->get_results( $sql , ARRAY_A );
foreach ($results as $result) {
$display = implode(", ", $result);
echo $display;
});?>