PHP和sqlforeach循环

PHP和sqlforeach循环,php,sql,wordpress,Php,Sql,Wordpress,我正在尝试为wordpress设置一个自定义模板,从数据库中检索人名和其他列 //connect.php <?php global $wpdb; $blog_id = get_current_blog_id(); $results = $wpdb->get_results( 'SELECT * FROM database WHERE blog_id = {$blog_id}', OBJECT ); ?> //index.php include_once "connect.

我正在尝试为wordpress设置一个自定义模板,从数据库中检索人名和其他列

//connect.php

<?php
global $wpdb;
$blog_id = get_current_blog_id(); 
$results = $wpdb->get_results( 'SELECT * FROM database WHERE blog_id = {$blog_id}', OBJECT );
?>

//index.php
include_once "connect.php"; 
$sql = "SELECT * FROM databasetablename";
//run the query
$results = $wpdb->get_results($sql) or die(mysql_error());


foreach ($results as $result){
?>
//first person
<h2><?php echo $result -> name; ?></h2>
//second person
<h2><?php echo $result -> name; ?></h2>
//third person
<h2><?php echo $result -> name; ?></h2>

<?php
}
?>
//connect.php
//index.php
包括一次“connect.php”;
$sql=“从databasetablename中选择*”;
//运行查询
$results=$wpdb->get_results($sql)或die(mysql_error());
foreach($results作为$result){
?>
//第一人称
//第二人称
//第三人

但是只是从数据库中显示相同的名字,而不是移动到下一个人的名字并显示他们。我认为这是我的sql语句的一个问题,但不太确定,谢谢您不需要在循环中输出三次,
foreach
应该处理结果的每个实例。
接下来,您应该检查查询实际返回的内容。
另外,您不需要将
对象
作为第二个参数传递给
$wpdb->get_results
,这是默认行为

例如:

index.php

global $wpdb;
$sql = "SELECT * FROM wp_users";
$results = $wpdb->get_results($sql) or die(mysql_error());

foreach ($results as $result){
    print '<h2>' . $result->display_name . '</h2>';
}
global$wpdb;
$sql=“从wp\U用户中选择*”;
$results=$wpdb->get_results($sql)或die(mysql_error());
foreach($results作为$result){
打印“”。$result->display_name';
}

您能否对数组$results进行变量分析并更新您的问题?您是否有该表内容的示例?(列+一些示例行)感谢这一点,我不习惯在wordpress中使用全局连接。connect.php文件中的sql查询与我尝试用于索引页面的sql查询存在冲突。该连接用于站点上的另一个页面,因此我应该意识到我试图通过2$results传递sql