FC2ブログ

画像掲示板のデバッグ

画像掲示板のデバッグ

#14 デバッグをする
http://dotinstall.com/lessons/upload_image_php/4514
を参考に、サムネイル画像が保存できるようにデバッグ

まず、細かいエラーを表示するように、
config.php の
error_reporting(E_ALL & ~E_NOTICE);
をコメントアウト

index.php に戻ってしまうと、細かいエラーがでなくなるので
header()の処理の前に
exit;
を記述して、一度終了する

原因は、エラーコードをみながら修正していく

今回の動画の場合だと
imagecopyresampled() の
第1引数が、書き込むイメージのリソースでなかったこと
そして
書き込むディレクトリが
THUMBNAIL
ではなく
THUMBNAIL_DIR
だったことが原因だっと判明

エラーが特定できたら、
config.php のエラー表示を元に戻したいので
error_reporting(E_ALL & ~E_NOTICE);
のコメントアウトを外す

このように、一度詳細なエラーを表示して

どこかにとぶような処理の場合、その前に
一度 exit で終了して原因を追及するようにして
デバッグしていく

今回、うまく動作しなかったので、後で比較して理解するため
cp upload.php upload.php_error
として
保存し
http://dotinstall.com/lessons/upload_image_php/4513
のソースをコピペして
実行

そのときにいくつかエラーがでたので
そのメモ

Warning: imagecopyresampled() expects parameter 1 to be resource, double given in
これは
imagecopyresampled() の第1引数がリソースでないのが原因
$thumbHeight から
thumbImage にする

Notice: Use of undefined constant THUMBNAIL - assumed 'THUMBNAI

Warning: imagepng(): Unable to open 'THUMBNAIL/5190816f6d00cce6c8bb909ef954cc1840c50a0c.png' for writing: No such file or directory

これは
'THUMBNAI が見つからないとでているので

config.php で指定している
'THUMBNAI_DIR にする

また、
Warning: imagepng(): の原因は
config.php の
define('THUMBNAIL_DIR', dirname($_SERVER['SCRIPT_FILENAME']).'/thumbnails');
のスペルミスが原因だった

これらを修正すれば
サムネイル画像が保存されるようになる

CentOS へログインして
cd /var/www/html/upload_image_php
ll image/
で画像がアップロードされているのを確認し

ll thumbnails/
でサムネイル画像があるのを確認できれば
デバック完了
スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック