(1)复习:自定义函数

(2)调用PHP预定义的函数——访问MySQL数据库

1.函数的基础概念

  定义一个简单的函数:

function  函数名( ){

#函数主体

}

 调用/运行一次函数:

函数名( );

  

 

  定义带运行参数的函数:形式参数

function  函数名( $变量名1, $变量名2, ... ){

#函数主体

}

 调用/运行一次函数:实际参数

函数名( 值1, 值2, ... );

 

  定义有返回值的函数:

function  函数名( $变量名1, $变量名2, ... ){

#函数主体

return  值 ;     #返回函数的计算结果

}

 调用/运行一次函数:

$变量 = 函数名( 值1, 值2, ... );  #接收函数的返回值

练习:创建函数 getSum($n1, $n2, $n3),计算这三个数的和,返回计算结果。

练习:创建函数 getAvg($n1, $n2, $n3),计算这三个数的平均值,返回计算结果。

试着调用上述函数

函数总结:如何定义/调用?什么是参数?什么是返回值?

2.MySQL的客户端工具

(1)命令行工具:  mysql.exe

(2)网页版本工具:   phpMyAdmin

使用方法:启动Apache,启动MySQL,打开浏览器,在地址栏中输入http://127.0.0.1/phpmyadmin即可使用此客户端工具

3.使用PHP连接数据库服务器

提示:步骤与命令行工具连接MySQL服务器是一样的

(1)连接到MySQL服务器

mysqli_connect( ... )

(2)提交SQL语句给MySQL服务器执行

mysqli_query( ... )

(3)查看返回的执行结果

(4)关闭到MySQL服务器的连接

mysqli_close( ... )

4.学子商城项目:用户模块 —— 基于单表的CRUD

CRUD: Create / Retrieve / Update / Delete 增删改查

用户模块需要的功能点:

(1)用户注册 —— INSERT

(2)修改用户信息 —— UPDATE

(3)用户删除 —— DELETE

(4)用户登录 —— SELECT(一条)

(5)用户列表 —— SELECT(多条)

5.完成学子商城用户模块 —— 用户登录功能点

(0)创建服务器端页面user_register.php,用户访问此页面,提交注册信息

(1)编写PHP页面,读取客户端提交的请求数据:uname、upwd、email、phone。

(2)使用PHP连接MySQL服务器。

(3)向MySQL服务器提交一条INSERT语句。

(4)根据SQL语句执行结果,向客户端输出“注册成功/失败”。

PHP小知识:如何屏蔽一行代码产生的警告信息输出?

@代码内容;            在代码之前添加一个@符号

PHP小技巧:如何终止页面的执行?

die( ) ;

die('终止执行的原因说明');

PHP背景知识:

mysql_xxx():早期提供的一套函数

mysqli_xxx():Improved,提升版/改进版/性能优化版

小知识:获取刚执行的INSERT语句在数据库中产生的自增编号

$id = mysqli_insert_id( $conn ) ;

6.完成学子商城用户模块 —— 用户删除功能点

(0)创建服务器端页面user_delete.php,用户访问此页面,提交要删除的用户的编号

(1)编写PHP页面:读取客户端提交的请求数据:uid

(2)使用PHP连接MySQL服务器。

(3)向MySQL服务器提交一条DELETE语句。

(4)根据SQL语句执行结果,向客户端输出“删除成功/失败”。

小知识:获取刚刚执行增删改语句影响的行数

$num = mysqli_affected_rows($conn);

7.完成学子商城用户模块 —— 修改个人信息功能点

(0)创建服务器端页面user_update.php,用户访问此页面,提交要修改的用户的编号、修改后的真实姓名、性别、邮箱、电话

(1)编写PHP页面:读取客户端提交的请求数据:uid、user_name、gender、email、phone

(2)使用PHP连接MySQL服务器。

(3)向MySQL服务器提交一条UPDATE语句。

(4)根据SQL语句执行结果,向客户端输出“修改成功/失败”。

PHP-预定义函数访问数据库的更多相关文章

  1. PHP-自定义数组-预定义数组-自定义函数-预定义函数

    (1)自定义数组 —— 项目中的重点 (2)PHP预定义数组 —— 重点&难点 (3)自定义函数 —— 了解 (4)PHP预定义函数 —— 项目中的重点 1.自定义数组 数组:array,一个 ...

  2. Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216  java c# php js.docx

    Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216  java c# php js.docx 1.1. 预定义函数 魔术方法 魔术函数是什么1 1.2. & ...

  3. javascript 函数初探 (二)--- 那些年的预定义函数

    javascript的预定义函数: javascript引擎中有一组可以随时调用的内建函数. 这些内建函数包括: 1. parseInt() 2. parseFloat() 3. isNaN() 4. ...

  4. STL算法设计理念 - 预定义函数对象

    预定义函数对象基本概念:标准模板库STL提前定义了很多预定义函数对象 1)使用预定义函数对象: #include <iostream> #include <cstdio> #i ...

  5. Java8学习笔记(二)--三个预定义函数接口

    三个函数接口概述 JDK预定义了很多函数接口以避免用户重复定义.最典型的是Function: @FunctionalInterface public interface Function<T, ...

  6. C++STL 预定义函数对象和函数适配器

    预定义函数对象和函数适配器 预定义函数对象基本概念:标准模板库STL提前定义了很多预定义函数对象,#include <functional> 必须包含. 1使用预定义函数对象: void ...

  7. JavaScript内置的预定义函数

    javascript引擎中有一组可供随时调用的内建函数.这些内建函数包括 parseInt()  将收到的任何输入值转换成整数类型输出,如果转换失败,返回NaN parseFloat() 功能基本与p ...

  8. 【摘录自MDN】预定义函数

    JavaScript语言有好些个顶级的内建函数: eval() eval()方法会对一串字符串形式的JavaScript代码字符求值. uneval()  uneval()方法创建的一个Object的 ...

  9. javascript 预定义函数

    parseInt() parseFloat() isNaN() isFinite() encodeURI() decodeURI() encodeURIComponent() decodeURICom ...

随机推荐

  1. 解决Error:Could not determine the class-path for interface com.android.builder.model.AndroidProject.

    见https://blog.csdn.net/qq_21397217/article/details/65630730博客

  2. Struts2 xxAction-validation.xml使用

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC &quo ...

  3. python-web微信实现

    1.url from django.conf.urls import url from django.contrib import admin from web import views urlpat ...

  4. java实现pdf按页切分成图片

    package com.ces.component.pictrueCut.entity; import java.awt.Image; import java.awt.Rectangle; impor ...

  5. Java锁----Lock实现原理

    转载. https://blog.csdn.net/wl6965307/article/details/51249156 Lock完全用Java写成,在java这个层面是无关JVM实现的. 在java ...

  6. oracle 连接字符串的问题

    未指定的错误,发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息.数据类型不被支持. 原因是你用的ADO   for   ORACLE的驱动是微软的Microsoft OLE DB ...

  7. pyton 模块之 pysmb 文件上传和下载(linux)

    首先安装pysmb模块 下载文件 from smb.SMBConnection import SMBConnection conn = SMBConnection('anonymous', '', ' ...

  8. 加入EOS主网

    [加入EOS主网] 根据之前的博文,可以直接在本地测试单节点网络.这里再给出一下.详情见[参考1]. alias cleos='docker exec -it eosio /opt/eosio/bin ...

  9. Log4J2用法

    一.    关于Log4J 2015年5月,Apache宣布Log4J 1.x 停止更新.最新版为1.2.17. 如今,Log4J 2.x已更新至2.7. 官方网址:http://logging.ap ...

  10. AS3中的单件(Singleton)模式

    单件(singleton)模式在c#中是最容易实现的模式,其主要用意就在于限制使用者用new来创建多个实例.但在as3中,构造函数必须是public的(语法本身要求的),而且也不能在构造函数中抛出异常 ...