php无法打开mysql数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php无法打开mysql数据库相关的知识,希望对你有一定的参考价值。
代码如下:
<?php // put your code here $link=mysqli_connect("localhost","root","") or die("无法创建连接
".mysql_error()); // echo "
数据库连接成功!
\n"; $db_selected=mysqli_select_db("homework",$link) or die("无法打开mysql数据库
".mysql_error($link));数据库是连接成功的,但是运行后却出现了
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in D:\xampps\htdocs\php\denglu.php on line 17
Warning: mysql_error() expects parameter 1 to be resource, object given in D:\xampps\htdocs\php\denglu.php on line 18
无法打开mysql数据库这要怎么办啊!好烦啊!!!明天要交作业了天!!!回答请详细点
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given
警告:mysqli_select_db()的第1个参数应该是mysqli,而你给的是字符串
Warning: mysql_error() expects parameter 1 to be resource, object given in
警告:mysql_error()的第1个参数应该是个资源句柄,而你给的是个对象
据我的判断,可能你没有注意到这两个函数的正确用法,以下是这两个参数的原型:
bool mysqli_select_db ( mysqli $link , string $dbname )
string mysql_error ([ resource $link_identifier = NULL ] )
据此,建议代码修改如下:
$db_selected=mysqli_select_db($link,"homework")
至于“警告:mysql_error()的第1个参数应该是个资源句柄,而你给的是个对象”,这个错误的原因,据我的判断,你还需要检查下 $link 是不是正确连接到mysql了。 参考技术A 你先试着只实现简单的连接,先不要弄错误提示。仅仅这样
$link = mysql_connect("localhost","root","") or die("数据库连接失败!");
if($link)
echo "连接成功!";
mysql_select_db("homework");追问
试过拉,显示连接成功的 就是打不开数据库
你QQ有没有阿?我加你吧
我先问一下,你的数据库中有homework这个库吗?
无法使用外部服务器上的 php 文件连接数据库(mysql)
【中文标题】无法使用外部服务器上的 php 文件连接数据库(mysql)【英文标题】:Can't connect database (mysql) with php files on external server 【发布时间】:2018-02-11 21:13:05 【问题描述】:无法将数据库(mysql)与来自外部服务器(godaddy)的以下 php 文件连接起来。警告:mysql_connect() []: 无法连接到 /files/files/db.php 和 index.php 中 (10061) 上的 mysql 服务器 `
<?php
$conn=mysql_connect("localhost","dbusername","dbpasswd");
$db=mysql_select_db('dbname',$conn);
?>
` 并在 db_config.php
`
<?php
define('DB_USER', "dbusername");
define('DB_PASSWORD', "dbpasswd");
define('DB_DATABASE', "dbname");
define('DB_SERVER', "server address"); // db server
$servername = "url.com";
$username = "dbusername";
$password = "dbpasswd";
$dbname = "dbname";
$conn= mysql_connect($servername,$username,$password)or die(mysql_error());
mysql_select_db('dbname',$conn);
?>
`
在 db_connect.php 中
`
<?php
class DB_CONNECT
// constructor
function __construct()
// connecting to database
$this->connect();
// destructor
function __destruct()
// closing db connection
$this->close();
/**
* Function to connect with database
*/
function connect()
// import database connection variables
require_once __DIR__ . '/db_config.php';
// Connecting to mysql database
$con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die(mysql_error());
// Selecing database
$db = mysql_select_db(DB_DATABASE) or die(mysql_error()) or die(mysql_error());
// returing connection cursor
return $con;
/**
* Function to close db connection
*/
function close()
// closing db connection
mysql_close();
?>
`
【问题讨论】:
第一:请不要在新代码中使用mysql_*
函数。这些功能在最近的 PHP 版本中不再可用,请改用 mysqli
或 PDO
。第二:我在这里看到 3 个单独的数据库连接,哪些不工作?错误 10061 通常表示网络连接被拒绝(即该主机上没有 mysql 服务器正在侦听)。
如果是外部的,你不能使用本地主机,但你需要IP地址,然后有可能被服务器禁止的安全性
【参考方案1】:
这不是您的代码的问题...存在此问题是因为您正在尝试将实时网站与您的 localhost 数据库连接。我不知道如何使用godaddy 解决它,因为我使用MS azure ......但我可以给你一个基本的想法 - 如果你想将一个实时网站与数据库连接,你必须在godaddy 上创建一个数据库。我知道我回答得太晚了
【讨论】:
以上是关于php无法打开mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章