码迷,mamicode.com
首页 > Web开发 > 详细

PHP入门-摘要表格处理问题

时间:2015-09-13 10:31:27      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

几天来学习下来.PHP和C/C++有太多的阶段似系.所以,简单的入门现在看来已经没有问题.然而,由于所选择的条目是一个高速书籍,难免有些粗糙知识.例如,下面的两个问题让我吃了一些损失.

1. 文件标签的形式不能得到的文件名.

在书籍里面了解到,表单<form>有三个属性,method, action,name .当中那么标记表单的名字,method表示使用哪种方式提交表达,可选get/post.action指定处理表单的动作.能够指定一个php页面或者干脆就在当前页面处理.这一点实在非常奇妙而且方便.由于表单仅仅要指定了php的页面,变量什么的都是和php共享的.

表单以下可选的标签有input   select   option   textarea ,  当中option是select的一个子标签.

而input又能够拓展成非常多类别的标签,通过input的type属性指定.眼下我接触到的主要有text  password   file   submit   reset   image .  从左到右,依次是文本,密码,文件,提交,重置,图片. 这里图片的意思不是用来展示的,而是用来替换submit使用的.而file属性即提供一个供用户上传文件的渠道.书中给出的样例,我对比着敲了一下,也试着获取了一下文件信息,可是总是失败,返回的一直是空.书中全然没有给出不论什么解释.源代码例如以下:

<html>
<head>
<title>
  注冊您的个人信息
</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<body>
<h1>  请输入您的个人信息 </h1>
<form name=regist method=post action="php/regist.php" >
  姓名: <input type=text name=username maxlength=20 size=20 value=请输入用户名 /> <br>
  学号: <input type=text name=id maxlength=20 size=20/><br>
  邮箱: <input type=text name=mail maxlength=20 size=20/><br>
  密码: <input type=password name=password maxlength=40 size=20/><br>
  确认密码: <input type=password name=conform maxlength=40 size=20/><br>
  头像: <input type=file name=pic /><br>
        <input type="image" name="image1" src="pic222094.jpg" alt="submit" width=60 height=60 /><br>
  <input type=reset value=重置>
</form>
</body>
</html>
通过搜集资料,发现非常多同学也遇到了同样的问题.可能和我看的是一样的书吧.只是总算是经过一番努力以后找到了原因,原来是由于默认情况下,html只支持text/html格式的文件传输.而表单须要多格式支持.所以解决的方法就是.在form中加入属性 enctype="multipart/form-data" . ok问题解决.

我的regist.php的内容例如以下:

<?php
header("Content-Type:text/html;charset=utf-8");
echo "user info is as follow: <br>";
echo "name is ".$_POST[username]."<br>";
echo "number is ".$_POST[id]."<br>";
echo "mail is ".$_POST[mail]."<br>";
echo "password is ".$_POST[password]."<br>";
print_r($_FILES);
?>
上传一个文件,測试一下:

输入界面例如以下,我写入一些信息,由于是字符界面,所以头像部分是我手写进去的.

技术分享

输出界面例如以下.能够看到文件是有信息的.当中name表示在client的文件名称,type表示文件类型.tmp_name表示在server端的暂时文件名称

技术分享

2. 表单的图像标签不显示图像.

这个问题在大学的时候也遇到过,当时攻克了.可是转眼这么多年过去了.哪里还记得住啊.只是运气号,试了几下就又想起解决的方法了.

最初我指定的路径是我其他的文件夹.所以图片无法显示,后来我把图片放在了apache工作的根文件夹,即/var/www/html文件夹下,就能够正常显示了.想想也是,假设哪里的文件都能显示,apache何必还要我们配置工作ROOT_DIRECTORY呢.

3. php乱码问题

我们知道在html页面中,编码问题是通过meta标签指定http-equiv的方式来指定的.可是跳转到php页面以后,这个标签失效了.php又成了乱码.怎么办,想必是一定有现成的函数能够使用的.所以就网上查了一下,果然.

在PHP文件的开头处增加 header("Content-Type="text/html;charset=utf-8");问题解决.


ok.这就是这几天学习PHP遇到的一些的问题.总结一下,尤其是第一个问题,查了非常久才找到一个合理的解释.接下来的几天我会继不断加深理解,本周可以写一点东西.


版权声明:本文博主原创文章。博客,未经同意不得转载。

PHP入门-摘要表格处理问题

标签:

原文地址:http://www.cnblogs.com/hrhguanli/p/4804056.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!