在寒假简单制作php网站时,需要实现在线浏览pdf和上传pdf的简单功能,下面就简单介绍下该功能。实现效果如下图所示:
1.当用户登录后,点击“上传课件”超链接可以实现隐藏和显示上传table的功能;
2.当用户选择上传的课件后,pdf上传至本地网页文件夹下,同时插入数据库;
3.当点击相关pdf教学课件后,可以实现在线浏览功能。
首先介绍如何通过javascript实现点击超链接实现隐藏和显示table或div的效果,代码如下所示:
其中核心代码是通过<script language="javascript">..</script>定义javascript函数,设置style.display属性none隐藏、block显示;同时在超链接中调用该函数实现如上图所示的效果。代码如下:
<script language="javascript">
function change(el) {
whichel =document.getelementbyid(el)
if (whichel.style.display == 'none') { //block为显示,none为隐藏
whichel.style.display =
'block';
} else {
whichel.style.display
= 'none';
}
return;
}
</script>
<a href="#" class="one"onclick=change("operate")>
上传课件 </a>
<tableid="operate" align=right
border=0style="display: none">//初始隐藏
同时在超链接中我通过设置style属性,当点击、移动到超链接上显示的颜色不同。在超链接中通过<a class="one">即可实现。代码如下:
<style type="text/css">
/* 这个链接改变颜色 */
a.one:link {color: #0000ff}
a.one:visited {color: #0000ff}
a.one:hover {color: #ffcc00}
</style>
<a href="#" class="one" onclick=change("operate")>
显示效果如下图所示:
显示pdf是通过超链接跳转的,这也是我前面php值传递中讲述过的方法。其核心代码main_right3-3.php如下:
其中里面嵌套的php代码是连接数据库里面的数据,其中数据库是通过新浪sae搭建的,pdf存储的是url,你既可以连接本地的地址也可连接云盘上的地址。如下图所示:
其中实例化类new httppostinf在httppost.php中,主要是后台通信处理。代码如下:
通过下面代码即可实现跳转到main_right3-3-content.php显示相应php,而传递的id参数整数你点击的pdf超链接对应的数据库课件url地址。
<a href="main_right3-3-content.php?id=<?php echo $dj[$i]['cp_pdfurl'] ?>"
class="one" target="rightframe">
下面是main_right3-3-content.php代码显示pdf,这是通过html5实现的。
下图是显示我们的云盘中pdf的例子:
你通过上面代码可以显示如下图所示的在线pdf效果。
同样本地的网址为src="http://localhost:8080/coursestudy/pdf/icoot.pdf"即可显示,其中文件夹为安装的apache路径“f:\\xampp\htdocs\coursestudy\pdf”,其中coursestudy是我这个项目的文件名。
php上传pdf代码如下,通过form中定义属性enctype="multipart/form-data",同时上传到action="upload.php"该路径下进行处理,提交方法采用post方法。而选择文件的是input定义type="file"即可。main_right3-3.php代码上传部分如下:
而上传文件upload.php代码如下,主要是通过<input type="file" name="myfile"中myfile对应上传的文件pdf属性,并判断是否是pdf文件。
bool move_uploaded_file ( string filename, string destination) 上传文件名filename到指定路径destination
代码中我是上传到项目中pdf文件夹下,同时以当前时间命名;后面是插入数据库课件表的操作。
$_files['myfile']['name']是指被上传文件的名称
$_files['myfile']['type']是指被上传文件的类型,此时为"application/pdf"
$_files['myfile']['size']是指被上传文件的大小,单位为字节(b)
$_files['myfile']['tmp_name'] 是指被上传文件存在服务器中的临时副本文件名称,文件被移动到指定目录后临文件将被自动消毁。
如下图所示,选择pdf并上传的运行结果,同时文件上传至文件夹为安装的apache路径“f:\\xampp\htdocs\coursestudy\pdf”路径下。
最后希望文章对你有所帮助,因为这些知识都是环环相扣的,所以单独讲述不太易懂,我也是尽我自己的最大努力写这几篇文章,可能文章效果不是很好,也存在着很多不足之处。但请海涵,还是希望你能发现文章中对你有用的知识吧!最后纪念下自己写的第100篇博客,两年时间感谢自己~期待更长