私はこのサーバーでXOOPSを使ったコミュニティーのWEBをやっていますが、ある時、気がつくと、予定を新規登録しても、メンバーにメールが行かない事態になっておりました(原因は不明。サーバーの引越しなどをやったせい?)
色々調べていくと、本来はカレンダーのリスト表示や各予定の詳細表示の時、表示される筈のイベントの選択画面が表示されていませんでした。
mysqlの何処かにこの設定があると見当を付け、色々なテーブルを調べると、(mysqlのやり方は下の方の続き...をクリックして下さい)xoops_config(最初のxoopsは初期設定の時の接頭語)というテーブルがあり、ここに色々な設定を保存しているようです。調べるとconf_modidが15(私の場合はpicalのmodidは15になっていた)conf_nameがnotification_enabled、conf_valueが1になっているデータを発見しました。他のモジュールでイベントを表示する分は3になっていましたので、此所を強引に3にしたら、無事リスト表示などにイベントが表示され,ここにチェック・マークを付けて、今すぐ更新をクリックした後は、メールが来るようになり、問題が解決しました。
本来なら、なんでこのデーターが1なったのか、原因を調べなければいけないし、3にするためのプログラムが何処かにあると思うのですが、私の能力では分かりませんでした。
memo:メールの送信判断はxoops_xoopsnotificationsというテーブル。
モジュールIDを調べるにはxoops_modules。
mysqlの使いかた
$ mysql -u root -pパスワード → mysql に入る。-pとパスワードの間にスペースを入れてはいけない。
mysql> use XXXX → XXXXは初期設定の時に入力したデーターベース名
mysql> show tables; → どんなテーブルがあるか調べる
mysql> show fields from xoops_config; → テーブルのデータは何の項目があるか調べる。
mysql> select * from xoops_config where conf_modid=15; → picalのデータの設定を全部表示する。picalのconf_modidが15で事を調べるには、1から順に入力をしていくと、それぞれのモジュールの設定が表示され、その中にモジュール名が含まれているデーターがあるので判明する
mysql> update xoops_config set conf_value=3 where conf_id=233; → conf_idが233だと判るのは、前の設定を表示した時
mysql> select * from xoops_config where conf_modid=15; → もう一度picalのデータを表示し、設定が反映しているか確認する
mysql> exit → mysqlを抜ける