导航:首页 > 编程语言 > phpmysqli参数

phpmysqli参数

发布时间:2022-07-15 07:19:15

php mysqli 预处理 怎么绑定参数

<?php

/* 连接数据库类 MysqlConnect */

class MysqlConnect{
private $dbhost=null;
private $dbuser=null;
private $dbpwd=null;
private $dbname=null;
private $dbport=null;
private $ifpdo=null;
private $dburi=null;
private $handler=null;

function __construct($dbhost,$dbuser,$dbpwd,$dbname,$dbport,$ifpdo,$dburi){
$this->dbhost=$dbhost;
$this->dbuser=$dbuser;
$this->dbpwd=$dbpwd;
$this->dbname=$dbname;
$this->dbport=$dbport;
$this->ifpdo=$ifpdo;
$this->dburi=$dburi;//PDO的URI参数,可以查手册
if($this->ifpdo==1){//表示调用PDO来操作数据库
$this->handler=$this->CreatePdo();
}elseif($this->ifpdo==0){//这里可以写MYSQLI的方法
$this->handler=null;
}
}
/* ----------------这里是入口--------------------- */
//@param sql:外部调用时传递的完整SQL语句
//@param bindArray:绑定的参数数组,与sql语句有关,如果没有PDO占位符此处为空
//@param action:传递操作参数,"select"/"update"/"delete"/"insert"
public function exeSql($sql,$bindArray=array(),$action=""){
$stmt=$this->handler->prepare($sql);
$stmt->execute($bindArray);
switch($action){
case "select":
return $stmt->fetch(PDO::FETCH_ASSOC);
break;
case "selectAll":
return $stmt->fetchAll(PDO::FETCH_ASSOC);
break;
case "update":
case "delete":
return $stmt->rowCount();
break;
case "insert":
return $this->handler->lastInsertId();
break;
case "count":
return $stmt->rowCount();
default:
return "";
}
}
public function query($sql){
return $this->handler->query($sql);
}
private function CreatePdo(){
try{
$handler=new PDO($this->dburi,$this->dbuser,$this->dbpwd);
$handler->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
return $handler;
}catch(PDOException $e){
$e->getMessage();
$this->handler=null;
}
}
private function __get($args){
if($args=='handler'){
return $this->handler;
}
}
}
require(NEO_A_P.'\data\sqlconfig.php');//这里是sql的连接文件,下面创建对象的时候需要的变量就是这个文件里要有的
$handler=new MysqlConnect($dbhost,$dbuser,$dbpwd,$dbname,$dbport,$ifpdo,$dburi);
?>

② php中 mysqli_fetch_array(result,resulttype)函数的第二个参

MYSQLI_ASSOC,返回结果数组为关联数组,数组的键即为相应的字段名,你使用时可以像这样:
$row['id']、$row['name'].....
MYSQLI_NUM,返回的结果数组为索引数组,数组的键即为0,1,2,3,4这样的数字索引,你使用时只能这样:
$row[0]、row[1].....

MYSQLI_BOTH,返回的结果数组中同时存在字段索引和数字索引,你使用时,上面两种都可以用。
一般常用前两个。

③ php语言中的mysqli_query

php语言中的mysqli_query() 函数执行某个针对数据库的查询。

语法

mysqli_query(connection,query,resultmode);


参数 描述

connection 必需。规定要使用的 MySQL 连接。

query 必需,规定查询字符串。

resultmode 可选。一个常量。可以是下列值中的任意一个:

MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)

MYSQLI_STORE_RESULT(默认)


技术细节


返回值:针对成功的 SELECT、SHOW、DESCRIBE 或 EXPLAIN 查询,将返回一个 mysqli_result 对象。针对其他成功的查询,将返回 TRUE。如果失败,则返回 FALSE。




PHP 版本:5+




更新日志:在 PHP 5.3.0 中新增了异步查询的功能。

实例

<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");

//Checkconnection

if(mysqli_connect_errno($con))

{

echo"FailedtoconnecttoMySQL:".mysqli_connect_error();

}

//Performqueries
mysqli_query($con,"SELECT*
FROMPersons");
mysqli_query($con,"INSERTINTOPersons(FirstName,LastName,Age)
VALUES('Glenn','Quagmire',33)");

mysqli_close($con);
?>


④ 在PHP的mysqli扩展中,连接数据库的函数是什么

mysqli_connect,手册上的例子如下图:

⑤ php新手问题 mysqli_query参数为空

$link 是连接数据库的吧,你写在哪里了?没有连接怎么执行呀

⑥ php使用mysqli向数据库添加数据的方法

本文实例讲述了php使用mysqli向数据库添加数据的方法。分享给大家供大家参考。具体实现方法如下:
$mydb
=
new
mysqli('localhost',
'username',
'password',
'databasename');
$sql
=
"INSERT
INTO
users
(fname,
lname,
comments)
VALUES
('$_POST[fname]',
'$_POST[lname]',
'$_POST[comments]')";
if
($mydb->query($sql)
==
TRUE)
{
echo
"user
entry
saved
successfully.";
}
else
{
echo
"INSERT
attempt
failed"
;
}
$mydb->close();
希望本文所述对大家的php程序设计有所帮助。

⑦ php中mysqli处理查询结果集的几个方法

$sql="select * from user"; $result=$link->query($sql); $row=$result->fetch_all(MYSQLI_BOTH);//参数MYSQL_ASSOC、MYSQLI_NUM、MYSQLI_BOTH规定产生数组类型
$n=0; while($n<mysqli_num_rows($result)){ echo "ID:".$row[$n]["id"]."用户名:".$row[$n]["name"]."密码:".$row[$n]["password"]."<br />"; $n++;
}

⑧ 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 常用函数有哪些

php 中mysqli是个类,这个类的函数(方法)有:
mysqli::$affected_rows — Gets the number of affected rows in a previous MySQL operation
mysqli::autocommit — 打开或关闭本次数据库连接的自动命令提交事务模式
mysqli::begin_transaction — Starts a transaction
mysqli::change_user — Changes the user of the specified database connection
mysqli::character_set_name — 返回当前数据库连接的默认字符编码
mysqli::$client_info — Get MySQL client info
mysqli::$client_version — Returns the MySQL client version as a string
mysqli::close — 关闭先前打开的数据库连接
mysqli::commit — 提交一个事务
mysqli::$connect_errno — Returns the error code from last connect call
mysqli::$connect_error — Returns a string description of the last connect error
mysqli::__construct — Open a new connection to the MySQL server
mysqli::debug — Performs debugging operations
mysqli::mp_debug_info — 将调试信息输出到日志
mysqli::errno — 返回最近函数调用的错误代码
mysqli::$error_list — Returns a list of errors from the last command executed
mysqli::$error — Returns a string description of the last error
mysqli::$field_count — Returns the number of columns for the most recent query
mysqli::get_charset — Returns a character set object
mysqli::get_client_info — Get MySQL client info
mysqli_get_client_stats — Returns client per-process statistics
mysqli_get_client_version — 作为一个整数返回MySQL客户端的版本
mysqli::get_connection_stats — Returns statistics about the client connection
mysqli::$host_info — 返回一个表述使用的连接类型的字符串
mysqli::$protocol_version — 返回MySQL使用的协议版本号
mysqli::$server_info — 返回MySQL服务器的版本号
mysqli::$server_version — 作为一个整数返回MySQL服务器的版本
mysqli::get_warnings — Get result of SHOW WARNINGS
mysqli::$info — Retrieves information about the most recently executed query
mysqli::init — Initializes MySQLi and returns a resource for use with mysqli_real_connect()
mysqli::$insert_id — Returns the auto generated id used in the last query
mysqli::kill — Asks the server to kill a MySQL thread
mysqli::more_results — Check if there are any more query results from a multi query
mysqli::multi_query — Performs a query on the database
mysqli::next_result — Prepare next result from multi_query
mysqli::options — Set options
mysqli::ping — Pings a server connection, or tries to reconnect if the connection has gone down
mysqli::poll — Poll connections
mysqli::prepare — Prepare an SQL statement for execution
mysqli::query — 对数据库执行一次查询
mysqli::real_connect — 建立一个 MySQL 服务器连接
mysqli::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
mysqli::real_query — 执行一个mysql查询
mysqli::reap_async_query — Get result from async query
mysqli::refresh — Refreshes
mysqli::release_savepoint — Removes the named savepoint from the set of savepoints of the current transaction
mysqli::rollback — 回退当前事务
mysqli::rpl_query_type — Returns RPL query type
mysqli::savepoint — Set a named transaction savepoint
mysqli::select_db — 选择用于数据库查询的默认数据库
mysqli::send_query — 发送请求并返回结果
mysqli::set_charset — 设置默认字符编码
mysqli::set_local_infile_default — Unsets user defined handler for load local infile command
mysqli::set_local_infile_handler — Set callback function for LOAD DATA LOCAL INFILE command
mysqli::$sqlstate — Returns the SQLSTATE error from previous MySQL operation
mysqli::ssl_set — Used for establishing secure connections using SSL
mysqli::stat — Gets the current system status
mysqli::stmt_init — 初始化一条语句并返回一个用于mysqli_stmt_prepare(调用)的对象
mysqli::store_result — Transfers a result set from the last query
mysqli::$thread_id — Returns the thread ID for the current connection
mysqli::thread_safe — 返回是否是线程安全的
mysqli::use_result — Initiate a result set retrieval
mysqli::$warning_count — Returns the number of warnings from the last query for the given link

以上函数清单直接来自www.php.net网站。你可以进入该网站参看。

阅读全文

与phpmysqli参数相关的资料

热点内容
解压的玩具教程可爱版 浏览:364
哪个求职app比较靠谱 浏览:886
java的读法 浏览:59
nod32局域网服务器地址 浏览:1002
数码科技解压 浏览:235
新网的云服务器管理界面复杂吗 浏览:367
无人声解压强迫症视频 浏览:571
计算机编译运行 浏览:639
单片机嵌套 浏览:988
python字符串中符号 浏览:787
python正则表达式贪婪模式 浏览:649
爱国精神指的是什么app 浏览:408
寿司解压系列全集视频 浏览:913
物体三维重建算法 浏览:984
fuli直播app哪个好 浏览:918
租办公室用什么app 浏览:106
医师定期考核刷题app哪个好 浏览:338
导出dmp文件命令 浏览:288
手机百度网盘怎么解压密码文件 浏览:585
索引重新编译 浏览:606