php7数据库实战 php 实战

linux下PHP7可以连接mysql,却不能读取/插入数据?

不能读取是mysql的权限没有打开,操作如下:

成都创新互联公司成立与2013年,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元平邑做网站,已为上家服务,为平邑各地企业和个人服务,联系电话:18982081108

1.MySQL命令行新建用户

//登录MYSQL

@mysql -u root -p

@密码

//创建用户

mysql insert into mysql.user(Host,User,Password) values('localhost','phplamp',password('1234'));

//刷新系统权限表

mysqlflush privileges;

这样就创建了一个名为:phplamp 密码为:1234 的用户。

//退出后登录一下

mysqlexit;

@mysql -u phplamp -p

@输入密码

mysql登录成功

2.MySQL命令行为用户授权

//登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.

@mysql -u root -p

@密码

//首先为用户创建一个数据库(phplampDB)

mysqlcreate database phplampDB;

//授权phplamp用户拥有phplamp数据库的所有权限

@grant all privileges on phplampDB.* to phplamp@localhost identified by '1234'; //这里需要注意,如果发现找不到用户,需要执行命令 flush privilieges;

//刷新系统权限表

mysqlflush privileges;

mysql其它操作

//如果想指定部分权限给一用户,可以这样来写:

mysqlgrant select,update on phplampDB.* to phplamp@localhost identified by '1234';

//刷新系统权限表。

mysqlflush privileges;

mysql grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。

PHP实现的pdo连接数据库并插入数据功能简单示例

本文实例讲述了PHP实现的pdo连接数据库并插入数据功能。分享给大家供大家参考,具体如下:

创建配置文件

pdo_config.php

?php

$db_Type

=

"mysql";//数据库类型

$host

=

"localhost";//主机名

$dbName

=

"test";//数据库名

$userName

=

"root";//用户名

$password

=

"root";//密码

$dsn

=

"{$db_Type}:host={$host};dbname={$dbName}";

?

pdo插入数据库

pdo_insert.php

?php

header('Content-type:text/html;

charset=utf-8');

require

'pdo_config.php';

try{

$pdo

=

new

PDO

($dsn,$userName,$password);//创建一个连接对象

$pdo-exec('set

names

utf8');//设置编码

$sql

=

"INSERT

student

(name,email)

VALUES

('李四','123@qq.com')";

$pdo-exec($sql);

}catch

(PDOException

$e){

die('操作失败'.$e-getMessage());

}

//关闭连接

$pdo

=

null;

?

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:关于php连接mssql:pdo

odbc

sql

serverPHP5中使用PDO连接数据库的方法PHP中PDO连接数据库中各种DNS设置方法小结ThinkPHP框架基于PDO方式连接数据库操作示例PHP使用ODBC连接数据库的方法tp5(thinkPHP5)框架连接数据库的方法示例PHP7使用ODBC连接SQL

Server2008

R2数据库示例【基于thinkPHP5.1框架】tp5(thinkPHP5)操作mongoDB数据库的方法thinkPHP5实现数据库添加内容的方法tp5(thinkPHP5)框架数据库Db增删改查常见操作总结PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】

PHP7连接mysql数据库方法

1、用 mysql_connect 的方法,PHP7会报致命错误

$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang');

Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue-run() #1 {main} thrown in  /Users/xueyanxiang/work/test/xue.php  on line  31

原因是:

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,MySQL就不推荐使用了,属于废弃函数

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。参见 MySQL:选择

API 指南以及相关 FAQ 以获取更多信息。用以替代本函数的有:

mysqli_connect()

PDO::__construct()

使用时,不要在使用mysql_connect了,可以换用mysqli_connect(),用法基本类似吧,据说是面向对象的库。

php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll这个拓展了。

2、可以使用mysqli,对象化,方法名与被废弃的类似

$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang');

3、PDO工具,推荐使用

$dbh= "mysql:host=localhost;dbname=test";

$db= new PDO($dbh,'xueyanxiang','xueyanxiang');

$objQuery= $db-query("select * from user;");

$res= $objQuery-fetchAll(PDO::FETCH_ASSOC);

不填写参数的话,默认是关联和索引都有,如下图

php5和php7连接数据库的区别

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,mysql系列函数就不推荐使用了,属于废弃函数

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。

$host = '127.0.0.1';//主机名或IP地址

$user = 'root';        //数据库用户

$database = 'cake';    //数据库名

$password ='root';    //数据库密码

$mysqli = new mysqli($host,$user,$password,$database);

$query = 'SET NAMES UTF8';

$mysqli-query($query);

if($mysqli-errno){

print_f("连接数据库错误br/ %s",$mysqli-error);

exit;

}

php7链接数据库问题

第一个问题: $db是对象,对象调用成员方法就是-

第二个问题:mysql_query是php5之前的函数,他不太安全,其实还有mysqli_query扩展增强版,但这些都没有对象好用,为什么呢?因为每次使用都不是一个对象,但函数不一样,使用的是同一个函数,如果你学过java的线程大概就能知道怎么回事了。对象new 你不用之后会回收,但函数就未必了,这也是为安全考虑,目前对象比较安全。

第三个问题:这个问题很简单,你用的是对象连接,却使用函数,这本就不是一个东西,你没有给全局变量赋值(mysqli_connect($servername, $username, $password);),所以不能使用这个函数,这也就是安全问题(第二个问题,你看它一次只能使用一个连接,不像对象,可以new很多个,看出优劣了吧!这是进化的结果,因为php想干大型项目用对象,也比较最好管理),至于应该使用什么?$db -num_rows其实很简单的,就是把以前的函数封装成为对象,名字几乎不变


本文题目:php7数据库实战 php 实战
网站链接:http://hbruida.cn/article/dodgpjg.html