Como están mucho rato por alguna razón el archivo temporal se borra, o cambia de nombre y cuando finaliza da error de que no se encontró el archivo temporal.
¿Que puede ser y que solución puede haber?
Código PHP:
Ver original
<?php /** * Only needed if you have a logged in user, see option appendCookieData, * which adds session id and other available cookies to the sent data. * * session_id($_POST['SID']); // whatever your session name is, adapt that! * session_start(); */ // Request log /** * You don't need to log, this is just for the showcase. Better remove * those lines for production since the log contains detailed file * information. */ $result['agent'] = $_SERVER['HTTP_USER_AGENT']; $result['get'] = $_GET; } $result['post'] = $_POST; } $result['files'] = $_FILES; } // we kill an old file to keep the size small } if ($log) { } // Validation $error = false; $error = 'Invalid Upload'; } /** * You would add more validation, checking image type or user rights. * if (!$error && $_FILES['Filedata']['size'] > 2 * 1024 * 1024) { $error = 'Please upload only files smaller than 2Mb!'; } if (!$error && !($size = @getimagesize($_FILES['Filedata']['tmp_name']) ) ) { $error = 'Please upload only images, no other files are supported.'; } if (!$error && !in_array($size[2], array(1, 2, 3, 7, 8) ) ) { $error = 'Please upload only images of type JPEG, GIF or PNG.'; } if (!$error && ($size[0] < 25) || ($size[1] < 25)) { $error = 'Please upload an image bigger than 25px.'; } */ // Processing $return['src'] = '/uploads/' . $_FILES['Filedata']['name']; if ($error) { 'status' => '0', 'error' => $error ); } else { 'status' => '1', 'name' => $_FILES['Filedata']['name'] ); // Our processing, we get a hash value from the file // ... and if available, we get image data if ($info) { $return['width'] = $info[0]; $return['height'] = $info[1]; $return['mime'] = $info['mime']; } } // Output /** * Again, a demo case. We can switch here, for different showcases * between different formats. You can also return plain data, like an URL * or whatever you want. * * The Content-type headers are uncommented, since Flash doesn't care for them * anyway. This way also the IFrame-based uploader sees the content. */ // header('Content-type: text/xml'); // Really dirty, use DOM and CDATA section! echo '<response>'; foreach ($return as $key => $value) { echo "<$key><![CDATA[$value]]></$key>"; } echo '</response>'; } else { // header('Content-type: application/json'); } ?>