gpt4 book ai didi

jQuery 文件上传 Cakephp

转载 作者:行者123 更新时间:2023-12-01 00:11:15 25 4
gpt4 key购买 nike

我正在尝试让 blueimp 的 jQuery 文件上传与 Cakephp 一起使用。

一切都很好,只是我在尝试删除已上传的内容时似乎遇到了问题。当我单击特定文件上的删除时,我在控制台中收到以下错误。

DELETE http://example.com.au/app/webroot/?file=logo%20%285%29.gif 404 (Not Found)
jquery.min.js:4XHR finished loading: "http://example.com.au/app/webroot/?file=logo%20%285%29.gif".

发生这种情况有什么原因吗?

最佳答案

首先将所有必需的js和css文件放在webroot目录中。

将它们放在任何您需要的地方,例如将 js 文件放在 webroot/js/jquery_file_upload/中,将 css 放在 webroot/css/jquery_file_upload 中。

现在创建一个名为UploadHandler的供应商目录。在此目录中复制粘贴UploadHandler.php

现在你几乎完成了。

现在请按照以下步骤操作。

  • 在 View 文件中复制粘贴您从 here 下载的示例代码。不要忘记为每个 js 和 css 文件提供正确的路径,并以表单确保文件输入类型的名称为 files[ ]
  • 现在创建了一个 Controller Action ,其中真正的魔法将会发生。复制粘贴以下代码并根据您的要求定义路径。
<?php
class ServicePicturesController extends AppController {

var $name = 'ServicePictures';

function upload()
{
$this->layout = "ajax";
App::import('Vendor','UploadHandler',array<'file' => 'UploadHandler/UploadHandler.php'));

$options = array
(
'script_url' => SITE_URL.'service_pictures/upload/',
'upload_dir' => APP.WEBROOT_DIR.DS.'img'.DS.'offer_picture'.DS,
'upload_url' => SITE_URL.'img/offer_picture/',
'max_number_of_files' => 3,
'thumbnail' => array
(
'max_width' => 150,
'max_height' => 150
)
);

$upload_handler = new UploadHandler($options, $initialize = false);
switch ($_SERVER['REQUEST_METHOD'])
{
case 'HEAD':
case 'GET':
$upload_handler->get();
break;
case 'POST':
$upload_handler->post();
break;
case 'DELETE':
$upload_handler->delete();
break;
default:
header('HTTP/1.0 405 Method Not Allowed');
}
exit;
} ?>

我花了2个小时测试了一下,成功了。

您还可以将数据库集成到其中。

欢迎询问更多。

希望对您和其他程序员兄弟有所帮助。

从我在第一步中提到的链接下载示例代码,按照以下步骤操作。

根据需要放置 js 和 css 文件,但将其放置在 webroot 中以符合 cakephp 约定。

干杯。

关于jQuery 文件上传 Cakephp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10471135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com