Uploadify tempermental nedir?

4 Cevap php

Ben biraz boşuna Uploadify komut dosyası çalışmaya ... o atanmış bir klasöre doğru tüm dosyaları yükler ama yüklenme hiçbir detayları MySQL ile eklenir çalışıyorum.

ben bir hata yapıyor olabilir nerede herhangi bir fikir? lütfen yardım.

manage.php

  <script type="text/javascript"> 
    $(document).ready(function() {
        $("#uploadify").uploadify({
            'uploader'       : 'resources/uploadify.swf',
            'script'         : 'resources/uploadify.php',
            'folder'         : 'files',
            'queueID'        : 'fileQueue',
            'auto'           : true,
            'onAllComplete'  : function(){ alert("Thank you. All files have been uploaded successfully."); },
            'multi'          : true
        });
    });
    </script>
  <form method="post" action="<?php echo $_SERVER['PHP_SELF'] . '?id=' . intval($client_id); ?>">
    <p>
         <b>File Upload</b></p>
<div id="fileQueue"></div>
<input type="file" name="uploadify" id="uploadify" />
<p><a href="javascript:jQuery('#uploadify').uploadifyClearQueue()" class="form">Cancel all uploads</a></p>
<a href="#viewFiles" class="form" rel="facebox">View files</a>

<div id="viewFiles" style="display:none;" rel="facebox"> 
                   <div style="width:300px; height: 300px;"></div>
</div>

    </p>
</form>

uploadify.php

<?php require_once('../Connections/speedycms.php); 

if (!empty($_FILES)) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
    $targetFile =  str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];

    $fileName = $_FILES['uploadify']['name'];
    $fileSize = $_FILES['uploadify']['size'];
    $fileType = $_FILES['uploadify']['type'];

        $client_id = mysql_real_escape_string($_GET['id']);

    // $fileTypes  = str_replace('*.','',$_REQUEST['fileext']);
    // $fileTypes  = str_replace(';','|',$fileTypes);
    // $typesArray = split('\|',$fileTypes);
    // $fileParts  = pathinfo($_FILES['Filedata']['name']);

    // if (in_array($fileParts['extension'],$typesArray)) {
        // Uncomment the following line if you want to make the directory if it doesn't exist
        // mkdir(str_replace('//','/',$targetPath), 0755, true);

        move_uploaded_file($tempFile,$targetFile);
        echo "1";

        mysql_query("
INSERT INTO tbl_accidentfiles SET client_id='$client_id', name='${fileName}', path='${targetFile}', size='$fileSize', content_type='${content_type}'");

    // } else {


//  echo 'Invalid file type.';
        // }

    }

?>

çok teşekkürler!

4 Cevap

Flash script manage.php sayfada uploadify.php dosyasını değil formu çağırıyor.

Değiştirmeyi deneyin:

$fileName = $_FILES['uploadify']['name'];
$fileSize = $_FILES['uploadify']['size'];
$fileType = $_FILES['uploadify']['type'];

için:

$fileName = $_FILES['Filedata']['name'];
$fileSize = $_FILES['Filedata']['size'];
$fileType = $_FILES['Filedata']['type'];

Belki bir php hatası? İlk satır ...

<?php require_once('../Connections/speedycms.php); 

(Tek tırnak eksik), olması gerekir ...

<?php require_once('../Connections/speedycms.php'); 

Veritabanı bağlantısı kurmak olmaz gibi mysql_query çalışmaz Bu nedenle expalin olur

In uploadify.php var beri kod, bazı hata var:

$client_id = mysql_real_escape_string($_GET['id']);

Ama Uploadify js kodunda geçmek değil. Bunu yapmak için, bu kodu kullanabilirsiniz:

$("#uploadify").uploadify({
  'uploader'       : 'resources/uploadify.swf',
  'script'         : 'resources/uploadify.php',
  'folder'         : 'files',
  'queueID'        : 'fileQueue',
  'auto'           : true,
  'onAllComplete'  : function(){ alert("Thank you. All files have been uploaded successfully."); },
  'multi'          : true,
  scriptData       : {'id': '<?php echo intval($client_id); ?>'}
});

Son uploadify yılında, için varsayılan yöntem scripData olup POST. Yani, $_POST['id'] sizin uploadify.php dosyasında kullanmak veya Uploadify js yöntemini değiştirin:

'method' : 'GET'

See here daha tam parametresi için. Ben şimdi çalıştı umuyoruz.

Son not, içinde uploadify.php yerine bunu yapabilirsiniz:

$client_id = intval($_GET['id']);

Emin client_id geçerli bir değer içerdiğini yapmak. Eğer sadece tamsayı değil, başka değer içerdiğinden emin olun, çünkü sadece kaçmak daha iyidir.

Thanx for the post. Actually my client needs to upload number of images for a tour package.and i wanted to save them in the database. For this I have to use multiple uploader. so i decided to create a separate table for images linked via common package ID. I got an idea to insert the table with image and respective id field

Senden daha