【发布时间】:2015-02-10 13:08:06
【问题描述】:
这可能是一个非常愚蠢的错误,但是我正在尝试从 mysql 更改为 mysqli。
我的连接文件中有以下设置:
$hostname_DB = "localhost";
$database_DB = "dbname";
$username_DB = "username";
$password_DB = "*****";
$DB = mysqli_connect($hostname_DB, $username_DB, $password_DB, $database_DB );
$DB = new mysqli($hostname_DB, $username_DB, $password_DB, $database_DB );
if ($DB->connect_error) {
die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
}
?>
在我的 index.php 中:
<?php $query_AcousticDB = "SELECT * FROM products WHERE Category = 'Acoustic ' ORDER BY RAND()";
$AcousticDB = mysqli_query($DB, $query_AcousticDB) or die(mysqli_connect_error());
$row_AcousticDB = mysqli_fetch_assoc($AcousticDB);
$totalRows_AcousticDB = mysqli_num_rows($AcousticDB);?>
<!doctype html>
</body>
<div id="block2a_title"><?php echo $row_AcousticDB['Model']; ?><?php echo $row_AcousticDB['Color']; ?><?php echo $row_AcousticDB['Category']; ?></div>
<div id="block2a_image"><img src="<?php echo $filepath.$row_AcousticDB['LargeImage1']; ?>"></div>
<div id="block2a_RRP"><?php echo $row_AcousticDB['RRP']; ?></div>
<div id="block2a_Price"><?php echo $row_AcousticDB['AM_price']; ?></div>
</div>
</body
</html>
调用时显示一切正常:
localhost/index.php 但是,当您输入 localhost 时,不会显示来自数据库的数据。当使用 th myqsl 方法时,它会在输入 localhost 时触发数据库中的所有数据。
我做错了什么吗。如果这是非常明显的事情,我很抱歉,但我看不出我做错了什么。欢迎任何帮助。
【问题讨论】:
-
你正在混合面向对象和程序风格。选一个。您应该使用面向对象的样式,因为程序样式已被弃用。
-
您的 webroot (localhost) 目录中有什么?并尝试删除您的缓存。
-
并选择 OOP 编程风格。
-
您使用 PDO 有什么问题吗?
-
@jQuery.PHP.Magento.com 不只是认为从 mysql 更改为 mysqli 会更容易,但我仍然不确定哪个更好