仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 793|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网站制作之PHP 和 HTML

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:16:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
参加PHP开发学习,或许只是一次偶然的想法吧!只是想在走向社会之前体验、学习在一个公司或者说是项目团队之中如何去更有效的沟通、交流、共同合作,还有就是为毕业实习找工作增加伐码。   PHP 和 HTML
PHP 和 HTML 可以互操作: PHP 可以生成 HTML, 而 HTML 可以传递信息给 PHP. 1. 我用一个 form/URL传值时,我要如何 编码/解码? 2. 我在用 <input type="image"> 标志, 但 $foo.x and $foo.y 变量却不成用. 它们在哪里? 3. 我如何创立 HTML <form>数组? 4. 我如何从一个多选框失掉一切的了局值?
1. 我用一个 form/URL传值时,我要如何 编码/解码?

在几个阶段里,编码长短常主要的. 假定你有一个 字符串变量 $data, 它包括一些你要以 未编码 体例传递的字符, 要经由上面阶段的编码:


  • HTML 注释. 为了暗示任何一个字符串, 你必需 把它包括在双引号里, 并且是HTML特别字符的要利用 htmlspecialchars写法.

  • URL: URL 由几局部构成. 你想你的数据被当作URL的一局部, 你 必需urlencode()编码它.



例 52-1. 埋没的 HTML 表单位素
  1. <?php    echo "<input type=hidden value=\"" . htmlspecialchars($data) . "\">\n";?>
复制代码
注重: 这里不克不及用urlencode() $data, 由于 urlencode() 数据是阅读器的义务. 绝大多半阅读器可以准确处置如许的数据. 不管用何种办法( GET POST). 你可以只思索 GET 恳求, 由于 POST 恳求凡是被埋没了.
例 52-2. 用户编纂数据
  1. <?php    echo "<textarea name=mydata>\n";    echo htmlspecialchars($data)."\n";    echo "</textarea>";?>
复制代码
注重: 在阅读器窗口显示的数据会被解码成可读的,由于阅读器会对 HTML 标志停止注释.
一旦提交, 不管GET 仍是 POST, 阅读器在传输数据时会停止URL编码,PHP则会对它停止解码. 一切都是主动停止的,你不需求做甚么.
例 52-3. 在URL串里
  1. <?php    echo "<a href=\"" . htmlspecialchars("/nextpage.php?stage=23&data=" .        urlencode($data)) . "\">\n";?>
复制代码
注重: 实践上你在本人写一个 GET 恳求, 所以用urlencode() 对它停止编码就是不成短少的.
注重: 你需求htmlspecialchars() 全部URL串, 由于URL串是 HTML-属性的一局部. 这类情形下, 阅读器起首 反-htmlspecialchars() 这个值, 然后送出 URL . PHP 会辨认这个URL串, 由于你用 urlencoded() 对它停止了编码.
你会发明 & 在 URL 串中 被交换成 &. 固然你没有编码大局部的阅读器也会帮你做,但并非一切的都能. 所以即便你在写一个静态的URL,你也需求htmlspecialchars() 来对 URL 停止编码.

2. 我在用 <input type="image"> 标志, 但 $foo.x and $foo.y 变量却不成用. 它们在哪里?

在提交一个表单里, 能够利用一个 image 控件而不是利用 尺度的提交按钮:
  1. <input type="image" src=http://www.163design.net/p/a/"image.gif" name="foo">
复制代码
When 当用户点上 image 控件的某个中央时, 表单被提交到办事器,并有两个附加的变量: foo.x and foo.y.
由于 $foo.x 和 $foo.y 在 PHP 里是有效的变量名, 所以它们主动被转换成$foo_x and $foo_y. 也就是说, 圆点被交换成了下划线.
3. 我如何创立 HTML <form>数组?

为了使你的表单了局作为数组送往PHP剧本,你可以给 <input>, <select> or <textarea> 元素象上面如许取名:
  1. <input name="MyArray[]"><input name="MyArray[]"><input name="MyArray[]"><input name="MyArray[]">
复制代码
注重元素名前面的中括号不克不及省, 就是它使了局成为一个数组. 你可以经由过程元素名把它们排成分歧的数组 :
  1. <input name="MyArray[]"><input name="MyArray[]"><input name="MyOtherArray[]"><input name="MyOtherArray[]">
复制代码
下面的代码发生了两个数组, MyArray 和 MyOtherArray, 送往PHP. 固然也能够为你的数组指明键值:
  1. <input name="AnotherArray[]"><input name="AnotherArray[]"><input name="AnotherArray[email]"><input name="AnotherArray[phone]">
复制代码
AnotherArray 数组会包容下标 0, 1, email and phone.
申明: 在元素名里标明下标值是可选的.假如你没有标明,数组会按元素在表单里呈现的按次来顺次填充. 如咱们的头一个例子里数组的下标分离是: 0, 1, 2 and 3.

拜见 Array 函数 and PHP内部变量.
4. 我如何从一个多选框失掉一切的了局值?

HTML里的多选框是用来让用户从列内外选多个值的.这些值然后被送往表单的处置剧本. 成绩在于它们都有一样的变量名. 例如:
  1. <select name="var" multiple>
复制代码
每个被选择的项会如许传值给处置剧本:
  1. var=option1var=option2var=option3
复制代码
每一个值掩盖了前一项的值. $var 处理举措是利用 PHP的 "表单位素数组"特征.上面就是:
  1. <select name="var[]" multiple>
复制代码
PHP会把 $var当做一个数组.每一个被选择项城市分派给一个数组单位. 第一项是$var[0], 下一项是 $var[1], 依此类推. count() 函数可以用来判别数组有几何选择项 ,假如有需要的话,还可以用 sort() 函数来对数组停止排序.
假如你在利用 JavaScript , 直接利用元素名援用能够会失足. 你应当利用它的数字索引,或把变量名放在单引号以内.例如:
  1. <?php    echo "<textarea name=mydata>\n";    echo htmlspecialchars($data)."\n";    echo "</textarea>";?>0
复制代码
接触MYSQL,开始设计数据库程序
爱飞 该用户已被删除
沙发
发表于 2015-2-4 10:39:27 | 只看该作者
当然这种网站的会员费就几十块钱。
山那边是海 该用户已被删除
板凳
发表于 2015-2-6 14:05:46 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
精灵巫婆 该用户已被删除
地板
发表于 2015-2-16 10:12:02 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
海妖 该用户已被删除
5#
发表于 2015-3-5 03:43:56 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
小妖女 该用户已被删除
6#
发表于 2015-3-11 23:11:39 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
飘灵儿 该用户已被删除
7#
发表于 2015-3-28 12:36:38 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
兰色精灵 该用户已被删除
8#
发表于 2015-3-29 17:24:04 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
活着的死人 该用户已被删除
9#
发表于 2015-4-2 20:29:36 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
小魔女 该用户已被删除
10#
发表于 2015-4-4 19:41:35 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
admin 该用户已被删除
11#
发表于 2015-4-6 03:11:48 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
莫相离 该用户已被删除
12#
发表于 2015-4-7 12:14:19 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
小女巫 该用户已被删除
13#
发表于 2015-4-14 07:50:21 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
深爱那片海 该用户已被删除
14#
发表于 2015-4-15 23:16:28 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
冷月葬花魂 该用户已被删除
15#
发表于 2015-4-16 05:22:54 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
因胸联盟 该用户已被删除
16#
发表于 2015-4-30 13:43:56 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
乐观 该用户已被删除
17#
发表于 2015-5-1 02:11:16 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
蒙在股里 该用户已被删除
18#
 楼主| 发表于 2015-6-3 23:36:36 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
老尸 该用户已被删除
19#
发表于 2015-6-12 19:41:33 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-13 12:07

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表