首页 开发编程 正文

php if怎么用

主机地址'mysql用户名'数据库'端口号'localhost",连接数据库同时判断$conn=mysqli_connect("localhost"select*from表名",<,collapse;center;echo"color;姓名<年龄<&#...

php if怎么用,php操作数据库的三步骤?

第一步:链接数据库

MYSQLi_connect('主机地址','mysql用户名','mysql密码 ','数据库','端口号')

返回:如果连接成功,返回资源类型的标志符号;如果连接失败,返回false。

如果我们与mysql建立的连接不只一条,那么以后操作数据库的各种函数都必须传入返回的连接符号;

如果我们与mysql建立的连接只有一条,那么以后操作数据库的各种函数就不必传入这个标识符号。建议都传入。

密码为空可以省略密码

$conn= mysqli_connect("localhost", "root", "123456", "dbname");

第二步:检测数据库连接是否成功

mysqli_connect_errno()与 mysqli_connect_error()

mysqli_connect_errno(); 返回上次连接数据库错误的错误号,连接成功返回0

mysqli_connect_error(); 返回上次连接数据库的错误信息

if(mysqli_connect_errno($conn)){

die("数据库连接失败!失败信息:".mysqli_connect_error($conn));

}

前面两步合并的写法:连接数据库同时判断

$conn = mysqli_connect("localhost", "root", "", "mydb") or die("数据库连接失败!失败信息:".mysqli_connect_error($conn));

第三步:选择数据库

mysqli_select_db($link,$dbname)

参数:①标识符 ②连接数据库名称

连接成功,返回true;连接失败,返回false

如果修改数据库成功,则资源标识符中的数据库就会发生变动;

如果修改失败而没有通过代码终止操作,则后续代码可以使用原数据库继续执行

mysqli_select_db($conn, "mydb") or die("数据库选择失败!");

第四步:设置字符集编码格式

mysqli_set_charset($link,$charset) 只能设置为utf8而不能是utf-8

mysqli_set_charset($conn,"utf8") or die("数据库编码集设置失败!");

第五步:编写sql语句

$sql = "select * from 表名";

第六步:执行sql语句

mysqli_query($link,$sql)

如果是(DML)增、删、改,将返回布尔类型是否成功

返回上一次操作时受影响的行数 mysqli_affected_rows($link)

如果是(DQL)查询,将返回资源结果集

返回资源结果集中的行数 mysql_num_rows($result)

返回资源结果集中的字段数 mysql_num_fields($result)

如果查询失败,返回false

$res = mysqli_query($conn,$sql);

mysqli_insert_id($conn); 执行插入语句是返回上次插入最新插入的主键ID

第七步:解析结果集

var_dump(mysqli_fetch_array($res)); 处理结果集,返回关联数组和索引数组 不常用

参数① 需要处理的结果集

参数② 返回哪种数组格式

MYSQL_ASSOC 关联数组

MYSQL_NUM 数字数组

MYSQL_BOTH 默认。同时产生关联和数字数组

echo "<table border='1' style='border-collapse:collapse;text-align:center;width:200px;'>";

echo "<thead bgcolor='lightblue' style='color:#ffffff;'><td>ID</td><td>姓名</td><td>年龄</td><td>性别</td></thead>";

while($row =mysqli_fetch_assoc($res)){ // 返回关联数组 指针遍历 常用

echo "<tr>";

foreach($row as $value){

echo "<td>{$value}</td>";

};

echo "</tr>";

}

echo "</table>";

mysqli_data_seek($res,0); 设置结果集指针位置,此式表达复位至0

var_dump(mysqli_fetch_object($res));

var_dump(mysqli_fetch_row($res)); 返回索引数组

var_dump(mysqli_fetch_object($res)); 返回对象

var_dump(mysqli_fetch_fields($res)); 返回结果集中每一列的字段信息

第八步:关闭资源与结果集

mysqli_free_result()和mysqli_close()

mysqli_free_result($res); //释放查询资源结果集

mysqli_close($conn); //关闭数据库连接

php三个应用领域?

PHP技术主要应用于三个领域:

01服务端脚本

服务器脚本运行模式需要具备3个条件:php解析器(CGI或者服务器模块)、Web服务器、Web浏览器。

具体执行流程:首先运行Web服务器,然后安装并配置php,最后可以用Web浏览器访问php程序的输出,即浏览服务端的php页面(或数据输出)。

02命令行脚本

通过命令行模式运行php脚本,这种模式下不需要服务器的支持或者依赖浏览器的触发,在命令行脚本模式下仅需要php解析器来执行。通常这种方法被用在Windows和Linux平台下做日常运行脚本使用,如某些守护程序等。当然这些脚本也可以用来处理简单的文本。

03编写桌面应用程序

php也许并不完全适合用来做图形界面应用程序,但是开发人员同样可以在客户端程序应用某些php的高级特性,通过使用php-GTK来编写这些程序。php-GTK是php的一个扩展,并不包含在标准的开发包中,开发人员需要单独编译它。通过php-GTK可以建立独立的GUI(用户图形界面)应用程序,例如,音频播放器、文本编辑器、数据库后台等。

在PHP中如何正确创建函数?

tep 1 =>

php的扩展模块都放在 ext/ 目录下,比如说 snmp模块、mysql模块。 我们要建立自己的模块,就要在ext目录下为自己的模块建一个目录。比如,我们要做一个分析config文件的模块,命名为pconfig模块(parse config的简写),需在ext下建立目录pconfig。将我写好的7个文件copy到该目录下,另外需对主目录下的configure和internal_functions.c作一些修改。

Step 2 =>

Makefile.am Makefile.in

是模板文件,用户执行configure时,会调用这两个文件,生成编译时所用的Makefile文件。修改时将小写的pconfig换成你自己的模块名,别忘了把大写的PCONFIG也替换掉(不要告诉我你不会vi的替换语句)。config.m4也是执行configure将会调用的检测脚本程序,以后我们来讨论这些脚本程序的更深入的修改。现在你只需要把pconfig该成你的模块就可以了。对config.h.stub和setup.stub也如法炮制。其实setup.stub也没什么用。

Step 3 =>

php3-pconfig.h 头文件中

extern php3_module_entry pconfig_module_entry;

#define pconfig_module_ptr &pconfig_module_entry

#define phpext_pconfig_ptr pconfig_module_ptr

这几行定义了模块的入口,将入口注册到php后,php会通过模块入口找到你写的函数

下面几个函数定义是用宏进行定义的,展开以后其实就是 php3_minit_pconfig , php3_rinit_pconfig ……分别在你的模块初试化或结束时被调用,如果你的模块很简单,也就不需要这些定义了

extern PHP_MINIT_FUNCTION(pconfig);

extern PHP_RINIT_FUNCTION(pconfig);

extern PHP_MSHUTDOWN_FUNCTION(pconfig);

PHP_MINFO_FUNCTION(pconfig);

这是你的函数声明,将来写在php脚本语句中的函数名就是在PHP_FUNCTION中定义的名字。

PHP_FUNCTION(pconfig_test);

如果有多个,还可以继续往下加

PHP_FUNCTION(pconfig_parsefile);

PHP_FUNCTION(pconfig_release); …….

Step 4 =>

接下来我们看最重点的C代码了

function_entry pconfig_functions[] = {

PHP_FE(pconfig_test, NULL)

{NULL, NULL, NULL}

};

定义的是你的函数的入口(前面我们提到过模块的入口),按照格式将你在头文件中定义的函数写进去吧。注意,这是用宏定义的,不要管语法是否正确。以后我们具体讨论这些宏的用法。

php3_module_entry pconfig_module_entry = {

"pconfig", pconfig_functions, PHP_MINIT(pconfig), PHP_MSHUTDOWN(pconfig), PHP_RINIT(pconfig), NULL, PHP_MINFO(pconfig), STANDARD_MODULE_PROPERTIES

};

注册模块的入口信息,比如模块名,函数接口,初试化模块将调用的函数等等,如果你的模块不执行复杂操作的话,可以忽略掉他们,写成

php3_module_entry pconfig_module_entry = {

"pconfig", pconfig_functions, NULL,NULL,NULL,NULL,NULL,STANDARD_MODULE_PROPERTIES

};

Step 5 =>

写你自己的函数

在头文件和function_entry处,我们已经定义了自己的函数pconfig_test,现在我们就来实现pconfig_test的功能。就比如执行两个数相加的和吧。

static void _php3_pconfig_test(INTERNAL_FUNCTION_PARAMETERS)

{ ......

}

PHP_FUNCTION(pconfig_test)

{

_php3_pconfig_test(INTERNAL_FUNCTION_PARAM_PASSTHRU);

}

当系统调用pconfig_test时,会调用你的_php3_pconfig_test函数,当然你也可以把_php3_pconfig_test里的内容直接写在PHP_FUNCTION(pconfig_test)中,这样做只是程序结构比较清晰。注意:不要将_php3_pconfig_test命名成php3_pconfig_test,PHP_FUNCTION(pconfig_test)宏展开后实际上就是php3_pconfig_test!

Step 6 =>

好了,现在我们开始修改configure,在echo $ac_n "checking for MySQL support""... $ac_c" 1>&6的前面(当然,如果你熟悉configure的话,可以加在任何合适的地方)加上下面几句话

if test "${with_pconfig+set}" = set; then

withval="$with_pconfig"

# Add your lib in here

EXTRA_LIBS="$EXTRA_LIBS"

# Add your include path in here

INCLUDES="$INCLUDES"

EXT_SUBDIRS="$EXT_SUBDIRS pconfig"

EXT_LIBS="$EXT_LIBS pconfig/libphpext_pconfig.a"

EXTINFO_DEPS="$EXTINFO_DEPS ../ext/pconfig/extinfo.c.stub"

EXT_STATIC="$EXT_STATIC pconfig"

fi

修改internal_functions.c,在头文件定义中加入#include "ext/pconfig/php3_pconfig.h"

在zend_module_entry数组中加入phpext_pconfig_ptr,

Step 7 =>

从新configure,带上需要的参数,不要忘记的是在参数里加入 --with-pconfig

Step 8 =>

index.php3

<? echo pconfig_test(123,678)."

"; ?>

执行%>php index.php3

php中submit是什么意思?

isset -检测变量是否设置判断post过来的数据是否被提交过来,if(isset($_POST["submit"]){ echo "提交过来了";}else{ echo "submit is no come~";}

php怎么从数据库乱序读取数据?

可以进行排序,也可以加搜索条件

本文转载自互联网,如有侵权,联系删除