关键词:一对多自由控制语音, PHP MySQL 预处理语句
一、一对多自由控制语音
1.1 在demos2下面
https://192.168.1.14:9001/demos2/StreamHasData.html
手机(Android)和电脑(Chrome浏览器)能连上,老师可以关学生的声音,但不能关自己的声音;同样,学生能关老师的声音,但不能关自己的声音。
1.2 分析代码,看下语音是怎么静音的
1)下面的div是用于分享学生端链接用的
<div id="room-urls"style="text-align: center;display: none;background: #F1EDED;margin: 15px-10px;border: 1px solid rgb(189, 189, 189);border-left: 0;border-right:0;"></div>
2)用于显示视频的代码如下:
<divid="videos-container"></div>
3)以下代码是打开房间及加入房间的单击事件
1.3 又有个重大发现
这个demo中有控制视频的按钮,如下:
注:点击一下,视频就动,再点一下就停了,有点类似看电影时,暂停的感觉。
二、php MySQL
2.1 PHP MySQL 预处理语句
预处理语句对于防止 MySQL 注入是非常有用的。
预处理语句及绑定参数
预处理语句用于执行多个相同的 SQL 语句,并且执行效率更高。
预处理语句的工作原理如下:
1. 预处理:创建 SQL 语句模板并发送到数据库。预留的值使用参数 "?" 标记。例如:
2. INSERT
INTO MyGuests(firstname, lastname, email) VALUES(?,?,?)
3. 数据库解析,编译,对SQL语句模板执行查询优化,并存储结果不输出。
4. 执行:最后,将应用绑定的值传递给参数("?" 标记),数据库执行语句。应用可以多次执行语句,如果参数的值不一样。
预处理的优点如下:
相比于直接执行SQL语句,预处理语句有两个主要优点:
· 预处理语句大大减少了分析时间,只做了一次查询(虽然语句多次执行)。
· 绑定参数减少了服务器带宽,你只需要发送查询的参数,而不是整个语句。
· 预处理语句针对SQL注入是非常有用的,因为参数值发送后使用不同的协议,保证了数据的合法性。
2.2 PHP MySQL 预处理例子
1) 用MySQLi实现
程序如下:
运行结果如下:
注:$stmt->bind_param("sss", $firstname, $lastname,$email);这一句,是数据绑定,并告诉数据库用的是字符串类型,为什么有三个s,因为绑定了三个参数$firstname,$lastname, $email,除了字符串类型,还可以有其它类型,常用的如下:
参数有以下四种类型:
· i - integer(整型)
· d - double(双精度浮点型)
· s - string(字符串)
· b - BLOB(binary large object:二进制大对象)
每个参数都需要指定类型。
2017年1月23日星期一