<?php
$servername = "127.0.0.1";
$username = "root";
$password = "";
$dbname = "myDB";
//创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
mysql_select_db($dbname, $conn) or die ( 'Can\'t use test: ' .mysql_error ($conn));
$result = $conn->query('slect * from test.Person');
echo $result
?>
数据库能连接,但是当我使用 mysql_select_db($dbname, $conn) or die ( 'Can't use test: ' .mysql_error ($conn));时候就显示页面不工作了,改成mysqli_select_db也没有,除此之外mysql_connect也不能用,必须用mysqli来创建连接对象,不知道什么原因
不得不吐槽网上的教程,都已经是deprecate的api,直接看dash上的api发现mysqli_select_db( $conn, $dbname)这样就没有报错了
4 回答
慕村225694
TA贡献1880条经验 获得超4个赞
好吧,背后的原理是你调用mysql*
系列函数时,触发了PHP的Call to undefined function
(函数不存在)的Fatal error(致命错误)
,PHP异常终止执行,Apache
收到PHP的异常信号时,认为PHP处理请求时发生异常,所以返回给客户端page isn't working
(网页无法工作),而恰好此时你的php.ini
配置了display_errors
为off,Apache就认为你不想错误trace信息让客户端看到,所以给客户端返回网页无法工作。
你也可以去Apache的错误日志文件中看到相关PHP异常和错误日志。
当然你也可以去去php.ini
中将display_errors
打开(设置成on
),就鞥在页面上看到PHP的具体错误trace了。
偶然的你
TA贡献1841条经验 获得超3个赞
mysql扩展自 PHP 5.5.0 起已废弃,并在自 PHP 7.0.0 开始被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。
你用的PHP版本是?
侃侃无极
TA贡献2051条经验 获得超10个赞
可能是你的 php
版本问题, mysql
在 php 7.0.0
被废除。
This extension is deprecated as of PHP 5.5.0, and has been removed as of PHP 7.0.0. Instead, either the mysqli or PDO_MySQL extension should be used. See also the MySQL API Overview for further help while choosing a MySQL API.
- 4 回答
- 0 关注
- 482 浏览
添加回答
举报
0/150
提交
取消