Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

phpMyAdminでインポートファイルのサイズを増やす

2009/12/25 | MySQL, PHPの基本

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

MySQLのダンプデータが60MBほどあった。phpMyAdminでインポートしようと思ったのだが、アップロードできるファイルの最大は16MBとなっていた。60MBのファイルと言っても所詮テキストファイルだから圧縮してしまえば12MBになるから、アップロード自体は出来る。しかしいろいろ考えて、アップロード出来る容量を増やすことにした。

ここのサイズ指定は、単純にphp.iniの設定に依存しているらしい。おそらく.htaccessを設置すれば事足りるだろうが、設置するとInternal Server Errorが表示されてしまう。とりあえずローカルな環境(Windows)で試そうと思っているのだが、なにか問題でもあるのだろうか。

本筋でないことに時間を割くのが嫌なので、php.iniを変更することにした。よくよく考えればおバカな話だが、読み込んでいるphp.iniがどのファイルか分からなくて、何回変更しても、変更した設定が有効にならなかった(正しいファイルを変更していないのだから当たり前)。初心に帰って、phpinfo()で表示されるphp.iniの場所を頼りに設定ファイルを編集した。

Windows版Xamppでは、xampp/apache/bin/php.iniを使用しているらしいことがわかったので、そのファイルを編集した(xampp/php/配下にもphp.iniやphp5.iniがあるので注意が必要)。修正箇所は以下の3つ。

  • memory_limit 512M
  • post_max_size 256M
  • upload_max_filesize 128M

なんとも大盤振る舞いだが、ローカルな環境だから気にしないでいい。php.iniを修正したので、修正後はapacheの再起動が必要。再起動後にphpMyAdminのインポートの項目を見ると「最長: 131kKiB」となっていたkKiBだからMiB、つまり131MiBになった。これで無事一発で処理が完了した。

もし処理が遅い場合はmax_execution_timeの設定を増やしておけば良いかもしれない。

ディレクトリ内ファイル数の上限

2009/12/20 | その他

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

ファイルシステムext3のディレクトリ内のファイル数の上限が気になった。どこにでもよくある話のようで検索するといろいろ出てくる。でもすべてオリジナルは個々に端を発している。

http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/filesystems/ext2.txt.html

実運用上は「10-15k」らしい。これつまり「10k-15k」すなわち1万から1万5千ファイルほど。ファイルシステムの仕様上の問題らしい。パフォーマンスが悪くなるとのことだった。

パフォーマンスを気にしなければ「100k-1M+」とのこと。「100k-1M+」って意味わかんない、と思ったけど、どうやら100kから1Mもしくはそれ以上、ということらしい。だから10万ファイルから100万ファイル(もしくはそれ以上)という解釈。

でもその下には130兆以上のファイルが作成可能とも書いてある。

そもそも「じゃぁどれだけ」と言いたくなるが、それはおそらく状況に依存するのだろう。ちょっと悩んでいることがあるのだが・・・。まぁ、ひとつのディレクトリ内に設置するファイル数は数千を超えないようにすることが無難なようだ。

アンケートの作り方

2009/12/17 | その他

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

アンケートを簡単に作成して運用できるツールを複数のサイトで運用している。

無料アンケートASPサービス「CubeQuery」
アンケートフォームレンタル「jpForm.net」

これらのサイトは利用者も相応に増えている。一つ気がついたことがあって「アンケートの作り方」を意味するキーワードでやってくる訪問者がとにかく多いことだ。おそらくこれらの訪問者は、アンケートを無料でレンタルできるサービスを探しているのではなく、本当の意味で「アンケートってどうやって作るべきなんだろう」ということを調べていると思われる。おそらくどこのアンケートサービス提供会社でも、自社サービスにおけるアンケートの作り方は紹介しているだろうから、同様のアクセス解析結果を得ているに違いない。

そこで数年間サービスを運営して得た情報を元に、アンケートの作り方を取りまとめてみた。まだまだ足らない部分はあるが、実際にアンケートを作成する際に注意すべき事項等参考になる部分もあるかもしれないので、公開してみることにした。とりあえず、思いつき、ということで。

アンケートの正しい作り方

参考になれば。

short_open_tag

2009/12/16 | PHPの基本

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

PHPでプログラムを記述する際は、プログラムの前後を「<?php」「?>」でくくらなければならないのは当たり前中の当たり前。その省略形「<?」「?>」でもOK。後者の記述はPHPの設定でshort_open_tagが有効になっているかどうかによって決定されるが、たいていの場合は有効になっている。

この場合<?=$hoge ?>なんていう省略した記述が出来るので便利といえば便利なのだが、時として厄介や問題を生じさせることがある。

例えば、一昔前はHTMLの記述は<html>で始まるのが当たり前だった。しかし今ではDOCTYPEの宣言やらXML宣言を冒頭に記述することがほぼ常識的となっている。ここでXML宣言が問題となる。XML宣言の記述例は以下のとおりだ。

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>

問題はこの宣言もPHPタグの省略形と同様に「<?」「?>」でくくっているからだ。だからこの宣言を記述したHTML文書の拡張子を単に.phpとし、PHPプログラムを記述しようとすると当然のごとくエラーになる。これには注意が必要だ。さらに最近のレンタルサーバの設定ではdisplay_errorsの設定が無効になっているのでエラーも吐いてくれない。だから拡張子を.phpにしたとたん「何も表示されなくなった」という事象も発生する。

この問題を回避するためには、やはりデフォルトの設定としてshort_open_tagを無効にして、PHPは必ず「<?php」「?>」でくくることをオススメする。具体的には.htaccessを作成して(これも最近のレンタルサーバでは当たり前のように使えるようになっている)、そこに次の一行を加えておけばよい。

php_flag short_open_tag off

PHPの次のバージョンあたりで消え去ってほしい記述方法だ。

アンケートフォームレンタル「jpForm.net」の取り扱いデータ量

2009/12/11 | その他

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

公開して約1ヶ月がたとうとしているアンケートフォームレンタルサービス「jpForm.net」。まだまだ作成アンケート数という面では非常に少ないが、システムの動作状況を確認するのに格好のアンケートが現在実施されているようだ。注目しているのは回答数。すでに1500件以上のデータを集めている。「CubeQuery」の運用実績を通じても、一つのアンケートでこれだけのデータが収集されたのは初めてだと思う。

大量のデータだが、プログラムは正常に動作しているようだ。とても安心した。早く「jpForm.net」がアンケートレンタルサービスとして浸透することを願うばかりだ。

無料で使えるアンケートフォームレンタルサービス「jpForm.net」



Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524
守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524