Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Uploadify检索JSON数组响应?_Php_Jquery_Ajax_Json_Uploadify - Fatal编程技术网

Php 使用Uploadify检索JSON数组响应?

Php 使用Uploadify检索JSON数组响应?,php,jquery,ajax,json,uploadify,Php,Jquery,Ajax,Json,Uploadify,我目前正在使用Uploadify插件将图像上传到使用AJAX的站点的特定目录中。这个很好用 上载图像时,我使用PHP处理服务器端功能,并将图像名称更改为随机16个字符的字符串 我在网络选项卡中的开发人员工具中肯定得到了正确的响应,因此jQuery是不正确的。我的响应是一个JSON数组 我试图做的是检索16个字符的字符串,然后在上传后立即显示图像?所以我真的需要得到这个随机的16个字符的字符串 HTML: JSON响应: client_name: "banana-gif.jpg" file_ext

我目前正在使用Uploadify插件将图像上传到使用AJAX的站点的特定目录中。这个很好用

上载图像时,我使用PHP处理服务器端功能,并将图像名称更改为随机16个字符的字符串

我在网络选项卡中的开发人员工具中肯定得到了正确的响应,因此jQuery是不正确的。我的响应是一个JSON数组

我试图做的是检索16个字符的字符串,然后在上传后立即显示图像?所以我真的需要得到这个随机的16个字符的字符串

HTML:

JSON响应:

client_name: "banana-gif.jpg"
file_ext: ".jpg"
file_name: "Rl4dmhySHWgrAsH6.jpg"
file_path: "/Applications/MAMP/htdocs/SimpleBlog/uploads/"
file_size: 22.85
file_type: "image/jpeg"
full_path: "/Applications/MAMP/htdocs/SimpleBlog/uploads/Rl4dmhySHWgrAsH6.jpg"
image_height: 534
image_size_str: "width="950" height="534""
image_type: "jpeg"
image_width: 950
is_image: true
orig_name: "Rl4dmhySHWgrAsH6.jpg"
raw_name: "Rl4dmhySHWgrAsH6"

非常感谢您的帮助,谢谢

Uploadify没有
onComplete
功能。您需要使用带有响应参数的
onUploadSuccess
。像这样的

          $('#userfile').uploadify({
                'auto':false,
                'swf': base_url + 'assets/js/jquery/uploadify_31/uploadify.swf',
                'uploader': base_url + 'post/cover_upload',
                'cancelImg': base_url + 'assets/jquery/uploadify-cancel.png',
                'fileTypeExts':'*.jpg;*.bmp;*.png;*.tif;*.gif;*.jpeg',
                'fileTypeDesc':'Image Files (.jpg,.bmp,.png,.tif,.gif,.jpeg)',
                'fileSizeLimit':'10MB',
                'fileObjName':'userfile',
                'buttonText':'Select Photo(s)',
                'multi':true,
                'removeCompleted':false,
                'onUploadSuccess' : function(file, data, response) {
                     alert("Random Image String: " + data.file_name);
                 }  
            });
编辑:

当然,它会给您一个错误,这不是您在更新的示例中拥有的有效JSON字符串。PHP的
json_encode
,应该在数组上使用。结果应该是这样的

{"client_name": "banana-gif.jpg","file_ext": ".jpg","file_name":"Rl4dmhySHWgrAsH6.jpg","file_path":"\/Applications\/MAMP/htdocs\/SimpleBlog\/uploads\/","file_size": "22.85","file_type": "image/jpeg","full_path":"\/Applications\/MAMP\/htdocs\/SimpleBlog\/uploads\/Rl4dmhySHWgrAsH6.jpg","image_height": "534","image_size_str": "width=\"950\" height=\"534\"","image_type":"jpeg","image_width": "950","is_image": true,"orig_name": "Rl4dmhySHWgrAsH6.jpg","raw_name": "Rl4dmhySHWgrAsH6"};
双引号和正斜杠也必须转义
json_encode
应该可以帮你做到这一点


然后您可以像这样使用它
警报(“随机图像字符串:“+data.file\u name”)

它只是抛出以下错误
未捕获类型错误:无法读取null的属性“file\u name”
。有什么想法吗?对不起,我解释得不对。我的JSON数组与之类似,但我从开发人员工具的预览选项卡而不是响应选项卡中获取JSON元素。在上面修改代码后,它仍然只显示
未定义的
。我的响应头应该是
application/json
还是
text/json
?好的,请发布您的json响应,就像在响应选项卡中看到的那样
client_name: "banana-gif.jpg"
file_ext: ".jpg"
file_name: "Rl4dmhySHWgrAsH6.jpg"
file_path: "/Applications/MAMP/htdocs/SimpleBlog/uploads/"
file_size: 22.85
file_type: "image/jpeg"
full_path: "/Applications/MAMP/htdocs/SimpleBlog/uploads/Rl4dmhySHWgrAsH6.jpg"
image_height: 534
image_size_str: "width="950" height="534""
image_type: "jpeg"
image_width: 950
is_image: true
orig_name: "Rl4dmhySHWgrAsH6.jpg"
raw_name: "Rl4dmhySHWgrAsH6"
          $('#userfile').uploadify({
                'auto':false,
                'swf': base_url + 'assets/js/jquery/uploadify_31/uploadify.swf',
                'uploader': base_url + 'post/cover_upload',
                'cancelImg': base_url + 'assets/jquery/uploadify-cancel.png',
                'fileTypeExts':'*.jpg;*.bmp;*.png;*.tif;*.gif;*.jpeg',
                'fileTypeDesc':'Image Files (.jpg,.bmp,.png,.tif,.gif,.jpeg)',
                'fileSizeLimit':'10MB',
                'fileObjName':'userfile',
                'buttonText':'Select Photo(s)',
                'multi':true,
                'removeCompleted':false,
                'onUploadSuccess' : function(file, data, response) {
                     alert("Random Image String: " + data.file_name);
                 }  
            });
{"client_name": "banana-gif.jpg","file_ext": ".jpg","file_name":"Rl4dmhySHWgrAsH6.jpg","file_path":"\/Applications\/MAMP/htdocs\/SimpleBlog\/uploads\/","file_size": "22.85","file_type": "image/jpeg","full_path":"\/Applications\/MAMP\/htdocs\/SimpleBlog\/uploads\/Rl4dmhySHWgrAsH6.jpg","image_height": "534","image_size_str": "width=\"950\" height=\"534\"","image_type":"jpeg","image_width": "950","is_image": true,"orig_name": "Rl4dmhySHWgrAsH6.jpg","raw_name": "Rl4dmhySHWgrAsH6"};