2011-07-08 5 views
4

Uploadifyをデバッグする方法がわかりません。すべて動作しているようですが、実際にアップロードされたファイルはありません。ブラウザから... Upladifyイベントで「完了!」と表示されます。 Uploadifyを使用する前に、PHPコードが正常に動作したので、どこに問題があるのか​​わかりません。 JavaScriptでUploadifyをデバッグする方法は?

<form>なし)

<input id="file_upload" name="file_upload" type="file" rel="<?php echo $group_id; ?>" /> 

... PHPで

$('#file_upload').uploadify({ 
    'uploader'  : '/media/js/uploadify/uploadify.swf', 
    'script'   : '/bio/community/group_picture/' + $('#file_upload').attr('rel'), 
    'cancelImg'  : '/media/img/bio/_blog_delete.png', 
    'buttonImg'  : '/media/img/bio/browse_files.png', 
    'wmode'   : 'transparent', 
    'auto'   : true, 
    'width'   : 92, 
    'sizeLimit'  : 31457280,  
    'height'   : 26, 
    'scriptData'  : {'session' : session_id}, 
    'onAllComplete' : function() { location.reload(); } 
}); 

コントローラー:

public function action_group_picture($group_id) { 

    $model_group = Model::factory('Bio_Community_Group'); 

    if (!empty($_FILES)) { 

     $model_group->add_picture($_FILES['file_upload'], $group_id); 

     $this->request->redirect('bio/community/edit_group/' . $group_id); 

    } 

    exit; 

} 

モデル:

public function add_picture($image, $group_id) { 

    $filename = $group_id . '.jpg'; 
    $location = 'uploads/bio/community/groups/' . $filename; 

    $image = Image::factory($image['tmp_name']); 

    if ($image->width !== 60 || $image->height !== 60) { 

     $image->crop(60, 60); 

    } 

    $image->save($location); 

} 

私はKohanaを使っています。それがうまくいかない理由やデバッグ方法は?

答えて

2
  1. 使用Firebugの(FireFoxのプラグイン)リクエスト情報 (ヘッダ、HTTP応答など)について の情報を取得します。
  2. コントローラーに を追加します( 要求のセーブポイントなど)。
  3. httpdログを確認してください。
2

すべてのjsイベントをコンソールに書き出します。 onSelect、onOpen、onProgress、onCompleteなど、多くのものがあります。これは、アップロードが動作しているときに何が起こっているのかをもう少し詳しく知ることができます。例えば

onComplete : function (event, ID ... 
    console.log(event); 
    console.log(ID); 
    .... 

などなど

こちらを参照してください:一般的にhttp://www.uploadify.com/documentation/

、しかし、その中に見することは苦痛です。私のチャールズは何らかの理由でサーバーのトラフィックを捕まえていません.....

編集:また、私はJSに深くいて事が正しく戻っていないときに私は忘れる傾向があります:サイドコールエラーフリーですか? Uploadify do notはあなたの返信であなたが送ったHTTPステータスコードのテキストを返すので、あなたが503などを返品しても、あなた自身のエラーテキストは得られません。私は、ダミーのHTMLのみのファイル送信フォームを作成しようとするので、私のサーバーサイドコードが正しいことを確認することができます。

(サイドノート:Uploadifyも、何らかの理由で、それは仕様でだとしてもカントー、エラーとしてHTTPステータスコード400を認識しない:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1

7

debug:trueを使用してみてください。

それはスクリプトのログを持つボックスを示しています。あなたが私を救っありがとう

$(function() { 
    $("#file_upload").uploadify({ 
     'debug' : true, 
     'swf'  : '/uploadify/uploadify.swf', 
     'uploader' : '/uploadify/uploadify.php' 
    }); 
}); 
+0

を! :) – TechCare99

+0

'debug:true'を使うのは良い考えです。本当にありがとう! – aLearner

関連する問題