您的位置:

php没有mysqli方法(php不支持mysql)

本文目录一览:

php不支持mysqli,有什么办法生成mysqli.so,该怎么处理

1、进入php源码包里找到pcntl扩展目录

[root@php ~]# cd ./php-5.6.7/ext/mysqli/

2、用phpize生成配置文件

[root@php pcntl]# phpize

[root@php pcntl]# ./configure

3、make make install安装

[root@php no-debug-non-zts-20131226]# ls

bcmath.so gd.so opcache.a mysqli.so

calendar.so mcrypt.so opcache.so pdo_mysql.so

curl.so memcache.so openssl.so posix.so

4、php.ini配置加载mysqli.so扩展

extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/mysqli.so

5、重启php-fpm,浏览器查看phpinfo.

php怎么用mysqli链接数据库和输出sql

一、mysql与mysqli的概念相关:

1、mysql与mysqli都是php方面的函数集,与

mysql数据库

关联不大。

2、在

php5

版本之前,一般是用php的

mysql函数

去驱动mysql数据库的,比如mysql_query()的函数,属于

面向过程

3、在php5版本以后,增加了mysqli的函数功能,某种意义上讲,它是mysql系统函数的增强版,更稳定更高效更安全,与mysql_query()对应的有mysqli_query(),属于面向对象,用对象的方式操作驱动mysql数据库

二、mysql与mysqli的区别:

1、mysql是非持继连接函数,mysql每次链接都会打开一个连接的进程。

2、mysqli是永远连接函数,mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。

三、mysql与mysqli的用法:

1:mysql(过程方式):

$conn

=

mysql_connect('

localhost

',

'user',

'password'); //连接mysql数据库

mysql_select_db

('data_base');

//选择数据库$result

=

mysql_query('select

*

from

data_base');//第二个可选参数,指定打开的连接$row

=

mysql_fetch_row(

$result

)

)

//只取一行数据echo

$row[0];

//输出第一个字段的值

PS:mysqli以过程式的方式操作,有些函数必须指定资源,比如mysqli_query(资源标识,

SQL语句

),并且资源标识的参数是放在前面的,而mysql_query(SQL语句,'资源标识')的资源标识是可选的,默认值是上一个打开的连接或资源。

2、mysqli(对象方式):

$conn

=

new

mysqli('localhost',

'user',

'password','data_base');//要使用new

操作符

,最后一个参数是直接指定数据库//假如构造时候不指定,那下一句需要$conn

-

select_db('data_base')实现$result

=

$conn

-

query(

'select

*

from

data_base'

);$row

=

$result

-

fetch_row();

//取一行数据echo

row[0];

//输出第一个字段的值

使用new

mysqli('localhost',

usenamer',

'password',

'databasename');会报错,提示如下:

Fatal

error:

Class

'mysqli'

not

found

in

...

一般是mysqli是没有开启的,因为mysqli类不是

默认开启

的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli编译进去。

四、mysql_connect()与mysqli_connect()

1.使用mysqli,可以把数据库名称当作参数传给mysqli_connect()函数,也可以传递给mysqli的

构造函数

2.如果调用mysqli_query()或mysqli的对象查询query()方法,则连接标识是必需的。

php找不到mysqli类

1.进行?php phpinfo();?

2.检查mysqli选项;如果没有的话,打开php.ini,找到";extension=php_mysqli.dll",将前面的";"去掉

3.保存

如何在php中扩展mysqli插件。

Mysqli是php5之后才有的功能,没有开启扩展的可以打开php.ini的配置文件

查找下面的语句:;extension=php_mysqli.dll将其修改为:extension=php_mysqli.dll即可。

相对于mysql有很多新的特性和优势

(1)支持本地绑定、准备(prepare)等语法

(2)执行sql语句的错误代码

(3)同时执行多个sql

(4)另外提供了面向对象的调用接口的方法。

php中不能运用mysqli函数,php.ini中已经配置了,但是用不了mysqli

1. 通过使用 phpinfo()函数可以查看 mysqli 的工作情况。

2. Warning: mysqli::mysqli() [mysqli.mysqli]: (28000/1045): Access denied for user 'root'@'localhost' (using password: YES)

从这句错误提示来看,我建议你查看下,是不是mysql数据库用户名跟密码不正确导致的。