首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在带fwrite的Redactor中使用imageGetJson

在带fwrite的Redactor中使用imageGetJson
EN

Stack Overflow用户
提问于 2012-12-04 05:05:59
回答 1查看 1K关注 0票数 0

基本上,我想要完成的是使用编辑器redactor和函数imageGetJson从文件夹中获取上传图像的列表

我已经设法让fwrite在我的images.json文件中添加了一个数组。现在的问题是,redactor需要用括号括起输入,以便渲染图像。

因此,我的问题是如何获得数据周围的括号?

到目前为止,我上传的文件是:

代码语言:javascript
复制
// This is a simplified example, which doesn't cover security of uploaded images. 
// This example just demonstrate the logic behind the process. 


// files storage folder
$dir = '../img/uploads/';

$_FILES['file']['type'] = strtolower($_FILES['file']['type']);

if ($_FILES['file']['type'] == 'image/png' 
|| $_FILES['file']['type'] == 'image/jpg' 
|| $_FILES['file']['type'] == 'image/gif' 
|| $_FILES['file']['type'] == 'image/jpeg'
|| $_FILES['file']['type'] == 'image/pjpeg')
{   
    // setting file's mysterious name
    $filename = md5(date('YmdHis')).'.jpg';
    $file = $dir.$filename;

    // copying
    copy($_FILES['file']['tmp_name'], $file);

    // displaying file    
    $array = array(
        'filelink' => '/img/uploads/'.$filename,
        'thumb' => '/img/uploads/'.$filename,
        'image' => '/img/uploads/'.$filename,
    );



    echo stripslashes(json_encode($array));

    $json = stripslashes(json_encode($array)), "\n";
    $files = fopen('../img/uploads/images.json','a+');
    fwrite($files, $json . "\n");
    fclose($files);
}

我创建了一个包含文件位置的数组,并将其写入文件images.json

我需要它看起来像这样

代码语言:javascript
复制
[
    {"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
    {"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
    {"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
    {"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
]

只是它添加了这样的内容:

代码语言:javascript
复制
[]
{"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
{"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}
{"filelink":"image.jpg","thumb":"image.jpg","image":"image.jpg"}

希望有人能帮我解决这个问题,因为我搞不清楚。

提前感谢:D

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-20 18:39:15

我找到了另一个解决方案:只需更改php文件data.php中的data.json,该文件读取您想要列出的目录,然后转换为json和echo。

这是我现在使用的(演示版,因为我的paypal还没有运行)(路径应该根据你的设置来设置)

在加载编校程序的页面中:

imageGetJson:‘redactor901try/demo/json/data.php’

代码语言:javascript
复制
$path = 'redactor901trial/demo/json/';
$upload_dir = 'images/';

$handle = opendir($upload_dir);

while ($file = readdir($handle)) {
   if(!is_dir($upload_dir.$file) && !is_link($upload_dir.$file)) {


    $docs[] = $file;
   }
}

sort($docs);

foreach($docs as $key=>$file){
    $array[] = array(
            'filelink' => $path.$upload_dir.$file,
            'thumb' => $path.$upload_dir.$file,
            'image' => $path.$upload_dir.$file,
            'folder' => 'Folder 5'
        ); 
        }   
echo stripslashes(json_encode($array));

希望这能有所帮助,而且还不算太晚;)

问候

史蒂文

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13691701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档