引用 PHP中的MySQL函数

引用

潘峰PHP中的MySQL函数

PHP中的MySQL函数

星期五, 6月 29th, 2007

mysql_affected_rows — 是返回上一次操作所影响的条目数
mysql_change_user — 修改MySQL的用户名
mysql_client_encoding — 返回MySQL默认字符集的名称
mysql_close — 关闭一个MySQL连接资源
mysql_connect — 建立一个MySQL数据库连接
mysql_create_db — 建立一个数据库
mysql_data_seek — 按要求移动数据资源内部的指针
mysql_db_name — 获取mysql_list_dbs()返回的列表资源中的某个数据表的名称
mysql_db_query — 发送一条 MySQL 查询(不赞成使用的函数)
mysql_drop_db — 删除一个数据库。
mysql_errno — 获取MySQL错误信息的数字编号
mysql_error — 获取MySQL捕获的错误信息
mysql_escape_string — 对一个要写入数据库的内容进行转义(不赞成使用的函数)
mysql_fetch_array — 获取一行数据,并以数组的形式返回
mysql_fetch_assoc — 获取一行数据,并且以关联数组的形式返回
mysql_fetch_field — 获取数据资源的字段信息
mysql_fetch_lengths — 获取返回各字段内容的长度
mysql_fetch_object — 获取一行数据,并以对象的形式返回
mysql_fetch_row — 获取一行的数据, 并以数字数组的形式返回
mysql_field_flags — 获取指定字段的信息
mysql_field_len — 获取指定字段的长度
mysql_field_name — 获取指定字段的长度
mysql_field_seek — 移动字段信息的内部指针
mysql_field_table — 获取指定字段所在的数据表名
mysql_field_type — 获取指定字段的类型
mysql_free_result — 释放在mysql_query()函数中得到的数据资源
mysql_get_client_info — 获取客户端的信息
mysql_get_host_info — 获取MySQL主机信息
mysql_get_proto_info — 获取MySQL的协议信息
mysql_get_server_info — 获取MySQL的服务器信息
mysql_info — 取得最近一条查询的信息
mysql_insert_id — 获取上一次INSERT操作自动产生的id值
mysql_list_dbs — 获取MySQL中的所有数据库名称
mysql_list_fields — 显示一个数据库中指定数据表中的所有字段
mysql_list_processes — 获取所有的MySQL进程数据
mysql_list_tables — 显示一个数据库的所有数据表
mysql_num_fields — 获取一个数据资源中的字段数量
mysql_num_rows — 获取数据资源中的行数
mysql_pconnect — 建立一个持久的MySQL数据库连接
mysql_ping — Ping一个服务器连接,如果没有连接则重新连接
mysql_query — 执行一条MySQL命令
mysql_real_escape_string — 对一个要写入数据库的内容进行转义
mysql_result — 获取指定行数,指定偏移量的单个数据
mysql_select_db — 指定一个数据库
mysql_stat — 获取MySQL连接的相关信息
mysql_tablename — 通过mysql_list_tables()函数返回的列表资源进行操作显示数据数据表
mysql_thread_id — 返回当前的MySQL线程的ID
mysql_unbuffered_query — 和mysql_query()函数类似,但是不会缓存数据资源

依照这样的数据库结构来完成下面的所有测试代码:

CREATE TABLE `users` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`age` int(10) unsigned NOT NULL,
`sex` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;


– Dumping data for table `users`

INSERT INTO `users` (`id`, `name`, `age`, `sex`) VALUES
(1, 'samon', 25, 'male'),
(2, 'skarite', 25, 'female'),
(3, 'tom', 23, 'male'),
(4, 'michael', 26, 'male'),
(5, 'allen', 24, 'female'),
(6, 'yoyo', 27, 'male');

mysql_connect()函数的作用是建立一个数据库连接。mysql_connect()函数有五个参数,第一个参数表示主机地址和端口(或者一个本地的socket),第二个参数表示数据库用户名,第三个参数表示数据库访问密码,第四个参数如果设置为true,则强制每次访问数据库的时候建立一个新的连接,第五个参数有4个常量可以选择:MYSQL_CLIENT_SSL表示传输时使用安全套接字,MYSQL_CLIENT_COMPRESS表示使用压缩协议,MYSQL_CLIENT_IGNORE_SPACE表示允许在函数后面有空格,MYSQL_CLIENT_INTERACTIVE作用不祥。mysql_pconnect()函数有四个参数,少了mysql_connect()函数的第四个参数。注意mysql_pconnect()函数只能在模块化安装PHP的时候使用。

<?php
mysql_connect ( ' localhost ' , ' root ' , '' ) ;
?>

mysql_select_db()函数的作用是指定一个数据库(在连接MySQL之后), mysql_select_db()函数有两个参数,第一个表示数据库的名称,第二个参数表示数据库的连接资源(resource),资源是由mysql_connect()函数连接数据库之后返回保存句柄的数据类型。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
?>

mysql_close()函数的作用是关闭一个MySQL连接资源,mysql_close()函数有一个参数,表示数据库的连接资源(resource)。使用mysql_pconnect函数连接的资源无法使用mysql_close()函数关闭。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_close ( $mysql_resource ) ;
?>

mysql_query()函数的作用是执行一条MySQL命令,对于SELECT,SHOW,DESCRIBE,EXPLAIN等操作会返回资源类型,对于UPDATE,DELETE,DROP等则会返回true或者false。 mysql_query()函数有两个参数,第一个参数表示MySQL语句,第二个参数表示数据库的连接资源(resource)。mysql_unbuffered_query()函数的作用和mysql_query()函数类似,但是不会缓存数据资源,因而没法使用mysql_num_rows()函数和mysql_data_seek()函数,而且必须在下一次使用mysql_query()函数前处理完所有的数据。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
echo mysql_field_table ( $data_resource , ' id ' ) ;
//显示 users
?>

mysql_db_query()函数是PHP不建议使用的函数,这里跳过,请使用mysql_select_db()函数和mysql_query()函数代替。

mysql_fetch_array()函数的作用是获取一行数据,并以数组的形式返回,然后将指针指向下一条数据,mysql_fetch_array()函数有两个参数,第一个参数表示数据资源,第二个参数有三个常量可以选择,MYSQL_ASSOC表示返回关联数组,MYSQL_NUM表示返回数字下标的数组,MYSQL_BOTH表示两者都返回,默认是MYSQL_BOTH。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
while ( $row = mysql_fetch_array ( $data_resource , MYSQL_NUM ))
{
    
echo $row [ 1 ] ;
}
?>

mysql_fetch_assoc()函数的作用是获取一行数据,并且以关联数组的形式返回,然后将指针指向下一条数据,mysql_fetch_assoc()函数有一个参数,表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
while ( $row = mysql_fetch_assoc ( $data_resource ))
{
    
echo $row [ ' name ' ] ;
}
?>

mysql_fetch_row()函数的作用是获取一行的数据,并以数字数组的形式返回,然后将指针指向下一条数据, mysql_fetch_row()函数有一个参数, 表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
$row = mysql_fetch_row ( $data_resource ) ;
print_r ( $row ) ;
/* 显示
Array
(
    [0] => 1
    [1] => samon
    [2] => 25
    [3] => male
)
*/

?>

mysql_fetch_object()函数的作用是获取一行数据,并以对象的形式返回,然后将指针指向下一条数据。mysql_fetch_object()函数有三个参数,第一个参数表示数据资源,第二个可选参数表示处理生成对象的类名,默认使用stdClass,第三个参数表示处理时需要传递的参数。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
$row = mysql_fetch_object ( $data_resource ) ;
print_r ( $row ) ;
 
/* 显示
stdClass Object
(
    [id] => 1
    [name] => samon
    [age] => 25
    [sex] => male
)
*/

?>

mysql_fetch_lengths()函数的作用是获取返回各字段内容的长度。mysql_fetch_lengths()函数只有在使用了mysql_fetch_row(),mysql_fetch_assoc(),mysql_fetch_array()和mysql_fetch_object()之后才会被储存,所以必须在使用这些函数以后使用。mysql_fetch_lengths()函数有一个参数,表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
$row = mysql_fetch_object ( $data_resource ) ;
print_r ( $row ) ;
 
/* 显示
Array
(
    [0] => 1
    [1] => 5
    [2] => 2
    [3] => 4
)
*/

?>

mysql_affected_rows()函数的作用是返回上一次INSERT,UPDATE,REPLACE或者DELETE操作所影响的条目数。mysql_affected_rows()函数有一个可选参数,表示特定的MySQL连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
mysql_query ( " UPDATE `users` SET `sex` = 'male' " ) ;
echo mysql_affected_rows () ;
// 显示 2
?>

mysql_num_rows()函数的作用是获取数据资源中的行数,mysql_num_rows()函数有参数,表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
echo mysql_num_rows ( $data_resource ) ;
// 显示 6
?>

mysql_result()函数的作用是获取指定行数,指定偏移量的单个数据。mysql_result()函数有三个参数,第一个参数表示数据资源,第二个参数表示需要获取的行数,第三个参数表示获取的字段(可以是数字,也可以是名称)。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
$result = mysql_result ( $data_resource , 2 , ' name ' ) ;
echo $result ;
// 显示 tom
?>

mysql_insert_id()函数的作用是获取上一次INSERT操作自动产生的id值。mysql_insert_id()函数有一个可选参数,表示使用的MySQL连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " INSERT INTO `users` ( `name` , `age` , `sex` )VALUES ( 'troy', '28', 'female'); " ) ;
$insert_id = mysql_insert_id () ;
echo $insert_id ;
// 显示 7
?>

mysql_info()函数测试失败,不知道如何使用。

mysql_free_result()函数的作用是释放在mysql_query()函数中得到的数据资源,mysql_free_result()函数有一个参数,表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
mysql_free_result ( $data_resource ) ;
$row = mysql_fetch_row ( $data_resource ) ;
print_r ( $row ) ;
// 显示 Warning: mysql_fetch_row(): 3 is not a valid MySQL result resource
?>

mysql_data_seek()函数的作用是按要求移动数据资源内部的指针,mysql_data_seek()函数有两个参数,第一个参数表示一个数据资源,第二个参数表示需要移动的行数。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
mysql_data_seek ( $data_resource , 2 ) ;
$row = mysql_fetch_row ( $data_resource ) ;
print_r ( $row ) ;
/* 显示
Array
(
    [0] => 3
    [1] => tom
    [2] => 23
    [3] => male
)
*/

?>

mysql_fetch_field()函数的作用是获取数据资源的字段信息,mysql_fetch_field()函数有两个参数,第一个参数表示数据资源,第二个参数表示偏移量。返回的数组中,name表示字段名,table表示字段所在的数据表,def表示该字段的默认值,max_length表示该字段的最大值,not_null表示是否可以是NULL,primary_ket表示该字段是否为主键,multiple_key表示该字段是否是多个值,unique_key表示该字段是否是唯一值,numeric表示好该字段是否是数值,blob表示该字段是否为一个BLOB二进制对象,type表示该字段的数据类型,unsigned表示该字段是否是非负数的,zerofill表示该字段是否可以有0。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
$field_message = mysql_fetch_field ( $data_resource , 2 ) ;
print_r ( $field_message ) ;
/* 显示
stdClass Object
(
    [name] => id
    [table] => users
    [def] =>
    [max_length] => 1
    [not_null] => 1
    [primary_key] => 1
    [multiple_key] => 0
    [unique_key] => 0
    [numeric] => 1
    [blob] => 0
    [type] => int
    [unsigned] => 1
    [zerofill] => 0
)
*/

?>

mysql_field_seek()函数的作用是移动字段信息的内部指针。没有测试成功。

mysql_field_flags()函数的作用是获取指定字段的信息。mysql_field_flags()函数有两个参数,第一个参数表示数据资源,第二个参数表示指定的偏移量。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
$row = mysql_field_flags ( $data_resource , 2 ) ;
print_r ( $row ) ;
// 显示age字段的值 not_null unsigned
?>

mysql_field_len()函数的作用是获取指定字段的长度。mysql_field_name()函数的作用是获取指定字段的长度。mysql_field_type()函数的作用是获取指定字段的类型。这三个函数有两个参数,第一个参数表示数据资源,第二个参数表示指定的偏移量。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( " SELECT * FROM `users` " ) ;
$len = mysql_field_len ( $data_resource , 1 ) ;
echo $len ;
// 显示name字段的长度 255
$name = mysql_field_name ( $data_resource , 1 ) ;
echo $name ;
// 显示name字段的名称 name
$type = mysql_field_type ( $data_resource , 1 ) ;
echo $type ;
// 显示name字段的类型 string
?>

mysql_num_fields()函数的作用是获取一个数据资源中的字段数量,mysql_num_fields()函数有一个参数,表示数据资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$result = mysql_query ( " SELECT * FROM `users` " ) ;
$num = mysql_num_fields ( $result ) ; //, MYSQL_NUM
echo $num ;
// 显示 4
?>

mysql_field_table()函数的作用是获取指定字段所在的数据表名,该函数在多表联立的时候非常有用。mysql_field_table()函数有两个参数,第一个参数表示数据资源,第二个参数表示指定的偏移量。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$data_resource = mysql_query ( ' SELECT * FROM `users` ' ) ;
echo mysql_field_table ( $data_resource , ' id ' ) ;
//显示 users
?>

mysql_list_fields()函数的作用是显示一个数据库中指定数据表中的所有字段。但是并不推荐使用此函数,请使用SQL:SHOW COLUMNS FROM来代替。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$result = mysql_query ( " SHOW COLUMNS FROM `users` " ) ;
$row = mysql_fetch_assoc ( $result ) ;
print_r ( $row ) ;
/* 显示
Array
(
    [Field] => id
    [Type] => int(10) unsigned
    [Null] => NO
    [Key] => PRI
    [Default] =>
    [Extra] => auto_increment
)
*/

?>

mysql_list_tables()函数的作用是显示一个数据库的所有数据表。mysql_tablename()函数可以通过mysql_list_tables()函数返回的列表资源进行操作显示数据数据表。但是并不推荐使用这两个函数,请使用SQL:SHOW TABLES [FROM db_name] [LIKE 'pattern']来代替

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' test_mysql ' , $mysql_resource ) ;
$result = mysql_query ( " SHOW TABLES FROM `test_mysql` " ) ;
$row = mysql_fetch_assoc ( $result ) ; //, MYSQL_NUM
print_r ( $row ) ;
/* 显示
Array
(
    [Tables_in_test_mysql] => users
)
*/

?>

mysql_list_dbs()函数的作用是获取MySQL中的所有数据库名称,mysql_list_dbs()函数有一个参数,表示一个MySQL的连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$db_list = mysql_list_dbs ( $mysql_resource ) ;
while ( $row = mysql_fetch_object ( $db_list )) {
    
echo $row -> Database . " \n " ;
}
// 显示 数据库中的所有数据表名。
?>

mysql_db_name()函数的作用是获取mysql_list_dbs()返回的列表资源中的某个数据表的名称。mysql_db_name()函数有三个参数,第一个参数表示mysql_list_dbs()返回的数据库名称资源,第二个参数表示偏移量,第三个参数表示字段的名称(该参数测试失败)。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$db_list = mysql_list_dbs ( $mysql_resource ) ;
echo mysql_db_name ( $db_list , 0 ) ;
// 显示 数据库中的第一个数据表。
?>

mysql_stat()函数的作用是获取MySQL连接的相关信息。mysql_stat()函数有一个参数,表示MySQL的一个连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$status = explode ( '   ' , mysql_stat ( $mysql_resource )) ;
print_r ( $status )
/* 显示类似
Array
(
    [0] => Uptime: 372
    [1] => Threads: 1
    [2] => Questions: 187
    [3] => Slow queries: 0
    [4] => Opens: 12
    [5] => Flush tables: 1
    [6] => Open tables: 6
    [7] => Queries per second avg: 0.503
)
*/

?>

mysql_list_processes()函数的作用是获取所有的MySQL进程数据。mysql_list_processes()函数有一个参数,表示一个MySQL连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$result = mysql_list_processes ( $mysql_resource ) ;
while ( $row = mysql_fetch_assoc ( $result )){
    
printf ( " %s %s %s %s %s \n " , $row [ " Id " ] , $row [ " Host " ] , $row [ " db " ] ,
        
$row [ " Command " ] , $row [ " Time " ]) ;
}
// 显示类似 195 localhost  Processlist 0
?>

mysql_thread_id()函数返回当前的MySQL线程的ID,mysql_thread_id()函数有一个参数,表示一个MySQL连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$thread_id = mysql_thread_id ( $mysql_resource ) ;
echo $thread_id ;
?>

mysql_get_host_info()函数的作用是获取MySQL主机信息,有一个参数,表示一个MySQL的连接资源。mysql_get_client_info()函数的作用是获取客户端的信息,mysql_get_proto_info()函数的作用是获取MySQL的协议信息,有一个参数,表示一个MySQL的连接资源。mysql_get_server_info()函数的作用是获取MySQL的服务器信息,有一个参数,表示一个MySQL的连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
$host_info = mysql_get_host_info ( $mysql_resource ) ;
echo $host_info . ' <br /> ' ;
$client_info = mysql_get_client_info () ;
echo $client_info . ' <br /> ' ;
$proto_info = mysql_get_proto_info ( $mysql_resource ) ;
echo $proto_info . ' <br /> ' ;
$server_info = mysql_get_server_info ( $mysql_resource ) ;
echo $server_info . ' <br /> ' ;
/* 显示类似
Localhost via UNIX socket
5.0.38
10
5.0.38-Ubuntu_0ubuntu1-log
*/

?>

mysql_error()函数的作用是获取MySQL捕获的错误信息。mysql_error()函数有一个参数,表示一个MySQL的连接资源。mysql_erroro()函数的作用和mysql_error()函数类似,但是获取MySQL错误信息的数字编号。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
mysql_select_db ( ' no_db ' , $mysql_resource ) ;
echo mysql_errno ( $mysql_resource ) . " : " . mysql_error ( $mysql_resource ) . " \n " ;
// 显示 1049: Unknown database 'no_db'
?>

mysql_ping()函数不知道如何测试。

mysql_create_db()函数的作用是建立一个数据库,mysql_create_db()函数有两个参数,第一个参数是需要建立的数据库名称,第二个参数表示的是一个MySQL的连接资源。mysql_drop_db()函数的作用是删除一个数据库,mysql_drop_db()函数有两个参数,第一个参数是需要删除的数据库的名称,第二个参数表示的是一个MySQL的连接资源。
测试的时候报错:Call to undefined function mysql_create_db() 但是我的MySQL确实是装了
mysql-server-5.0
mysql database server binaries
不知道是什么原因。同样, mysql_drop_db()函数也无法测试成功。

mysql_change_user()函数的作用是修改MySQL的用户名,此函数已经从最新的PHP版本中移除,所以跳过不介绍。

mysql_client_encoding()函数的作用返回MySQL默认字符集的名称(不知道应该怎么修改,才能是utf-8),mysql_client_encoding()函数有一个参数,表示MySQL的连接资源。

<?php
$mysql_resource = mysql_connect ( ' localhost ' , ' root ' , '' ) ;
echo mysql_client_encoding ( $mysql_resource ) ;
// 显示 latin1
?>

mysql_escape_string()函数的作用是对一个要写入数据库的内容进行转义。PHP不推荐使用此函数,请使用mysql_real_escape_string()函数代替。mysql_real_escape_string()函数有两个参数,第一个参数表示需要转义的字符串,第二个参数表示一个MySQL的连接资源。mysql_real_escape_string()函数会对这些字符进行转义:\x00, \n, \r, \, ', " 和 \x1a。注意在magic_quotes_gpc = On的时候,如果使用mysql_real_escape_string()函数对POST,GET或者COOKIE的数据直接写入数据库,会造成转义过的字符的二次转义,所以应当避免这样使用。mysql_real_escape_string()函数不会对%和_进行转义,因为这两个符号是MySQL中正则表达式的通配符。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游鱼_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值