PHP中mysql如何远程连接数据库

PHP中mysql如何远程连接数据库,第1张

可以使用pdo进行连接

$dbms='mysql'//数据库类型

$host='localhost'//数据库主机名

$dbName='test' //使用的数据库

$user='root' //数据库连接用户名

$pass='' //对应的密码

$dsn="$dbms:host=$hostdbname=$dbName"

try {

$dbh = new PDO($dsn, $user, $pass)//初始化一个PDO对象

echo "连接成功<br/>"

/*你还可以进行一次搜索 *** 作

foreach ($dbh->query('SELECT * from FOO') as $row) {

print_r($row)//你可以用 echo($GLOBAL)来看到这些值

}

*/

$dbh = null

} catch (PDOException $e) {

die ("Error!: " . $e->getMessage() . "<br/>")

}

//默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数:array(PDO::ATTR_PERSISTENT =>true) 变成这样:

$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT =>true))

链接数据库的代码如下:

 $Link = new PDO('mysql:host=localhostdbname=stu', 'username','password')

更具体的 *** 作,请查看:http://www.php.net/manual/en/book.pdo.php

怎么获得mysql以pdo方式的数据库连接变量

// 数据库连接ID 支持多个连接

protected $linkID = array()

// 当前连接ID

protected $_linkID= null

复制代码

我在使用datatable editor插件的时候,需要为插件配置mysql数据库信息,但是thinkphp已经帮我连接过一次,插件连接的话,插件的

$db = new Database( $sql_details )

复制代码

这里获得$db为空值,

解决办法就是采用pdo连接方式,直接在配置信息的时候把thinkphp的数据库连接变量配置进去

$sql_details = array(

"type" =>"Mysql", // Database type: "Mysql", "Postgres", "Sqlite" or "Sqlserver"

"user" =>"root", // Database user name

"pass" =>"", // Database password

"host" =>"localhost", // Database host

"port" =>"", // Database connection port (can be left empty for default)

"db" =>"XXXX", // Database name

"dsn" =>"",// PHP DSN extra information. Set as `charset=utf8` if you are using MySQL

'pdo' =>$dbh

)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6920376.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-30
下一篇2023-03-30

发表评论

登录后才能评论

评论列表(0条)

    保存