草庐IT

EXCLUDED_FILES

全部标签

php - $_FILES 和 cURL 的问题

我在通过cURL发送$_FILES时遇到了一些问题-使用以下代码可以正常传输文件,但是我不可能获得文件的名称和类型,事实上一旦$_FILES到达他们的目的地他们的类型存储为“应用程序/八位字节流”-我做错了什么!?$count=count($_FILES['thefile']['tmp_name']);for($i=0;$i 最佳答案 你应该像这样构建$postargs,$postargs=array();foreach($_FILESas$param=>$file){$postargs[$param]='@'.$file['tmp

PHP 文件上传 : keep both files if same name

在PHP中是否有任何漂亮的解决方案允许我在文件名已经存在的情况下使用自动递增数字扩展文件名?我不想在一些不可读的东西中重命名上传的文件。所以我认为这样会很好:(允许所有图像文件。)Cover.pngCover(1).pngCover(2).png… 最佳答案 首先,让我们分开扩展名和文件名:$file=pathinfo();为了便于文件检查和追加,将文件名保存到新变量中:$filename=$file['filename'];然后,让我们检查文件是否已经存在并保存新的文件名,直到它不存在为止:$i=1;while(file_exis

php - 如何避免或修复 PHP 警告 : Too many open files

我在Fedora上运行PHP5.2,在我的循环迭代大约1000次后,我不断收到此警告,这意味着程序已停止工作,需要重新启动。我可以将它设置为在1000次迭代后退出,并在不久之后通过cron重新启动,但这感觉就像懦夫的出路。循环如下;我应该补充一点,get_load()预制了一个file_get_contents()调用。while($row=select_row($sql)){while(($load=get_load())>10){echo"Goingtosleep(load:".$load.")\n";sleep(60*3);}$id=$row['id'];foreach($siz

PHP:$_FILES 中 'type' 索引的来源是什么?

为了验证文件上传中允许的MIME类型,我通常依赖fileinfo扩展名,但由于该扩展名或magicdatabase尽管使用与$_FILES上的每个文件关联的类型index并不总是可用超全局。所以我的问题是,这个索引从何而来?我怀疑它要么来自浏览器(如果是这种情况,它可以被伪造),或者最有可能来自网络服务器(或PHP)-如果是这种情况:它只是mime类型映射的扩展还是是真的吗? 最佳答案 它是浏览器通过解释文件的扩展名提供的文件的MIME类型。所以你是对的,这可以由客户伪造。 关于PHP:

php - 瑞尔 + PHP : writing files outside/var/www/html?

我正在尝试打开一个文件进行读/写。我一直在Ubuntu上开发,没有遇到任何问题。现在是部署到RHEL服务器的时候了,我发现似乎对要写入的文件的位置有某种限制。在RHEL上,我无法打开文件,除非它位于/var/www/html下。我不知道如何允许其他位置。出于磁盘空间管理原因,我需要操作不同卷上的文件。以下是无论如何在Ubuntu上都可以正常工作的代码,但如果文件位于Web根目录之外,则在RHEL上会中断:$repometa=fopen("/path/to/file/it/does/exist/and/has/good/perms","r+b");实际错误如下,这很奇怪,因为权限很好(由

linux - 无法打开流 : Too many open files

我正在为在共享主机中运行的客户端编写PHPCLI脚本。它使用一个简单的函数记录到一个文件,例如:functionlog_entry($msg){global$log_file,$log_handle;$msg="[".date('Y-m-dH:i:s')."]".$msg."\n";echo$msg;$log_handle=fopen($log_file,'a');fwrite($log_handle,$msg);}我得到这个错误:PHPWarning:fopen(./logs/sync.20130410.log)[function.fopen]:failedtoopenstream:

php - 上传文件表单 - 无法识别 $_FILES 变量

我有以下表格:productname:"/>productdetailsproductprice"/>CN:"/>image我的问题是,每当我尝试使用此代码处理图像时:move_uploaded_file($_FILES['fileField']['tmp_name'],"../product_images/$newname");我收到以下错误:Notice:Undefinedindex:fileField这是为什么呢?提前致谢! 最佳答案 你必须在表单中添加enctype='multipart/form-data'Quotefro

php - htaccess : disallow all pdf files but allow from php script (file download script)

我写了一个小的下载脚本来隐藏文件路径,文件“get_file.php”处理一切。下一步我想通过htaccess禁止通过浏览器直接访问所有pdf文件(如果有人知道该文件的确切url),但仍然使用我的“get_file.php”提供对该文件的访问。我试过:RewriteEngineonRewriteCond%{HTTP_REFERER}!^http://(www\.)?localhost[NC]RewriteCond%{HTTP_REFERER}!^http://(www\.)?localhost.*$[NC]RewriteRule\.(pdf)$-[F]有什么想法吗?

php - var_dump($_FILES) result in blank ["type"] 对于特定的图像文件

我有一张用旧数码相机拍摄的图像,大小约为4MB,类型为“image/jpeg”。当我通过表单提交并查看var_dump($_FILES);时,数组如下:array(1){["userfile"]=>array(5){["name"]=>string(12)"IMGP0004.JPG"["type"]=>string(0)""["tmp_name"]=>string(0)""["error"]=>int(1)["size"]=>int(0)}}我想知道它是否没有选择文件类型并将文件大小检测为0是否有原因。其他文件回显所有正确信息。 最佳答案

php - 如何遍历 $_FILES?

我想围绕$_FILES[]数组添加循环。我试过$count=count($_FILES['files'][name])然后在它周围添加循环for($i=0;$i,但它没有给我想要的输出。我只想从用户上传的文件添加到循环,现在它正在计算表单中所有可用的"file"。请告诉我一种只计算上传文件并循环遍历它们的方法。 最佳答案 循环$_FILES数组并在迭代中使用['name']:$count=count($_FILES['files'])for($i=0;$i更简单的方法是使用foreach循环:foreach($_FILES['fil