IT仕事

phpESPつまづいたところ

投稿日:2008年9月2日 更新日:

AKI ON WEB: Webアンケートシステム「phpESP」を試してみた

を参考に、このソフトのインストールに挑戦。

しかし、DB作成で、まず転ぶ。

mysql_populate.sqlが通らない。スキルがないのでDBの作成がレンサバの管理画面+MySQLAdminでしかできなかったが、しかし何とか作成。sqlite_populate.sql はあっさり通過。

次にブラウザでページにアクセスしたところ、Connectがうまくいかないエラーが返ってくる。
phpESP.ini.phpの以下の部分を書き換えることで、何とかクリア。

$ESPCONFIG[‘db_host’] = ‘localhost’;
$ESPCONFIG[‘db_user’] = ‘phpesp’;
$ESPCONFIG[‘db_pass’] = ‘ないしょ’;
$ESPCONFIG[‘db_name’] = ‘phpesp’;

そして、アンケート入力フォームにて、転ぶ。

質問項目は200以上あるのでフォームを5ページに分けたい。
しかし方法がわからなかった。
区切りを入れることでできることをやがては気づいたが、喜びもつかの間。なぜか呼び出し直後の最初のページが表示されないことがたまにある。

編集画面のOrderで区切り記号をいったん全部削除して再度作り直すことでうまくいった。

パブリック・プライベートなアンケートの設定で、転ぶ。

パブリックの場合は、IPアドレスが重複するととってくれないので、LAN内の別人が回答することができない・・・不正防止のための至極当たり前の仕組みだけど、今回自分が使いたいやり方では、それは困ること。
プライベートにすると、ログインしてからの回答となるので解決できるのだが、設定が良くわからなかった。
以下、試行錯誤の結果。

handler.phpの2行目あたりに、以下のコードを貼り付ける(handler-prefix.phpの中ごろにあったもの)。

<!– ここから
if(empty($_REQUEST[‘userid’])) {
// find remote user id (takes the first non-empty of the following)
// 1. a GET variable named ‘userid’
// 2. the REMOTE_USER set by HTTP-Authentication
// 3. the query string
// 4. the remote ip address
if (!empty($_REQUEST[‘userid’])) {
$_REQUEST[‘userid’] = $_REQUEST[‘userid’];
} elseif(!empty($_SERVER[‘REMOTE_USER’])) {
$_REQUEST[‘userid’] = $_SERVER[‘REMOTE_USER’];
} elseif(!empty($_SERVER[‘QUERY_STRING’])) {
$_REQUEST[‘userid’] = urldecode($_SERVER[‘QUERY_STRING’]);
} else {
$_REQUEST[‘userid’] = $_SERVER[‘REMOTE_ADDR’];
}
}
ここまで –>

それでもって管理画面で、回答者アカウント管理でアカウントを追加し、グループをAutoにして、アンケートアクセス変更(回答者制限)でプライベートに設定し、OK。

とおもいきや、それでもうまくいかない。

グループ 最大回答 保存/リストア 戻る/進む

にそれぞれ適当な値をセットして、クリア。
アカウントはguestだけ作ったけど、それを使いまわして何度回答してもいいみたい。はじかれない。

アンケート結果のデータエクスポートで文字化け
形式をCSVではなくTABにし、UTF-8が読めるエディタで開くとOK。

苦労の連続。しかし何とか使い物になりそうだ。

-IT仕事

執筆者:

関連記事

no image

CSSで、はまった(画像の重なり・relative/absolute)

トラブル:トップページに配置した「ネットでの購入はこちら」ボタンが、ウィンドウの大きさに合わせて移動してしまう。 横長が狭い画面だと右の位置にあるが、広い画面だと真ん中に来る。CSSを見ると、posi …

FreeNASに挑戦

バージョン FreeNAS-9.2.1.3-RELEASE-x86。 FreeNAS-9.2.0-RELEASE-x64.iso。 2014/4/3(木)追記: Ver.9.2.1はCPU Usage …

no image

フォトショップで画像の周囲に枠線を書くやり方

自分のための備忘録。 1.新規レイヤーを作成し、全てを範囲選択(Ctrl+A) 2.選択範囲- 選択範囲を変更- 境界線 で、1px。 3.選択範囲- 選択範囲を変更- 滑らかに で、1px。 4.編 …

no image

QNAP TS-251AのバックアップでWARNING

毎日一回、LAN内のPCのUSBDISKにバックアップを取っている。 最近、qnapから以下のようなメッセージが毎日メールされる。 [RTRR Job] (Sync) Job share– …

no image

Win7初体験・初トラブル

会社の人が初めてWin7入りPCを買ったので例によってトラブルに遭遇した。 ファイルサーバにアクセスしようとすると、「ネットワークパスワードを入力して下さい」のダイアログが出る。それでつながらない。 …