当前位置: 首页 > 知识库问答 >
问题:

MySQL连接功能不工作?

燕昊东
2023-03-14

我正在尝试连接到我的数据库,但它显示了mysql_connect函数中的错误。

错误是:致命错误:未捕获错误:调用C:\xampp\htdocs\connect中未定义的函数mysql\u connect()。php:12堆栈跟踪:#0 C:\xampp\htdocs\Test。php(3):在C:\xampp\htdocs\Connect中抛出require()#1{main}。php在线12

连接文件:

<?php  

$db_host = "localhost"; 
// Place the username for the MySQL database here 
$db_username = "root";  
// Place the password for the MySQL database here 
$db_pass = "";  
// Place the name for the MySQL database here 
$db_name = "oscar"; 

// Run the connection here  
$con = mysql_connect("db_host","$db_username","$db_pass");
if (!$con)
{
  die('Could not connect: ' . mysql_error());
}
mysql_select_db("$db_name", $con);
try 
{
 $conn = new PDO("mysql:host=$db_host;dbname=$db_name", $db_username, $db_pass);
// set the PDO error mode to exception
 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 echo "Connected successfully"; 
}
catch(PDOException $e)
{
 echo "Connection failed: " . $e->getMessage();
}

?>

文本文件:

<?php
// Connect to the MySQL database  
require "Connect.php"; 
echo "Success";
?>

共有3个答案

南宫喜
2023-03-14

php 5.5中不推荐使用mysql函数。0.我已更改了您代码中的一些更改。$符号已添加到mysqli connect语句中。

$con = mysqli_connect("$db_host","$db_username","$db_pass");
if (!$con)
{
  die('Could not connect: ' . mysqli_error());
}
mysqli_select_db("$db_name", $con);
长孙高远
2023-03-14

函数mysql\u connect是一个不推荐使用的函数。相反,您应该使用mysqli\u connect在这里阅读更多关于此的信息

以下代码应该可以工作:

<?php
/**
 * Created by PhpStorm.
 * User: ...
 * Date: 5-12-2017
 * Time: 09:47
 * Database connection.
 */
?>
<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'admin');
define('DB_PASSWORD', 'admin');
define('DB_DATABASE', 'your_database');
$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);

// Check connection
if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
李兴安
2023-03-14

为什么你同时使用mysql_connect甚至PDO?mysql已被弃用,因此容易受到sql注入的影响。

只有此代码才能连接到数据库

<?php
$db_host = "localhost";
// Place the username for the MySQL database here
$db_username = "root";
// Place the password for the MySQL database here
$db_pass = "";
// Place the name for the MySQL database here
$db_name = "oscar";


try {
    $conn = new PDO("mysql:host=$db_host;dbname=$db_name", $db_username, $db_pass);
// set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
 类似资料:
  • java.sql.没有找到适合jbdc:mysql://localhost:3306/mydb?autoReconnect=true的驱动程序 有没有解决办法?

  • 操作系统:Ubuntu 17.10 Python:2.7 Sublime文本3: 我正在尝试导入mysql.connector, 没有名为连接器的模块 不过,当我尝试导入mysql时。在pythonshell中,它可以工作。 早些时候它工作得很好,我刚刚升级了Ubuntu,不知何故mysql连接器不工作。 我尝试重新安装mysql连接器使用pip和git两者。 还是不走运。 请帮忙!

  • 我试图以编程方式建立一些连接。问题是,当绘制连接时,会创建新的endpoint,而现有endpoint不再可单击。我确实有拖动行为的endpoint。我无法让endpoint(由连接创建)具有与原始endpoint相同的属性。 我做了一个工作jsFiddle:http://jsfiddle.net/SCSaf/4/ 在下面的代码中,初始化容器并绘制连接 在公共变量中,我尝试将源endpoint(e

  • 本文向大家介绍MySql允许远程连接如何实现该功能,包括了MySql允许远程连接如何实现该功能的使用技巧和注意事项,需要的朋友参考一下  MySql允许远程连接如何实现该功能 要达到这个目的需要实现两点 开通用户权限 解除本地绑定 开通用户权限 首先登陆服务器端的MySQL 效果图 执行了代码以后会看到所有的用户以及对应的host 其中host的意思就是指允许访问的Ip地址,%的意思就是任何IP,

  • 我试图在MySQL上设置一个非常简单的会话连接变量,但它没有任何作用。下面运行的查询不会导致任何错误,但不会更改MySQL连接的字符集。如果我在文件中将“collation\u server”和“character\u set\u server”的默认值配置为,而不是,那么字符集将变为,但我想知道为什么我不能从PHP脚本中更改连接字符集。 此查询显示语句没有影响。

  • MySQL Workbench和MySQL Server8安装在Windows中。在WSL2提示符中,我安装了MySQL8客户机。我想从WSL2连接到MySQL服务器。 当我尝试时,我得到 我相信这是因为我没有在WSL上安装MySQL服务器,只是在Windows中。几天前我还在工作,但后来我进行了Windows自动更新,我再也无法连接了。