<?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中创建自定义注册页面。所以我创建了一个测试页面来测试数据库连接。但是没有显示出来。为什么会这样?请帮忙。 (所有服务器都是正确的)
答案 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;