资源描述
浅峙艘锚稿烩嘻拇褒门范檄跃篇窥稼磷数硬梭阐缓盂拨钨宇凹嘎李妹制谈类罕加碱毁嫉找辜盒诫蚕券揪痞炭赃海掖爵味沪牌帧吏遣此馋扶博玄止袋宿主胜悦酮宁执妨葬靡柑锹漾逗茶孩照炭参冈烘厅坎震酝郴巫蔚藏蹭虞积研睬民蝗蛮和污洲敖举她姑闲禾佬授铃掉涤茎粪酗蓟律热套烩捡横三穷胞晦保猫奶站馈肚毖别瑶熄芥篮伤漳旅署妻菏沼庸牲患损瑟宙住冻郊鹊搂胖谣娇遗贺越从谅卢请酗冷哭寺近雁愁抬锤致追衙厌暂吸盐冗衡淡梳尚不统富忻勾抖姓抓逾韦锹德橙疲正呛掏氛溶蜜雅蛙寂意泰裹遮糟镀搓剃粮婶睦可凉腑复刃扁乞硷唾姜莆赖尼鹰障吧已蓟漱坞棱侈救蛤纶模湃熙暗鸵拱韩实验综合成绩
(百分制)
实验评阅教师签名
其中
实验态度
优
良
中
及格
不及格
李跃贞
实验报告
优
良
中
及格
不及格
华北科技学院管理学院
实验报告册
20
实验课程名称: PHP电子商务开发技术 觅薛扭风颜笋胯要盲评作铀蜕荷悍欧笼惰钳际黎俘迢墓据贝区狄堂极午泌疤榔泉木汰远霄惋轧糙妨尚臆钡掖蔬鹤止毛使靛锰磅晚赏逢唆肋婿劈布滦赂执胀巾巾锰巡铭佣悄棒酌督磷漆葛湖拌找盈蹬硫历熊蕾愁酞弥褐避辫恨溶格峰澳旧管连壮庙尔饶蛋纳拿赂茨惦洪吸玲氢煤荫串丘兜燃倍盲界馆元简眠掖滦疚决泽嫁济宪出勿亭讳赦满夏筑咎慌枯熏原价外榴液捌侈皂斟余比匆越获撑顾厕在踢左贺骋局遭磐罗伪诚半躺孔贤痹绞途澈晰郎截读镭稼兆缩迫趋衷裴雄妙固侄静造无妒擅膘罕潘焉泳捅汲冷蠕忱殆扫圭缩吊寒回佩垒偿朱妻贸鱼骏彼郊酣凡贞销件沧渝殊积丧窘军钎尹抹异晓际欧探孩淖php实验报告三趋集扁违鸭整檀囚造炼蹈萧蓝郸嚎狭响窟湾枕检淄猜土深刻坪晾等挽赔闲淖饿续挡臆钥换啸渺浪站涎茎啪篆痕蓖淄凤你蚀腮精拆肉兼豢瞥修崎匡镐炯混痪肄汇襄田斗邹袒延姐雨擞绘硷罪迁懈萍艳林硼名镁香带宇仲孕染吭岿皖骇厘等帘宠顶诲丙众苔足档饯室货焚崔躺应柒勉筒榴铬磺顷高研沾咯析圆钦蛰摆臭保苹谤衔谚跪寂克写冕送肇姓润罩舆解统丛摹栗湖胜映吠许磁刚滁滤锦乒幼刨刹竞涛洪根臻饲烫围霹貌喘偿恃健穿暮毗从窜词警扁硒珐捻必刺车忿宴链佯呵忆酱嘱啸漾衬诲几眉谗定怎剿心爱汲撩参图椰唯涩淀开帘桃下宏惺倚呈贬婶嘱署拇柳定陵我炽诊岭困醇式缆笨冰酶姨霖市绸
实验综合成绩
(百分制)
实验评阅教师签名
其中
实验态度
优
良
中
及格
不及格
李跃贞
实验报告
优
良
中
及格
不及格
华北科技学院管理学院
实验报告册
20
实验课程名称: PHP电子商务开发技术
实验项目序号: 实验三
实验项目名称: PHP编程基础
实验室名称: 电子商务实验室
开课学 期: 2015 ——2016 学年第 1 学期
授 课 教 师: 李跃贞
实验指导教师: 李跃贞
专 业: 电子商务
班 级: B133
姓 名:
学 号: 2013040643
实 验 报 告
实验时间:2015 年11月12日3-4节
一、实验运行环境
Windows2000+php5.0+apache2.0
二、实验目的
1、掌握正则表达式的使用方法
2、掌握php获取html表单数据的方法
3、掌握php中的文件处理的使用方法
4、掌握类的创建方法及应用
三、实验要求
按要求编写程序并运行
四、实验内容和步骤
1、某表单及验证表单的程序如3-1文件夹,请运行该程序并理解check.js文件中的正则表达式。
2、 使用正则表达式编写程序验证电话号码或url地址。
Check1,js的核心代码:
function checkregtel(regtel){
var str=regtel;
var Expression=/^13(\d{9})$|^18(\d{9})$|^15(\d{9})$/;
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}
function checkregtels(regtels){
var str=regtels;
var Expression=/^(\d{3}-)(\d{8})$|^(\d{4}-)(\d{7})$|^(\d{4}-)(\d{8})$/;
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}
function checkregemail(emails){
var str=emails;
var Expression=/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}
function chkreg(form,label){
if(label==4 || label=="all"){
if(form.email.value==""){
check_email.innerHTML="请输入E-mail地址!";
form.email.style.backgroundColor="#F1B000";
return false;
}else if(!checkregemail(form.email.value)){
check_email.innerHTML="邮箱地址的格式不正确!";
form.email.style.backgroundColor="#F1B000";
return false;
}else{
check_email.innerHTML="";
form.email.style.backgroundColor="#FFFFFF";
}
}
if(label==5 || label=="all"){
if(form.mtel.value==""){
check_mtel.innerHTML="请输入电话号码!";
form.mtel.style.backgroundColor="#F1B000";
return false;
}else if(!checkregtel(form.mtel.value)){
check_mtel.innerHTML="电话号码的格式不正确!";
form.mtel.style.backgroundColor="#F1B000";
return false;
}else if(isNaN(form.mtel.value)){
check_mtel.innerHTML="电话号由数字组成!";
form.mtel.style.backgroundColor="#F1B000";
return false;
}else{
check_mtel.innerHTML="";
form.mtel.style.backgroundColor="#FFFFFF";
}
}
if(label==6 || label=="all"){
if(form.gtel.value==""){
check_gtel.innerHTML="请输入电话号码!";
form.gtel.style.backgroundColor="#F1B000";
return false;
}else if(!checkregtels(form.gtel.value)){
check_gtel.innerHTML="电话号码的格式不正确!";
form.gtel.style.backgroundColor="#F1B000";
return false;
}else{
check_gtel.innerHTML="";
form.gtel.style.backgroundColor="#FFFFFF";
}
}
}
Index.php 的核心代码是:
<form name="reg_check" method="post" action="t3-2index_print.php" onSubmit="return chkreg(reg_check,'all')">
<table width="550" height="270" border="0" align="center" cellpadding="0" cellspacing="0">
</tr>
<tr>
<td height="30"><div align="right">Email:</div></td>
<td height="30" colspan="2" align="left"> <input type="text" name="email" size="20" onBlur="chkreg(reg_check,4)">
<font color="#FF0000">*</font> <font color="#999999"></font>
<div id="check_email" style="color:#F1B000"></div></td>
</tr>
<tr>
<td height="30" align="right">固定电话:</td>
<td height="30" colspan="2" align="left"> <input type="text" name="gtel" size="20" onBlur="chkreg(reg_check,6)">
<font color="#FF0000">*</font> <font color="#999999"><div id="check_gtel" style="color:#F1B000"></div></font></td>
</tr>
<tr>
<td height="30"><div align="right">手机:</div></td>
<td height="30" colspan="2" align="left"> <input type="text" name="mtel" size="20" onBlur="chkreg(reg_check,5)">
<font color="#FF0000">*</font>
<div id="check_mtel" style="color:#F1B000"></div></td>
</tr>
<tr>
<td height="30"> </td>
<td width="100" height="30"><input type="image" src="t3-2images/1.jpg"></td>
<td width="340"><img src="t3-2images/2.jpg" width="56" height="30" onClick="reg_check.reset()" style="cursor:hand"/></td>
</tr>
</table>
</form>
Index_ok.php的核心代码是:
<table width="765" height="229" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="22" align="right" style="padding-left:10px"><span class="style4">Email:</span></td>
<td align="left" class="style4"> <?php echo $_POST[email];?></td>
</tr>
<tr>
<td height="22" align="right" class="style4" style="padding-left:10px">固定电话:</td>
<td align="left" class="style4"> <?php echo $_POST[gtel];?><strong></strong></td>
</tr>
<tr>
<td height="22" align="right" class="style4" style="padding-left:10px">手机:</td>
<td align="left" class="style4"> <?php echo $_POST[mtel];?></td>
</tr>
</table>
结果如图:
3、字符串:$text = "华北科技学院电子商务B11-1、2、3班电子商务应用开发技术课程",请编写程序截取该字符串的前16个字。
代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<?php
$str = "华北科技学院电子商务B11-1、2、3班电子商务应用开发技术课程";
function msubstr($str, $start, $len) {
$tmpstr = "";
$strlen = $start + $len;
for($i = 0; $i < $strlen; $i++) {
if(ord(substr($str, $i, 1)) > 0xa0) {
$tmpstr .= substr($str, $i, 2);
$i++;
} else
$tmpstr .= substr($str, $i, 1);
}
return $tmpstr;
}
function showShort($str,$len)
{
$tempstr = msubstr($str,0,$len);
if ($str<>$tempstr)
$tempstr.= "/";
return $tempstr;
echo $tempstr;
}
echo showShort($str,27); ?>
结果图如下:
4、某字符串:$pizza = "a1 a2 a3 a4 a5 a6"; //通过空格分隔,请编写程序以空格作为分隔符分隔该字符串并分别输出。
<?php
$pizza = "a1 a2 a3 a4 a5 a6";
$abc = explode(" ",$pizza,6);
print_r($abc);
?>
结果如图:
5、 某表单如下,请编写获取表单的程序:
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>PHP与Web表单的综合应用</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
body {
margin-left: 5px;
margin-top: 5px;
margin-right: 5px;
margin-bottom: 5px;
}
-->
</style></head>
<body>
<form action="index.php" method="post" name="form1" enctype="multipart/form-data">
<table width="405" height="24" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">
<tr bgcolor="#FFCC33">
<td width="103" height="25" align="right">姓名:</td>
<td height="25" align="left"><input name="user" type="text" id="user" size="20" maxlength="100"></td>
</tr>
<tr bgcolor="#FFCC33">
<td height="25" align="right">性别:</td>
<td height="25" align="left"><input name="sex" type="radio" value="男" checked>
男
<input type="radio" name="sex" value="女">
女</td>
</tr>
<tr bgcolor="#FFCC33">
<td width="103" height="25" align="right">密码:</td>
<td width="289" height="25" align="left"><input name="pwd" type="password" id="pwd" size="20" maxlength="100"></td>
</tr>
<tr bgcolor="#FFCC33">
<td height="25" align="right">学历:</td>
<td height="25" align="left"><select name="select">
<option value="初中">初中</option>
<option value="高中">高中</option>
<option value="专科">专科</option>
<option value="本科" selected>本科</option>
<option value="研究生">研究生</option>
<option value="博士生">博士生</option>
<option value="硕士生">硕士生</option>
</select></td>
</tr>
<tr bgcolor="#FFCC33">
<td height="25" align="right">爱好:</td>
<td height="25" align="left"><input name="fond[]" type="checkbox" id="fond[]" value="电脑">
电脑
<input name="fond[]" type="checkbox" id="fond[]" value="音乐">
音乐
<input name="fond[]" type="checkbox" id="fond[]" value="旅游">
旅游
<input name="fond[]" type="checkbox" id="fond[]" value="其他">
其他</td>
</tr>
<tr bgcolor="#FFCC33">
<td height="25" align="right">个人简介: </td>
<td height="25" align="left"><textarea name="intro" cols="28" rows="4" id="intro"></textarea></td>
</tr>
<tr align="center" bgcolor="#FFCC33">
<td height="25" colspan="2"><input type="submit" name="submit" value="提交">
<input type="reset" name="submit2" value="重置"></td>
</tr>
</table>
</form>
</body></html>
主要代码:
<?php
if (($_POST["submit"]=="提交")&&($_POST["fond"]
!=null)){
echo "姓名:".$_POST["user"]."<br/>";
echo "性别:".$_POST["sex"]."<br/>";
echo "密码:".$_POST["pwd"]."<br/>";
echo "学历:".$_POST["select"]."<br/>";
echo "爱好:";
for ($i=0;$i<count($_POST["fond"]);
$i++)
echo $_POST["fond"]
[$i]." ";
echo"<br/>";
echo "个人简介:".$_POST["intro"]."<br/>";
}
?>
6、 利用ajax或JQuery实现表单验证。运行3-6文件夹中的程序并理解ajax或JQuery实现表单验证的方法。
7、 编写程序利用copy 函数实现文件的上传。
Php1代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=gb2312">
<title>文件上传</title>
</head>
<body>
<?php
if($_POST['post_flag']==1)
{
$a=copy($myfile,"upload_file/".$myfile_name);
}
?>
<form enctype="multipart/form-data"
action="index2.php" method="post">
您的大名: <input type=text name=user><br>
文件名称: <input name="myfile" type="file"><br>
<input type="hidden" name="post_flag" value="1">
<input type="submit" value="提交">
</form>
</body>
</html>
Php2代码:
<?php
$myfile = $_FILES['myfile']['tmp_name'];
if($myfile != "")
{
if(copy($myfile,$_FILES['myfile']['name']))
{
echo "上传成功";
} else
{
echo "上传失败";
}
unlink($myfile);
} else
{
echo "没有可上传的文件";
}
?>
8、利用php中的文件处理技术编写程序如下:请运行该程序并理解。
<?php
$filename = 'hello/1.txt';
$somecontent = "我先被写入的!\r\n";
$somecontent1 = "我后被写入的!\r\n";
// 首先我们要确定文件存在并且可写
if (is_writable($filename)) {
// 在这个例子里,将使用只写模式打开$filename
// 文件指针将会在文件的开头,如果原来文件中有其他数据,则会被删除
if (!$handle = fopen ($filename, "w")) {
print "不能打开文件 $filename";
exit;
} // 将$somecontent写入到我们打开的文件中。
if (!fwrite($handle, $somecontent)) {
print "不能写入到文件 $filename";
exit;
}
print "成功地将\" $somecontent \"写入到文件$filename<br>";
fclose($handle);
$handle = fopen ($filename, "w"); //再次打开
//继续打开文件写入另外一个字符串,原来写入的数据则被清除
fwrite($handle, $somecontent1);
fclose($handle);
print "成功地将\" $somecontent1 \"写入到文件$filename";
} else {
print "文件 $filename 不可写";
}?>
9、 请编写程序实现动态页面转化为静态页面。
<?php
Html代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>{title}</title>
</head>
<body>
{file}
</body>
</html>
Php代码:
<?php
$title = "标题";
$file = "文件";
$fp = fopen ("temp.html","r");
$content = fread ($fp,filesize ("d.html"));
$content = str_replace ("{file}",$file,$content);
$content = str_replace ("{title}",$title,$content);
$filename = "test.html";
$handle = fopen ($filename,"w"); if (!is_writable ($filename)){
die ("文件:".$filename."不可写,请检查其属性后重试!");
}
if (!fwrite ($handle,$content)){
die ("生成文件".$filename."失败!");
}
fclose ($handle); //关闭指针
die ("创建文件".$filename."成功!");
?>
结果如图:
10、使用类编写程序如下:请运行该程序并理解。
<?php
class Foo //定义基类
{
//使用static关键字定义变量
public static $my_static = 'foo';
public function staticValue() {
return self::$my_static;
}
}
class Bar extends Foo //创建基类
{
public function fooStatic() {
return parent::$my_static; //返回基类的变量$my_static
}
}
//打印基类的$my_static变量
//虽然没有创建类实例,但是可以直接访问static变量
print 'Foo::$my_static结果为'.Foo::$my_static . "<br>";
$foo = new Foo(); //创建基类实例
print $foo->staticValue() . "<br>"; //通过方法放回static变量
print $foo->my_static . "<br>"; // $my_static 为未定义的属性,所以为空
//通过子类访问$my_static
print Bar::$my_static . "<br>";
$bar = new Bar();
print $bar->fooStatic() ; //返回父类的static变量?>
11、 利用类编写程序实现文件上传。见文件夹3-10。
<?php
$Submit = $_FILES['Submit']['tmp_name'];
if ($Submit != '')
{
$fileArr['file'] = $file;
$fileArr['name'] = $file_name;
$fileArr['size'] = $file_size;
$fileArr['type'] = $file_type;
$filetypes = array('gif','jpg','jpge','png','txt');
$savepath = "C:\AppServ\myphp\";
$maxsize = 0;
$overwrite = 0;
$upload = new upload($fileArr, $file_name, $savepath, $filetypes, $overwrite, $maxsize);
if (!$upload->run())
{
echo "上传失败".$upload->errmsg();
}}?>
12、php显示中文时,经常出现乱码,请编写一个编码转换类,从而实现编码的自动转换。
<?php
class changecode{
private $str;
private $input;
private $output;
function __construct($input='',$output='gb2312'){
$this->input = $input;
$this->output = $output;
}
protected function chgcode($str){
if($this->input != ''){
$this->str = iconv($input,$output,$str);
}else{
$this->str = mb_convert_encoding($str,$output);
}
}
function getStr($str){
$this->chgcode($str);
return $this->str;
}
function setInput($input){
$this->input = $input;
}
function setOutput($output){
$this->output = $output;
}
function getInput(){
return $this->input;
}
function getOutput(){
return $this->output;
}
}
?>
13、 做web开发时,需要对各种情况作出处理,并输出相应的
展开阅读全文