数据库连接问题,无法从数据库中获取数据

时间:2013-03-21 07:30:19

标签: wordpress

<?php
/*
Template Name: test
*/

// edit these values to match your database information
$server = "localhost";
$user = "root";
$password = "";
$db = "_wp201";

$con = mysql_connect($localhost,$user,$password); 

if (!$con) {
    die("database connection error");
} else {

mysql_select_db($db, $con);

// example query
$result = mysql_query("SELECT * FROM wp_posts
WHERE post_author='1'");

// show all posts by author 1 (admin)
while($row = mysql_fetch_array($result))
  {
    if($row['post_status'] == "publish") {
    echo "".$row['post_title']." <br />";
    }
  }

}
mysql_close($con);
?>

我正在wordpress中创建自定义注册页面。所以我创建了一个测试页面来测试数据库连接。但是没有显示出来。为什么会这样?请帮忙。 (所有服务器都是正确的)

2 个答案:

答案 0 :(得分:0)

尝试mysql_fetch_assoc而不是mysql_fetch_array

哦,您确定数据库中是否有包含这些数据的行?

答案 1 :(得分:0)

停止使用mysql_*函数,自PHP 5.5.0起,它们将被弃用。


请改用WordPress $wpdb

$myrows = $wpdb->get_results( 
  "SELECT * FROM $wpdb->posts
   WHERE post_author=1" 
);

使用WP_Query的WordPress方法:

<?php
/*
Template Name: test
*/

$myquery = new WP_Query( array(
  'author' => 1,
  'post_status' => 'publish'
  ) );

while( $myquery->have_posts() ):
  $myquery->the_post();
  echo get_the_title() . '<br />';
endwhile;