人気ブログランキング | 話題のタグを見る

システム開発と非常勤講師に携わる在宅ワーカーの日記


by colors-K
カレンダー
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
もうすぐ納品のPHP+Mysqlによるショップさんのサイトでの出来事。

これまでに見たことのない(?)Warningが出てびっくり!

こんな警告↓
Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled.
You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0

英語の上に長い文章で何が書いてあるか、さっぱりわからん!

そこで、インターネットで検索。
無謀にもこの文章をそのままぐぐってしまいました。

しかし、ぐーぐるちゃんは、おりこうだった。

警告: Unknown(): お使いのスクリプトは、セッションのサイドエフェクトに依存している可能性があります。このサイドエフェクトはPHP 4.2.3 まで存在しています。register_globalsを有効(enabled)にしない限り、セッションエクステンションは、グローバル変数をデータのソースとして認識しません。session.bug_compat_42 または、session.bug_compat_warn をoffにすることで、この機能とこの警告メッセージをそれぞれ無効(disable)にすることができます。

http://q.hatena.ne.jp/mobile/1182967583 より抜粋)

その上で、色々調査した結果、私が作成したソースのここで起きている!
ということが、判明しました。

SESSION変数とPOSTまたはGET変数が同じ名前になっていると警告が出る。

$AA = $_SESSION['AA'] = $_POST['AA'];

同じ名前にしておかないと、上記のような行がたくさんあってわからなくなりそうで...。

私は、行数を増やしたくなかったので、上記のような方法を使いましたが、これでも出ます。

$AA = $_POST['AA'];
$AA = $_SESSION['AA'] ;

行がくっついてなくても出ます。

では、対策は?
1.php.iniのregister_globals=onとする。
  → セキュリティ上、絶対にやりたくないし、やらない!!

2.php.iniのsession.bug_compat_42=off、session.bug_compat_warn=offとする。
  → 私がテスト的に使用してるサーバーでは、php.iniの書き換えが難しいためパス。
    (書き換えられる命令の制限があります。)

3.ソースリストのsession_start()の前に(というよりも1行目、一番最初に)
  ini_set("session.bug_compat_42", 0);
  ini_set("session.bug_compat_warn", 0);
  を入れる。
  → 片方だけでも良さそうですが、私は念のために両方入れました。

これで、Warningは出なくなりました。

めでたし、めでたし!
# by colors-K | 2010-03-12 20:42 | PHP

MySQLと日本語コード

ホスティングサービスのサーバー設定によって違いますが、クライアント様が使用されています「さくらインターネット」さんの場合の覚書です。

昨年から携わっていますショッピングサイトがあります。
元が英語+中国語のため、私の「空っぽ」に近い語学力では、日本語へ訳すことは不可能なのです。
そこで、マルチ言語で使用できる「UTF-8」というエンコードにてPHPの開発を手掛けました。

しかし、MySQLデータベースの方が、対応されていないと文字コード違いによる文字化け現象が起きます。

調査をした結果、次のことがわかりました。

さくらインターネットは、Mysql文字コードがEUC-JPで設定されているので、
ソースリスト上で強制的にUTF-8にする必要がある。
**ソース**
$DBConnect=mysql_connect($DBHost,$DBUser,$DBPass);
mysql_query("SET NAMES utf8",$DBConnect);
mysql_select_db($DBName,$DBConnect);

これで、文字化け対策はできました。
# by colors-K | 2010-03-09 00:39 | PHP

専門学校卒業式

本日は、専門学校の卒業式でした。

有名人の名誉理事長のお話は、とてもいいものでした。

「うわべだけの挨拶で気が入っていない挨拶は、挨拶ではない。」
という主旨のお話をされていました。

「お疲れ様ーーす」は、形式だけの挨拶で心がこもっていない。
心がこもっていれば、語尾まで省略しないで言える。
「お疲れ様です」と。

このお話、録音して、小学校や中学校の教職員や子どもたちに聞かせてやりたいと思いました。

語呂合わせで「あ」は「○○のあ」というお話も合わせてされていました。

「あ」と「い」は忘れましたが、「さ」は「察するのさ」。「つ」は「つながりのつ」と言われたので「うまいなあ。」と思いました。

人と人とのコミュニケーションの基本は「挨拶」である。

改めて、今後も「心のこもった挨拶」をしていこうと思いました。
# by colors-K | 2010-03-09 00:30 | 非常勤講師のお仕事
タイトルとは違いますが、まずは、娘の中学校が決まりました。

市内を離れての通学になりますので、結構大変ですが、娘がとても喜んでいますのでいいでしょう。

で、タイトルです。

かなりショッキングでした。

しかし、やんちゃなうちの小学校や隣の小学校ではないのです。
新聞を見て知ったくらいですから。

あれこれネット検索をしてニュースを見ていたら、学校の外観が出てきましたのでどこの学校かがわかりました。
(既に2chには、学校名があります。みなさん、早いわ。)

ここは、お友達の娘さんが通っている小学校です。
ですので、連絡を取ってみました。
すると「どんぴしゃ」です。

彼女の話によりますと、新聞報道通り、先週くらいから保護者間で手紙の話は噂としてあったそうです。
しかし、「じゃれあっているだけだよねー」と楽観視していたそうです。

こんな大きな事件に発展するとは思っていなくて驚いた言っていました。

学校側の対応は?と聞くと、まだ保護者に対する説明は何もないそうです。
卒業式も近いし、事件が起きるような小学校ではなかった(はず)なので、混乱をしているのかもしれません。
しかし、保護者に対して説明はしないといけないとは思います。

で、私の見解を。

被害者の子がかわいそう。命があって良かった。
しかし、お母さん、最近金遣いが荒いとは思いませんでした??
おかしい時は、追求しないと...。しすぎてもいけないから難しいところだけれど。

加害者は、限度というものがわからない??
6年生にもなって。もうすぐ中学生ですぞ??
親は、最近、金回りがいいことに気がつかなかった??

小学校は、いじめがわからなかったみたいだけれど、これは「いじめ」を超えた犯罪でしょう。
犯罪の被害者と加害者が出たのだから、事実関係をしっかり把握して、
不安になっている保護者へ説明をしていただかないといけないのでは??

同じことが、うちの小学校であったら、説明会を開くように要請していますがねっ!

はあああ、おかしな世の中。
やっていいことと悪いことの区別がつかないまま大人になっていく子どもたちが多いと思います。
# by colors-K | 2010-03-04 21:11 | からからのプライベート

謹賀新年

あけましておめでとうございます。

本年もどうぞよろしくお願いいたします。

今年のお正月は、お年始で旦那の実家へ行ったり妹が我が家へ来たりというイベントのみでした。

あとは、子供の勉強と私のお仕事で、ほぼ普段通りの生活です。

我が家の新年は、子供の受験が終わって、行き先が決定してからになります。

2月以降ですなー。(旧正月じゃありませんか。)

お仕事は、だいぶ先が見えてきました。
後一歩です。

評価を考えても、80%は終了していると言っても過言ではないです。

次のプログラミングのお話もいただいていますので、大変ありがたいと感じています。

これからも精進して、プログラミングのお仕事と学校のお仕事をこなして行けたらと考えています。
# by colors-K | 2010-01-04 17:08 | からからのプライベート