Codeigniter上传库中的文件名错误

时间:2012-09-07 07:46:56

标签: php file codeigniter pyrocms image-upload

我有多个文件上传字段。在开始时,当用户点击添加按钮时,没有字段,它显示文件上载字段

在视图中

PHP    
<?php echo $i = 0;?>

Javascript
var i = '<?php echo $i?>';  

<input type="file" name="product_image_' + i +'"/>

当我提交表格时,如果显示此输出

Array
(
    [product_image_1_] => Array
        (
            [name] => 25412_D80_backsanspic.png
            [type] => image/png
            [tmp_name] => C:\xampp\tmp\php68.tmp
            [error] => 0
            [size] => 355623
        )

    [product_image_2_] => Array
        (
            [name] => 25420_D40_right.png
            [type] => image/png
            [tmp_name] => C:\xampp\tmp\php69.tmp
            [error] => 0
            [size] => 347694
        )

    [product_image_3_] => Array
        (
            [name] => 26135_P6000_34r.png
            [type] => image/png
            [tmp_name] => C:\xampp\tmp\php6A.tmp
            [error] => 0
            [size] => 420441
        )

    [product_image_4_] => Array
        (
            [name] => 
            [type] => 
            [tmp_name] => 
            [error] => 4
            [size] => 0
        )

)

您可以在每个文件上传字段中看到下划线。我不明白这是怎么可能的。如果我这样做

echo $_FILES['product_image_4_']['error'];

显示输出但不是

echo $_FILES['product_image_4']['error'];

相反,它会产生错误未定义的索引product_image_4 任何建议。我正在使用基于codeigniter构建的pyrocms。

2 个答案:

答案 0 :(得分:0)

您的Javascript代码正在添加额外的下划线,您需要检查它。添加更多字段并查看页面源。如果名称中已有(_)。您可能会在java脚本代码中附加额外的下划线。

答案 1 :(得分:0)

我找到了另一个解决这个问题的方法我暂时用php删除_暂时不是一个完美的解决方案,但它让我继续我的工作。