连接到WordPress服务器中的mysql数据库

时间:2017-01-23 08:59:53

标签: php mysql wordpress

我们正在尝试为WordPress网站创建登录屏幕。我认为连接数据库的方式很好。代码似乎也很好,我们有一个布局,有人输入用户名和密码。那些存储在变量中,然后它应该连接到数据库。

在以下代码行之前?> TEST打印出TEST。但是,当您尝试登录时,弹出错误500,并且没有打印TEST。遗憾的是,错误代码500非常宽。

我们正在WordPress的代码之外的另一个文件夹中工作。 WordPress在服务器上有3个文件夹,名为wp-admin,wp-content和wp-includes。我们刚刚在它旁边创建了一个文件夹,并试图在那里构建它。我想知道它为什么不起作用的选项,这里的一些互联网研究把我带到了wp-config。但那对我们来说还没有成功。

$connection = mysql_connect("IP", "username", "password");

?>
<HTML><BODY>TEST</BODY></HTML>
<?php

// To protect MySQL injection for Security purpose
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);

// Selecting Database
$db = mysql_select_db("db_name", $connection) 
or die("no connection to database");    

如果需要,我也可以添加登录屏幕的代码,只需要注释即可。

****我使用了PHP的旧功能,这就是它没有连接的原因。对于WordPress,请不要使用mysql_connect,而是使用mysqli_connect。

1 个答案:

答案 0 :(得分:2)

加载仅加载WordPress核心功能的最佳方法是使用$path = $_SERVER['DOCUMENT_ROOT']; include_once $path . '/wp-load.php'; include_once $path . '/wp-config.php'; $db = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // Test the connection: if (mysqli_connect_errno()){ // Connection Error exit("Couldn't connect to the database: ".mysqli_connect_error()); }

last_week = today - timedelta(days=7)
logger.info('Looking for snapshots of : {0}'.format(str(last_week)))
tag_value_last = 'snap-hebdo-'+str(last_week)
all_snaps = ec2client.describe_snapshots( Filters=[ {'Name': 'tag-value','Values': [tag_value_last]}],)
if all_snaps == None:
    logger.error('No snapshot found with the tag : {0}'.format(tag_value_last))
    sys.exit(1)
else:
    snapshotId_last =''
    for i in all_snaps['Snapshots']:
        snapshotId_last = i['SnapshotId']
    logger.info('Old snapshot of {0} found with ID: {1}'.format(str(last_week),snapshotId_last))
    logger.info('Deleting the snapshot with ID : {0} ...'.format(snapshotId_last))
    ec2client.delete_snapshot(SnapshotId=snapshotId_last)
    logger.info('Done.')