IIS上跑PHP,遭遇上传权限问题

其实这个问题不关IIS以及PHP什么事,是我的权限没设置好。

在使用PHP上传文件时,一直报错,错误信息如下:

PHP Warning: move_uploaded_file(): Unable to move ‘C:\Windows\Temp…

一开始以为是C:\Windows\Temp的权限问题,结果加上IUSR,并给予所有权限后,还是不行。

然后又给uploads文件夹给IUSR账户所有权限,结果还是不行。

最后在uploads文件上给IIS_IUSERS账户加上所有权限后,问题解决。

总结:

问题的主要原因是我没有弄清楚IIS的两个账户分别是什么意思,关于IUSR和IIS_IUSER的区别。

简单查了一下,知道 IUSR is part of IIS_IUSER group

仿站最好的办法是用自己的代码去实现目标网站的效果

仿站最好的办法是用自己的代码去实现目标网站的效果,而不是去分析目标网站是怎么实现的,套用目标网站的代码。  否则会越做越做不下去一开始可能是想偷懒,觉得这样快,但是,这样想就错了,后面就做不下去了。

2024.11.25记:前几天仿了一个站,再次认同自己9年前的这个想法!

基本的PHP上传文件

基本的PHP上传文件

表单:

<form id ="form1" method="POST" enctype="multipart/form-data" >
<input name ="room_logo" type="file"  value="" id ="room_logo" class="input normal"   sucmsg=" " />
</form>

注意:表单上要加 enctype=”multipart/form-data” 

PHP处理代码:

<?php
$method = $_SERVER['REQUEST_METHOD' ];
if ($method == 'POST') { 
    $destination_folder ="../../uploads/"; //上传文件路径
    //是否存在文件
    if ( is_uploaded_file($_FILES ["room_logo"]["tmp_name" ])) {       
        $file = $_FILES["room_logo" ];
        if(!file_exists( $destination_folder )) {
            mkdir ($destination_folder);
        }
        $filename=$file["tmp_name"];
        $pinfo=pathinfo( $file["name" ]);
        $ftype=$pinfo['extension'];
        $destination = $destination_folder.time(). ".".$ftype ;
        if(!move_uploaded_file ($filename, $destination)){
            echo " 移动文件出错 ";
        }              
    }
}

?>

mysql常用语句

mysql常用语句

--日期格式化
DATE_FORMAT(genTime , '%Y-%m-%d' )
--获取当天日期的数据
SELECT * FROM newphone WHERE DATE_FORMAT(postdate , '%Y-%m-%d' )= CURDATE()


--查询mysql数据库中所有表名
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库名'

--查看mysql是否区分表名大小写
show variables where Variable_name like '%lower_case_table_names%'

--修改表名区分大小写的配置:修改MySql的配置文件,在mysqld节下加入下面一行 set-variable=lower_case_table_names=0(0:大小写敏感;1:大小写不敏感)最后重启一下MySql服务即可。 


--修改表名
ALTER TABLE old_table_name RENAME TO new_table_name