調査履歴

Webデザイン

カテゴリー: HTML5  閲覧数:580 配信日:2015-04-02 22:04


当初予定


ファイル存在確認後、条件分岐
・file_exists()関数で、ファイル存在確認後、条件分岐しようと考えていた


問題発生


いざコーディング開始してみると
・パスは正しいのに期待した通り条件分岐しないことに気が付く
・ファイル存在しているのに全く認識してくれない

調査した結果判明した事実
・セーフモードではファイル操作系関数が使用不可
・getimagesize関数とか色々試すも、全滅

セーフモード環境下でのファイル存在確認
・こんなに難易度高いとは夢にも思わなかったよ

CGIモードへは変更したくない
・CGIモードへ変更すれば動作することは分かっているが、他への影響を考慮すると変更したくない


JSでファイル確認


最初に試した方法
・目的は達成できたが、コンソールにエラーが表示されまくっている
<script>
 function filesize (url) {
 // http://kevin.vanzonneveld.net
 // +   original by: Enrique Gonzalez
 // +      input by: Jani Hartikainen
 // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
 // +   improved by: T. Wild
 // %        note 1: This function uses XmlHttpRequest and cannot retrieve resource from different domain.
 // %        note 1: Synchronous so may lock up browser, mainly here for study purposes.
 // *     example 1: filesize('http://kevin.vanzonneveld.net/pj_test_supportfile_1.htm');
 // *     returns 1: '3'
 var req = this.window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
 if (!req) {
   throw new Error('XMLHttpRequest not supported');
 }

 req.open('HEAD', url, false);
 req.send(null);

 if (!req.getResponseHeader) {
   try {
     throw new Error('No getResponseHeader!');
   } catch (e) {
     return false;
   }
 } else if (!req.getResponseHeader('Content-Length')) {
   try {
     throw new Error('No Content-Length!');
   } catch (e2) {
     return false;
   }
 } else {
   return req.getResponseHeader('Content-Length');
 }
}
</script>

<td>
 <?php $targetPath = "/img/".$user['img_sample2']; ?>
 <script>
   var gazou = "<?php echo $targetPath; ?>";
   imgsize = filesize(gazou);
   if(imgsize >300) {
     document.write('<a href="<?php echo $this->escape($user['url']); ?>"><img src="<?php echo $targetPath; ?>" alt=""></a>');
   }
 </script>
</td>


週間人気ページランキング / 6-29 → 7-5
順位 ページタイトル抜粋 アクセス数
1 「東京都」のカラーコード取得は難しい | カラーコード(色) 13
2 鉄道会社毎のカラーコード | カラーコード(色) 11
3 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 10
4 「パッケージ化されてない拡張機能を読み込む」でインストールした拡張は、chromeを「更新」すると正常動作しなくなることがあります。 | Chrome 拡張機能 7
4 utf-8ではなく、UTF-8 | HTML 7
5 Flickrがサポートするライセンス 9 + 特別なライセンス 2 | 画像著作権(画像) 6
6 カラーコード / 色コード | カラーコード(色) 5
6 RGBの種類 / ビットカラー | RGB(色) 5
6 16進数カラーコード / 2進数 5
6 RGB ⇔ Lab | 色変換(色) 5
6 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 5
7 効果を打ち消すスタイルシート | CSS 4
7 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 4
7 「Google Chrome」の文字が突然ギザギザで表示されるようになったら、「chrome://flags/#top-chrome-md」へアクセス後、右上の「Reset all」ボタンをクリックします。 | Google Chrome(ブラウザ) 4
7 「z-index」効果を打ち消すスタイルシートは、「z-index:auto;」 4
7 キャラクター無料作成ジェネレーター / FLASH / オンラインサービス | イラスト参考(デザイン) 4
7 RGB ⇔ XYZ / CIE RGB / sRGB(D65) / sRGB(C) / Adobe RGB / NTSC RGB 4
8 ライセンス変更 | 画像著作権(画像) 3
8 色モデルイメージ図 | 色変換(色) 3
8 「:after擬似要素」は、Chromeの「要素を検証」で確認できない | 擬似(CSS) 3
2025/7/6 1:01 更新
指定期間人気ページランキング / 2020-5-30 → 2025-7-5
順位 ページタイトル抜粋 アクセス数
1 RGB ⇔ Lab | 色変換(色) 8624
2 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 4557
3 血の色 / #b30000 / #360800 / #ff0000 | 色 3731
4 Design 0 3695
5 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 2698
6 RGBの種類 / ビットカラー | RGB(色) 2642
7 「bgcolor」「background-color」「background」の違い | CSS 1975
8 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 1876
9 16進数カラーコード / 2進数 1831
10 コズミックブルーが何色か分からない | 色 1804
11 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある | z-index(CSS) 1660
12 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 1649
13 「属性」「プロパティ」「アトリビュート」の違い | CSS 1592
14 「Bootstrapデザイン」✕「グラフ」 | 2系(Bootstrap) 1509
15 「パッケージ化されてない拡張機能を読み込む」でインストールした拡張は、chromeを「更新」すると正常動作しなくなることがあります。 | Google Chrome(ブラウザ) 1419
16 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 1357
17 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 1307
18 「東京都」のカラーコード取得は難しい | 色 1168
19 HSLとHSVの違い | 色変換(色) 1150
20 「Chrome拡張機能」開発中に遭遇したエラー | Chrome 拡張機能 1102
2025/7/6 1:01 更新