我的wordpress +插件网站出了问题,wp debug告诉我这个:
不推荐使用:mysql_query():不推荐使用mysql扩展,将来会删除它:使用mysqli或PDO代替 在/home/effdbsmi/public_html/new/erotika/wp-content/plugins/sofa-front-post/sofa-front-post.php上 线236
警告:mysql_query():拒绝访问用户“root”@“localhost” (使用密码:否) 在/home/effdbsmi/public_html/new/erotika/wp-content/plugins/sofa-front-post/sofa-front-post.php上 线236
警告:mysql_query():无法建立指向服务器的链接 在/home/effdbsmi/public_html/new/erotika/wp-content/plugins/sofa-front-post/sofa-front-post.php上 线236
警告:mysql_num_rows()要求参数1为resource,boolean 特定 在/home/effdbsmi/public_html/new/erotika/wp-content/plugins/sofa-front-post/sofa-front-post.php上 线236
在沙发前面的post-post.php的第236行有代码(这里是in 第4行:
function sfp_create_database_table() {
global $wpdb;
$table = $wpdb->prefix . 'sfp_payments';
if( mysql_num_rows( mysql_query( "SHOW TABLES LIKE '" . $table . "'" ) ) == 1) return;
$run_sql = "CREATE TABLE " . $table . " (
id INT NOT NULL AUTO_INCREMENT,
post_id VARCHAR(10) NOT NULL DEFAULT '',
user_id VARCHAR(10) NOT NULL DEFAULT '',
pub_type VARCHAR(20) NOT NULL DEFAULT 'free',
paypal_bulk LONGTEXT NOT NULL DEFAULT '',
UNIQUE KEY id (id)
);";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $run_sql );
}
我该怎么办?谢谢你们,伙计们......
答案 0 :(得分:0)
警告信息非常明确告诉我们" mysql扩展已弃用,将来会被删除:使用mysqli或PDO代替......"
所以我们需要在Wordpress中使用mysqli_query()而不是mysql_query(),在你的情况下,代码应该改变如下:
$connection = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if( mysqli_num_rows( mysqli_query( $connection, "SHOW TABLES LIKE '" . $table . "'" ) ) == 1) return;
....
答案 1 :(得分:-1)
您可以像这样对表的存在进行测试:
if( $wpdb->get_var("SHOW TABLES LIKE '".$table."'") == $table) return;
答案 2 :(得分:-6)
您可以忽略除此之外的所有消息:
“用户'root'@'localhost'拒绝访问(使用密码:否)”
它说你没有为MySQL提供密码。提供密码,你就可以了。
“不推荐使用mysql扩展程序并将其删除” - 除非您想重新设计代码,否则请忽略它(这是一个好主意但不是必需的)。
“无法建立指向服务器的链接” - 这只是上面密码错误的结果
“mysql_num_rows()期望参数1是资源” - 这只是密码错误的结果。