php笔记2.php语法 表单校验

phpinfo();打印php服务信息

如果有语法错误

开发模式/生产模式(屏蔽错误):

php.ini

display errors=on

重启服务器

php.ini

搜索display_errors  默认是display_errors=Off  改成display_errors=On 保存退出重启apache2 即可

 

短标记short open tag默认off<??>

asp tag 支持<%%>

注释风格:// # /**/

打印echo()echo :其中为html时可以控制显示html页面元素

参数只有一个时可以去除圆括号

定界符:echo <<<EOT ***

EOT;(前面不能有空格)

“”中不能有换行,EOT比较方便,类似模板字符串

不能直接在php标签中放html代码,需要echo

php声明不需要类型:$,””$可自动显示变量值,$后的html需要隔开用字符串连接符

字符串拼接连接符:.

php resource存储各类型数据

 

web service网络接口

 

静态变量配合静态类:共享

单例模式(静态类,只有一个实例)

工厂

DAO

代理(面向切面

依赖注入(使用对象时

静态变量声明只有第一次声明有效

 

全局 global

Java认为全局变量破坏封装性,需要时可用静态

 

request接收参数同时各种,最好是putdelete

增删改查post/delete/put/get

跳转显示数据

 

name属性,接收

超链接传值(get),session,cookie

单选控件需要加value

==时能够自动类型转换

===类型相同

elseif中间空格

php函数

function

所有参数加$符号

内置函数:echo

查找字符串strstr(“hello”,”o”);返回在字符串中位置

填写电子邮件,验证格式

把校验功能封装到函数

Htmlspecialchars

加密函数md5(数据库安全隐患)

通过 include require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件

include:代码执行时加载,碰到错误继续执行

require:只要当前页加载就预加载

php数组:键值对(数据字典)

分配键名(若为数字,往后自动指定)

实验23):表单信息校验

实验内容:

1、在上次作业的基础上,在registerverify.php页面添加对注册页面提交来的数据进一步进行校验,功能描述如下:

(1)账号长度不能超过10,否则提示以下信息,并提供返回链接

(2)密码长度不能少于6位,否则提示以下信息,并提供返回链接:
(3)密码与确认密码应当一致,否则提示以下信息,并提供返回链接:
(4)电子邮件地址必须含有”@”和”.”字符,否则提供以下信息,并提供返回链接
(5)当所有校验都完成后,页面会显示用户注册信息:

js调用php和php调用js的方法

PHPJS互相调用的原则就是数据类型的互转:

 

1:对于不同的语言,两互相调用的准则就是参数的数据类型的转化

 

2PHPJS都是b/s脚本语言,浏览器集成了PHP的解释器和js的解释器,所以当浏览器读到关键字时就会调用相应的解释器来解析网页语言,因此phpjs互相调用的本质是  参数(语法规则)的相互转化,也就是利用PHPecho函数将数据类型统一化

 

3PHPjs传参--> 利用echoPHP的语法规则转化为js的语法规则,PHP用到JS的返回值 --->就是利用echojs的返回值转化为PHP的语法格式

 

<html> 

<body> 

     <script type="text/javascript"> 

         var str = 'values'; 

     </script> 

     <?php  

         echo "<script type=text/javascript>document.write(str)</script>"; 

     ?> 

</body> 

</html>

Php表单校验

http://www.w3school.com.cn/php/php_form_validation.asp

我们要做的第一件事是通过 PHP htmlspecialchars() 函数传递所有变量。

在用户提交该表单时,我们还要做两件事:

1.(通过 PHP trim() 函数)去除用户输入数据中不必要的字符(多余的空格、制表符、换行)

2.(通过 PHP stripslashes() 函数)删除用户输入数据中的反斜杠(\

接下来我们创建一个检查函数(相比一遍遍地写代码,这样效率更好)。

我们把函数命名为 test_input()

现在,我们能够通过 test_input() 函数检查每个 $_POST 变量,脚本是这样的:

<?php

// 定义变量并设置为空值

$name = $email = $gender = $comment = $website = "";

 

if ($_SERVER["REQUEST_METHOD"] == "POST") {

  $name = test_input($_POST["name"]);

  $email = test_input($_POST["email"]);

  $website = test_input($_POST["website"]);

  $comment = test_input($_POST["comment"]);

  $gender = test_input($_POST["gender"]);

}

 

function test_input($data) {

  $data = trim($data);

  $data = stripslashes($data);

  $data = htmlspecialchars($data);

  return $data;

}

?>

<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">

 

<dd>  账号:<input type="text" name="username" class="text"  /> </dd>

                <dd>  密码:<input type="password" name="password" class="text" /> </dd>

                <dd>确认密码:<input type="password" name="password2" class="text" /> </dd>

<dd>电子邮箱:<input type="text" name="email" class="text"/> </dd>

                <dd>性别: <input type="radio" name="sex" value="" checked="checked" />男  <input type="radio" name="sex" value="" />女 </dd>

                <dd>出生年月:

                  <select id="testSel" name="birth_y">

                  </select>&nbsp;&nbsp;&nbsp;

                  <select id="monthSel" name="birth_m">

                  </select>&nbsp;&nbsp;

                </dd>

                <dd> 验证码:<input type="text" size="4" name="code" class="text" id="code_input"/>

                <div id="v_container" style="width: 100px;height: 50px;"></div></dd>

Php无法访问全局变量

在局部作用域内,使用global关键字声明与全局作用域变量名称相同的变量即可。原因:这样声明之后,全局作用域内的变量和局部作用域内与之同名的变量指向了同一块内存

没事还是传值或者直接写吧

CSS控制图片和文字在同一行显示且对齐的3种方法

https://www.cnblogs.com/jingwhale/p/4599327.html?utm_source=tuicool

<img src="logo.jpg" alt="" style="vertical-align:middle"><a href="">找回密码</a>

div居中

margin:0 auto;

//左右居中,上下0

字符串处理

strchr(string $haystack , mixed $needle [, bool $before_needle = false ] )

strchr(同strstr

返回从第一次出现的位置到haystack 结束的字符串或false(没有找到

$haystack  被查找的字符串

      $needle   要查找的字符串(如果不是字符串,将被转化成整型并且作为字符的序号来使用)

      $before_needel  控制返回结果

strchr('hello world!','wor')    返回world!

strchr('name@example.com','@',true)  返回name

效果图

完成作业2019.3.13版本下载地址:https://download.csdn.net/download/lagoon_lala/11017492

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值