XUpload - Message says files uploaded but files not found

Posts: 1
Joined: Mar 28, 2006 8:06 pm

Message says files uploaded but files not found

#1 Postby aurum14 » Mar 28, 2006 8:13 pm

I have installed all the files for XUpload and set CHMOD on all files and folders to 755 and created the temp & upload folders in cgi-bin and set permissions to 777.

Nothing I have uploaded but have a message saying the transfer is complete have shown up anywhere on my website.

Any clues?



User avatar
Posts: 2183
Joined: Mar 22, 2006 1:39 pm

#2 Postby PilgrimX182 » Mar 29, 2006 7:29 am

Looks you have mod_security Apache module installed on your host which is buffering uploading files.

Posts: 3
Joined: Oct 03, 2006 3:11 pm

#3 Postby himmel2112 » Oct 03, 2006 3:34 pm


I have the same problem...

pop-up said that transfer is completed, but file was not copy in folder.
I don't have any .htaccess file in the folder of upload.cgi, and even if i create one, it doesn't work. i've done all chmod too but it doesn't work...

i'm working with Red Hat 7.2, apache 2.2, perl 5.6, php 4.4.2

my phpinfo is: http://www.andil.fr/phpinfo.php

my upload_form.html is

Code: Select all

<Title>XUpload - upload progress bar</Title>

body {align: center; width: 400px;background-color: #f9f9f9; border: 1px solid #b3b3b3; font: 13px Arial; text-align: left;}
LEGEND   {background-color: #f0f0f0; border: 1px solid #b3b3b3; font: bold 13px Arial; padding: 2px;}
.div1, .file_list {text-align: left; color: #484B50; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px;}
.div1 {width: 100%; padding: 10px;}
.input {font: 12px Arial; border: 1px solid #636363; margin-top: 1px; width: 100%;}
.file_list {width: 100%; border: 1px solid #434343; background-color: #ffffff;}
.file_list input, .myForm {font: 12px Arial; border: 1px solid #636363; margin-top: 1px;}

<Script language="JavaScript">

var exts = "jpg|jpeg|gif|png|rar|zip|mp3|avi|txt|csv|mov|wav|psd|ai|eps|fla|swf|doc|xls|ppt|pps|rtf|xml|and";
//var exts = ".*"; //Use this to accept all Extensions

//- Fix for Netscape 6/Mozilla ------------
if(typeof HTMLElement!="undefined" && !HTMLElement.prototype.insertAdjacentElement)
HTMLElement.prototype.insertAdjacentElement = function
switch (where){
case 'beforeBegin':
case 'afterBegin':
case 'beforeEnd':
case 'afterEnd':
if (this.nextSibling)
else this.parentNode.appendChild(parsedNode);

HTMLElement.prototype.insertAdjacentHTML = function
var r = this.ownerDocument.createRange();
var parsedHTML = r.createContextualFragment(htmlStr);

var UID,NF=0,cx=0;
function openStatusWindow()
 if(document.F1.popup.checked == true)
   win1 = window.open('../cgi-bin/upload_status.cgi?upload_id='+UID+'&num_files='+NF+'&css_name='+document.F1.css_name.value+'&tmpl_name='+document.F1.tmpl_name.value,'win1','width=320,height=240,resizable=1');

function generateSID()
 UID = Math.round(10000*Math.random())+'0'+Math.round(10000*Math.random());
 var f1=document.F1;
 f1.action = f1.action.split('?')[0]+'?upload_id='+UID;
 //for (var i=0;i<document.F1.length;i++)
 //    current = document.F1.elements[i];
 //    if(current.type=='file' && current.value!='')NF++;

function StartUpload()
    for (var i=0;i<document.F1.length;i++)
     current = document.F1.elements[i];
     if(current.type=='file' && current.value!='')
         if(!checkExt(current.value))return false;

function checkExt(value)
    if(value=="")return true;
    var re = new RegExp("^.+\.("+exts+")$","i");
        alert("Extension not allowed for file: \"" + value + "\"\nOnly these extensions are allowed: "+exts.replace(/\|/g,',')+" \n\n");
        return false;
    return true;

<h2>Andil Upload Page</h2>
<form name="F1" enctype="multipart/form-data" action="../cgi-bin/upload.cgi?upload_id=" method="post" onSubmit="return StartUpload();" target="upload">
<div id="slots"></div>
Fichier à envoyer: <input name="file1x" type="file" onChange="checkExt(this.value)"><br>
<textarea name="commentxy" cols="30" rows="5" wrap="virtual" valign="top">
This is a test field to show sending POST request to external script.
You can use any number or all form elements.
<Input type="checkbox" name="popup" checked id="popup"><label FOR="popup" ACCESSKEY="Z">Show upload status in pop-up window</label><br>
<input type="submit" value="Upload Files">
<input type="hidden" name="css_name" value="">
<input type="hidden" name="tmpl_name" value="">

<iframe src="about:blank" name="upload" frameborder=0 style="width: 0px; height: 0px;"></iframe>
<div id="div_inline" style="position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; background: url(trans_bg.gif); text-align: center; padding-top: 50px; display: none;">
<iframe src="about:blank" name="transfer" border=0 xSCROLLING=NO topmargin=0 leftmargin=0 frameborder=0 style="width: 320px; height: 240px; border: 1px solid #a3a3a3;"></iframe>
<!--<a href="http://www.sibsoft.net/xupload.html">SibSoft XUpload - upload progress bar</a>-->

my XUploadConfig.pm is :

Code: Select all

package XUploadConfig;

  use Exporter;
  @XUploadConfig::ISA = qw( Exporter );
  @XUploadConfig::EXPORT = qw( $c );

our $c=
 # Directory for temporary using files
 temp_dir        => '/home/andil/cgi-bin/tmp_files',

 # Directory for uploaded files
 target_dir      => '/home/andil/cgi-bin/upload',

 # Path to the template using for upload status window
 templates_dir   => '/home/andil/cgi-bin/Templates',

 # Allowed file extensions delimited with '|'
 ext_allowed     => 'jpg|jpeg|gif|png|rar|zip|mp3|avi|txt|csv|mov|wav|psd|ai|eps|fla|swf|doc|xls|ppt|pps|rtf|xml|and|',

 # The link to redirect after complete upload
 # This setting can be submitted from HTML form, then it will have priority
 redirect_link   => 'http://www.andil.fr/upload_form.html',

 # Max length of uploaded filenames(without ext). Longer filenames will be cuted
 max_name_length => 250 ,

 # Type of behavior when uploaded file already exist on disc. Available 3 modes: Rewrite/Rename/Warn
 copy_mode       => 'Rename',

 # Maximum total upload size in Kbytes
 max_upload_size => 2400000,     

 # Time to keep temp upload files on server, sec (24 hours = 86400 seconds)
 temp_files_lifetime => 86400,

 # CSS names
 styles          => { 'black'   => 'black.css',
               'hitech'  => 'hi_tech.css',
               'aqua'    => 'aqua.css',
               'tiny'    => 'tiny.css',
                              'contrast'=> 'contrast.css',

 # Template names
 templates => { 'simple' => 'simple.html',
                'hitech' => 'hitech.html',
           'nice'   => 'nice.html',


I hope somebody could help me because a long journey of work on this problem have destroyed my brain ;-)

Thanks a lot


User avatar
Posts: 2183
Joined: Mar 22, 2006 1:39 pm

#4 Postby PilgrimX182 » Oct 04, 2006 8:45 am

You have "Internal Server Error" in upload.cgi after upload.
Don't know what's the problem exactly: make sure upload.cgi is chmod 755, there are no windows linebreaks.

Also if this won't help, try to remove "$SIG{HUP} = 'IGNORE';" line.

What Perl version do you have?

Posts: 3
Joined: Oct 03, 2006 3:11 pm

#5 Postby himmel2112 » Oct 04, 2006 9:53 am

i've tried your advise but it doesn't work...

my perl version is 5.6.

what kind of windows linebreaks can i have as i'm working on Linux?

maybe my path are wrong? in html i have relativ path and in pm i have full path, is it all right?

thanks for your help

Posts: 3
Joined: Oct 03, 2006 3:11 pm

#6 Postby himmel2112 » Oct 04, 2006 3:58 pm


after some searchs i've found that upload.cgi create the file 'flenght' in the directory temp/$sid but the script stop after that...

if it could help you to help me...

good evening and thanks for your help


Return to “XUpload”