php文件上传代码详细

 更新时间:2016年11月25日 15:52  点击:1337

注明:文件上传能否成功要看你的写文件目录是否可用,表单与post获取的名是不是相同,以及php教程.ini中上传文件大小是不是在你可写范围之内。

<html>
<body>

<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file">filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="submit" />
</form>

</body>
</html>

php代码。

<?php


$store_dir='d:upload'; //文件上传后存储在服务器的路径
$uploadfile="$store_dir".basename($_files['sendfile']['name']); //上传文件的原始名字
$uploadfile_tmp=$_files['sendfile']['name_tmp']; //上传文件的临时名字
$err_msg=$_files['sendfile']['error']; //上传文件时产生的错误信息

if ($err_msg){
print "错误代码: $err_msg<br/>";
}
if (!is_writeable($store_dir)){ //检查上传的文件是否可写
print "$store_dir 目录不可写n";
exit;
}
else{
print "$store_dir 目录可写n";
}

if(isset($_files['sendfile'])) {
if(is_uploaded_file($uploadfile_tmp)){ //检查上传的文件是否存在,如果存在则对其进行下一步操作
print "文件检验成功n";
}
else {
print "文件检验失败,可能遭受文件上传攻击!";
exit;
}
if (move_uploaded_file($uploadfile_tmp,$uploadfile)) { //对上传的合法文件,将其重命名并移动到服务器的上传文件夹中
print "文件上传成功n";
}
else{
print "移动文件失败,可能遭受文件上传攻击!";
exit;
}
print "文件上载成功!<br/>";
}
else{
print "文件上载失败!<br/>";
}
?>

$iishost = new com("npoint_m.host");   '加载组件
$r = $iishost->iisstate(10, 1, "", "", "", "");  '运行组件功能,返回参数
echo $r;  '返回参数
切换net版本为
netstate(ifid, dirname, netver, iissapp, bkwebip, bkpass, webfiletype, bkport)
  参数说明:  ifid as ingeter : iis网站标识符
dirname as string : 目录名称   如: bbs 或 abcabdabe... 依此类推   dirname 为空 默认为站点
netver as string : .net版本号
iissapp as string : 切换的应用程序池名称   可留空(限独立进程池)
.net版本号(如: "v1.1.4322" 版本号在c:windowsmicrosoft.netframework里面.net文件夹名称)
注: 切换.net版本,除了独立进程池 其它的必须切换应用程序池 因为.net1.1 与 .net2.0... 不能共存
bkwebip as string : 被控访问网址/ip
bkpass as string : 被控访问密码
webfiletype as string : 被控站点文件格式 如: asp教程
bkport as integer : 被控站点端口 如: 999
* 成功返回 1  否则返回错误提示

下面看一个php教程 利用com 连接adodb.connection数据库教程*/

    //access执行类
    class db{
        var $conn;
        //var $rs_n;//记录当前rs的数量.
        //建立链接
        function create()
        {
            $this->conn = @new com("adodb.connection");  //这是13行
            $str="driver=microsoft access driver (*.mdb);dbq=".realpath("./dbdata/yuan555.mdb ");
            $$this->conn->open($str);
            //return $this->$conn ;
        }

        //建立方法
        function query($sql)
        {
            $_rs = @new com("adodb.recordset");
            $_rs->open($sql,$this->$conn,1,1);
            return $_rs;
        }
    }

    //实例化类
    $db=new db();
    $db->create();
    //--------------------------------
    $rs=$db->query("select * from product");   
    $rs->close();
    $rs = null;  //但close完了,一定要 null 的
    $db->close();

1,拼接字符串
拼接字符串是最常用到的字符串操作之一,在php教程中支持三种方式对字符串进行拼接操作,分别是圆点.分隔符{}操作,还有圆点等号.=来进行操作,圆点等号可以把一个比较长的字符串分解为几行进行定义,这样做是比较有好处的.


2,替换字符串
在php这门语言中,提供了一个名字叫做substr_replace()的函数,该函数的作用可以快速的完成扫描和编辑文本内容较多的字符串替换功能.他的语法格式:
 mixed substr_replace(mixed $string,string $replacement, int $start[,int $length])
 对于上面的语法格式的说明:
 string 是要检查或者将要被替换的字符串
 replacement 指定要用来插入或者替换的字符串
 start 指定在字符串的何处进行开始替换,这个参数可以取三种类型的值(正数:从字符串开头的第start个偏移量开始替换,负数,从字符串结尾处的第start个偏移量开始替换,0:从字符串中的第一个字符开始替换)
 length指定要替换多少个字符,这个参数也可以取三种类型的值(正数:被替换的字符串的长度,负数:从字符串的结尾开始被替换的字符串的长度,0:是插入操作,而不是替换操作);


3,计算字符串


1)计算字符串的长度
 在php中,strlen()函数用来计算字符串的长度并且返回该字符串的长度信息.该语法的格式如下:int strlen(string $string)格式里面的string就是用来指定要计算长度的字符串.


2)计算字符串的数目
 在php中,substr_count()函数,可以用来非常方便而且准确的确定一个指定的子字符串在所提供的字符串中有多少个,substr_count()函数的语法格式如下:int substr_count(string $haystack,string $needle[,int $offset=0[,int $length]])在上面的语法中设计的参数的说明如下:haystack指定要检查的字符串,needle用来指定要插入的字符串,offset用来指定在字符串中何处开始搜索,默认值为0,length用来指定搜索的长度.
 在php中,str_word_count()函数,可以用来非常方便而且准确的确定一个某一个单词在所提供的字符串中有多少个,str_word_count()函数的语法格式如下:mixed str_word_count(string $string[,int $format=0[,string $charlist]])在上面的语法中涉及到的参数的说明如下:string用来指定要进行检查的字符串,format用来指定str_word_count()函数的返回值,这个参数的返回值可以返回三个值,分别是0,1,2.其中返回0的意思是默认值,返回找到的单词的数目,如果返回值为1的话,那么str_word_count()返回的就是一个数组,其中的键名是从0开始的连续整数,值是实际的单词.如果format的值取3的时候,那么str_word_count()函数的返回值就是一个数组,其中,数组的键名是单词在字符串中的位置,值是实际的单词.


4,查找字符串


字符串的查找可以分为很多种,比如说查找子字符串,查找某个字符串的位置等等,php分别为每个字符串查找操作提供了相应的函数.


1)查找子字符串
 在php语言中,strstr()函数可以用来查找子字符串,该函数返回的结果为子字符串第一次出现的所有的内容,strstr()函数的格式如下:string strstr(string $haystack,mixed $needle)在上面的语法中,涉及到的参数的说明如下haystack:指定被搜索的字符串,needle指定所要搜索的字符串,如果该参数是数字的话,则会匹配器该数字ascii值的字符.在实际的应用当中,会出现要忽略字母大小写的情况,这个时候,可以使用php提供的一个大小写不敏感的查找函数--stristr()函数,该函数的使用方法和strstr()函数的使用是一样的.

2)查找字符串的位置
 strpos()函数的功能和strstr()函数是类似的,只是返回的不是字符串,而是一个字符串在另外一个字符串当中第一次出现的位置,strpos()的语法格式如下:int strpos(string $haystack,mixed $needle[,int $offset =0])在上面的语法中涉及到的参数的说明如下:haystack是要被搜索的字符串,needle指定要进行查找的字符串,offset是指定开始搜索的位置,默认值为0.
 strpos()函数是一个对大小写敏感的查找函数,但是在实际的应用过程当中往往会出现需要忽略大小写的,这个时候可以使用php提供的一个对大小写不是很敏感的查找函数stripos(),该函数的使用方法和strpos()是一样的.


5,比较字符串
在php语言中,比较两个字符串的大小可以通过两种方式来实现:使用"=="操作符比较和使用函数进行比较


1)使用"=="操作符比较两个字符串的大小
 在php中比较两个字符串的时候,最容易的方法就是使用双等号操作符(==).

2)使用函数比较字符串的大小
 在php中提供的strcmp()函数可以更加精确的比较两个字符串的大小,语法格式如下int strcmp(string $str1,string $str2)在上述语法中涉及到的参数的说明如下:str1 指定要进行比较的字符串1,str2指定要进行比较的字符串2.这个strcmp谙熟可以确保两个字符串是否完全匹配,并将比较结果以整数的形式返回,这个函数的返回值有以下三种.0:两个字符串是相等的,小于0的时候,第一个字符串是小于后面的字符串的,如果返回值是大于零的,那么就说明,前面的字符串是大于后面的字符串的.
 除了strcmp()函数之外,php还提供了另外一些比较类似的比较函数,比如strncmp()函数可以选择想要比较的字符串的长度(字符个数),其语法格式如下:int strcmp(string $str1,string $str2,int $len)上面的参数说明 str1:指定要比较的第一个字符串,str2:指定要比较的第二个字符串len:指定每个字符串用于比较的字符个数.
 在比较字符串的时候,有的时候需要忽略大小写,就可以使用strcasemp()函数和strncasemp()函数,这两个函数与区分大小写的相应函数的使用方法是完全相同的,strcasecmp()函数和strncasecmp()两个函数的语法格式分别如下:
 int strcasecmp(string $str1,string $str2)
 int strncasecmp(string $str1,string $str2,int $len)


6,复制字符串
如果需要重复n次显示一个字符或者一个字符串的功能,则最简单的实现方法就是调用复制函数,在php中可以使用str_repeat()函数实现字符串的复制,这个函数的语法格式如下:string str_repeat(string $input,int $multiplier)在上述的语法中设计的参数的说明如下input指定要重复的字符串,multiplier指定字符串将被重复的次数.


7,翻转字符串
处理字符串的操作还包括对字符串进行翻转在php语言中,使用strrev()函数可以实现反转字符串的功能,strrev()函数的语法格式为
 string strrev(string $string)
上面的参数string就是用于指定要进行翻转的字符串.


8,切分,合并字符串
把一个字符串按照某种规则切分成多个字符串,或者把多个字符串合并成一个长的字符串,是在处理字符串操作的时候会经常碰到的问题.使用php提供的explode()函数,str_split()函数,implode()函数可以处理类似切分,合并字符串的问题.


1)切分字符串
 explode()函数的功能就是用指定的分隔符把字符串切分成数组,explode()函数的语法格式如下:array explode(string $delimiter,string $string[,int $limit])在上面的语法中涉及到的参数的说明如下:delimiter:指定在哪里分隔字符串,string:指定要进行分割的字符串,limit:指定所返回的数组元素的最大数目,最后的子块将会包含string的剩余部分.
 str_split()函数的作用是能够将一个字符串分割成等长度的多个子字符串.str_split()函数的语法格式如下:array str_split(string $string[,int $split_length=1])上面的语法中的参数说明如下:string:指定要分割的字符串,split_length:指定每个数组元素的长度,默认值为"1".

2)合并字符串
 implode()函数的功能是将数组的元素连接起来成为字符串,implode()函数的语法格式如下:string implode([string $glue],array $pieces)在上述的语法中涉及到的参数的说明如下:glue()指定数组元素之间放置的内容,默认值为""(表示空格字符串)pieces指定要合并为字符串的数组.调用implode()函数可以根据参数所限制的条件获取一个新的字符串,达到合并字符串的目的.
 join()是implode()函数的别名,两个函数的用法是完全一样的,需要强调的是,虽然参数glue是可以选的,但是为了使程序拥有更好的兼容性,推荐使用两个参数.

总结一下字符串的相关操作方法:

<?php教程 
//写cookie
setcookie("user", "wang70937", time()+60);
//session
session_start();

if(isset($_session['views']))
  $_session['views']=$_session['views']+1;

else
  $_session['views']=1;
echo "session: views=". $_session['views']."<br />";
?>

<script >
	function show(){
		alert("asdf");
	}
</script>

<html>
	<title>php测试页面 </title>
	<head><script src="clienthint.js"></script></head>
	<body>
		<?php
			//输出
			echo "<br />"."[******输出******]"."<br />";
			echo "hello world!"."<br />";
			$a = "php";
			$b = "language";
			echo $a." ".$b."<br />";
			
			//数组
			echo "<br />"."[******数组******]"."<br />";
			$arr = array("abcde", "fghijk", "lmnopq");
			foreach($arr as $value)
			{
				echo $value."<br />";
			}
			
			//函数
			echo "<br />"."[******函数******]"."<br />";
			function funa($a, $b){
				echo "函数参数:".$a.", ".$b;
				return "ret_value";
			}
			$ret = funa(123, "param");
			echo "函数返回值:".$ret."<br />";
			
		
			echo "<br />"."[******表单******]"."<br />";
		?>
			<form action="form.php" method="post">
			name: <input type="text" name="name" />
			age: <input type="text" name="age" />
			<input type="submit" />
			</form>
			
		<?php	echo "<br />";
			
			echo "<br />"."[******上传文件******]"."<br />";
		?>	
			<form action="upload_file.php" method="post"
			enctype="multipart/form-data">
			<label for="file">filename:</label>
			<input type="file" name="file" id="file" /> 
			<br />
			<input type="submit" name="submit" value="submit" />
			</form>
		
		<?php	
			//session
			echo "<br />"."[******session******]"."<br />";
			
			//retrieve session data
			echo "pageviews=". $_session['views'];
		?>
			<br />	
			
			<!-- //删除session -->
		<?php
			//echo "<br />"."[******删除session******]"."<br />";
			// session_destroy(); 
		?>

		<?php
			//发送邮件
			echo "<br />"."[******发送邮件******]"."<br />";
			
			$to = "wang70937@163.com";
			$subject = "test mail";
			$message = "hello! this is a simple email message.";
			$from = "wang70937@gmail.com";
			$headers = "from: $from";
			mail($to,$subject,$message,$headers);
			echo "mail sent."."<br />";
		?>

		<?php
			//mysql教程数据库教程
			echo "<br />"."[******mysql数据库******]"."<br />";
			$con = mysql_connect("localhost","root","1");
			if (!$con)
  		{
  			die('could not connect: ' . mysql_error());
  		}
			else
 				echo "连接mysql成功!"."<br />";
			mysql_select_db("bbs", $con);
			mysql_query("set names gbk");
			//show tables
			$tablecount = mysql_query("show tables");
			while($table = mysql_fetch_array($tablecount))
			{
				//表名
				$tablename = $table[0];
				$sql = "select * from ".$tablename;
				$result = mysql_query($sql);
				
				echo "<br />表:[".$tablename."]<br />";
				//表的字段个数	
				$filedcount = mysql_num_fields($result);
				//记录条数
				$recordcount = mysql_num_rows($result);
				
				echo "sql[".$sql."] 记录条数:".$recordcount."<br />";
				
				if($filedcount > 0 )
				{
					echo "<table border='1'>;
					<tr>
					<th>记录序号</th>";
					for($index=0; $index<$filedcount; $index++)
					{
						//字段名
						$filedname = mysql_fetch_field($result);
						echo "<th>$filedname->name</th>";
					}
					echo "</tr>";
					$no = 0;
					while($row = mysql_fetch_array($result))
  				{
     				$no = $no + 1;
     				echo "<tr>";
     				echo "<td>" . $no . "</td>";
     				for($index=0; $index<$filedcount; $index++)
     				{
  						echo "<td>" . $row[$index] . "</td>";
  					}
  					echo "</tr>";
  				}
					echo "</table>";
				
				}
			}
			
			


			mysql_close($con);
		?>

			<?php
			//xml解析
			echo "<br />"."********xml解析********"."<br />";
			
			/*$xmldoc = new domdocument();
			$xmldoc->load("note.xml");

			$x = $xmldoc->documentelement;
			foreach ($x->childnodes as $item)
  		{
 				print $item->nodename . " = " . $item->nodevalue . "<br />";
  		}*/
  		$xml = simplexml_load_file("note.xml");

			echo $xml->getname() . "<br />";

			foreach($xml->children() as $child)
  		{
  			echo $child->getname() . ": " . $child . "<br />";
  		}
			?>
			
			<?php
			//ajax
			echo "<br />"."*******ajax*******"."<br />";
			?>
			<form> 
			first name:
			<input type="text" id="txt1"
			//onkeyup="showhint(this.value)"
			onkeyup="show()">
			</form>

			<p>suggestions: <span id="txthint"></span></p>
			

	</body>
	
</html>

标记行:用<form>表示.这个标记行必须包含action属性和method属性,action属性是给窗体提供另一个程序的url或路径(可以是当前文件),使该程序可以从窗体中提取并带走数据.method属性(get或post)则告诉窗体如何带走数据(post首选,因为它比较安全,因为它不在url中传送信息).
窗体的内容,包括输入字段:输入字段是用户输入信息的区域,就是<input>表单,<textarea>这些东西.输入的字段必须包含type和name属性,不过其他的属性也可以有,但不是必须的.输入字段的类型最常见的有:text,check box,radio,select,password等.
动作按钮或图像,一般用于提交/清理信息.用户定义的按钮在技术上也认为是输入类型:包括:submit,reset,image(经常作为图片按钮).
闭标记行:</form>


应用

第一种:通过url传送变量

例如:http://www.xxx.com/news/list.php教程?id=123&lang=en

id=123就是新闻的参数,而lang=en就表示语言是英文,那么我们可以通过php的$_get来取得id和lang的值

比如说要检索id的值 只需要$_get['id'] 就能取到id的值 同理 lang也一样

通过url传值的缺点:

1.每个人都能看到变量的值,所以用这种方式传输敏感数据并不是安全的.

2.用户可以随意修改url中的值,并可以尝试不同的组合,使打开网站后显示出我们不希望显示出来的信息.

3.用户还可能使用保存已久的url和内嵌其中的旧变量提取不正确的或陈旧信息.

第二种:通过会话中传送变量

如果说信息不那么敏感,或者信息是静态的,完全可以使用url传值,但如果用户要传送用户名,密码等信息或者传送地址和电话号码等个人信息,那最好要在传送的时候保持私密性.例如可以使用cookie 或者session.(个人想法,因为是重头重新学习~先说说session).

会话是仅存在浏览器关闭前的一组临时变量.会话信息包括会话id,被授权的个人是否登陆到站点上等.这些信息都是为php临时存储的以便在需要时使用.

如果强制用户使用cookie传送变量, 可以在php.ini里边设置   session.use_only_cookies=1

另外,在使用会话前应确保php.ini文件已经做好修改,即为:session.save_path显示有效路径.

接着只需要调用session_start()函数(写在本页的所有的输出语句前),在php中开始一个会话.

例如:文件1   test_1.php 
<?php
session_start();
$_session['username']='van';
$_session['authuser']=1;
?>
<html>
<head>
<title>test1</title>
</head>
<body>
<?php
$myfavmovie=urlencode('life of brian');
echo "<a href="test2.php?favmovie=$myfavmovie">";
echo "click here to see information about my favorite movie!";
echo "</a>";
?></body>
</html>

test2.php


<?php
session_start();
if($_session['authuser']!=1)
{
    echo "sorry,but you don't have permission to view this page!";
    exit();
}
?>
<html>
<head>
<title>
my movie site -<?php echo $_get['favmovie'];?></title>
<body>
<?php
echo 'welcome to our site,';
echo $_session['username'];
echo '!<br/>';
?>
</html>

第三种:用cookie传送变量

使用cookie存在潜在的安全风险,黑客可以通过cookie来获取你在这个web上所留下来的信息,加以利用,所以最好不要把私人信息存储在计算机上

由于访客可能选择关闭cookie功能,或者选择删除计算机中的cookie,所以从开发的角度来看,使用cookie信息并不是最佳的方法

置并发送 cookie:

<?php
$value = "my cookie value";

// 发送一个简单的 cookie
setcookie("testcookie",$value);
?>

<html>
<body>

...
...<?php
$value = "my cookie value";

// 发送一个 24 小时候过期的 cookie
setcookie("testcookie",$value, time()+3600*24);
?>

<html>
<body>

...
...

[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • Jupyter Notebook读取csv文件出现的问题及解决

    这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06
  • 不打开网页直接查看网站的源代码

      有一种方法,可以不打开网站而直接查看到这个网站的源代码..   这样可以有效地防止误入恶意网站...   在浏览器地址栏输入:   view-source:http://...2016-09-20
  • php 调用goolge地图代码

    <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
  • Photoshop打开PSD文件空白怎么解决

    有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
  • 解决python 使用openpyxl读写大文件的坑

    这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
  • C#实现HTTP下载文件的方法

    这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SpringBoot实现excel文件生成和下载

    这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • JS基于Mootools实现的个性菜单效果代码

    本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
  • JS+CSS实现分类动态选择及移动功能效果代码

    本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
  • JS实现自定义简单网页软键盘效果代码

    本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
  • php 取除连续空格与换行代码

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • php无刷新利用iframe实现页面无刷新上传文件(1/2)

    利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25
  • Php文件上传类class.upload.php用法示例

    本文章来人大家介绍一个php文件上传类的使用方法,期望此实例对各位php入门者会有不小帮助哦。 简介 Class.upload.php是用于管理上传文件的php文件上传类, 它可以帮...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • php批量替换内容或指定目录下所有文件内容

    要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
  • PHP实现清除wordpress里恶意代码

    公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
  • PHP文件上传一些小收获

    又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
  • jQuery实现简单的文件上传进度条效果

    本文实例讲述了jQuery实现文件上传进度条效果的代码。分享给大家供大家参考。具体如下: 运行效果截图如下:具体代码如下:<!DOCTYPE html><html><head><meta charset="utf-8"><title>upload</title><link rel="stylesheet...2015-11-24