よくある質問
From LimeSurvey Manual
はじめに
LimeSurveyでできることを感じるためにマニュアルの半分でも読みくない場合は、ビデオを見ることをお勧めします(下記参照)。
その後、アンケート - はじめにのマニュアルページが参考になるかもしれません。
LimeSurveyについて簡単に知りたい
まず基本的なLimeSurveyビデオチュートリアルをご覧ください。
LimeSurveyでオンラインアンケートを実施する方法に関する別のチュートリアルもあります。このビデオでは、初めてアンケートを作成るところから、ユーザーに提供し、回答された結果を表示するまでを扱っています。
YouTubeにはさらに多くのビデオががあります。
LimeSurvey:
昔のPHP-surveyorのビデオ:
- phpsurveyors管理ページへのアクセス
- アンケートで新しいグループを作成する
- phpsurveyorで新しい質問を作成する
- 新しく作成/修正されたアンケートのテスト
- 回答者の追加
- 回答者へのメール送信
アンケートのデザインとレイアウト
短いURLにするためにURLパスからindex.phpを削除する方法
すっきりしたURLを使うため、URLに/index.phpを含めない場合は、/application/config/config.phpを編集して変更してください。
'showScriptName' => true,
を次のように変更します。
'showScriptName' => false,
これを正しく動作させるためには、mod_rewriteモジュールが正しくインストールされたApacheウェブサーバーを使用する必要があります。
Nginx http serverを使用し(PHPはFastCGIを経由して実行)、'urlFormat' => 'path'設定を使用したい場合は、以下ようなnginxのサイト設定を検討してください。
server {
set $host_path "/PATH/TO/LIMESURVEY";
server_name YOUR.SERVER.FQDN;
root /PATH/TO/LIMESURVEY;
charset utf-8;
try_files $uri /index.php?$args;
location ~ ^/(protected|framework|themes/\w+/views) {
deny all;
}
#avoid processing of calls to unexisting static files by yii
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
try_files $uri index.php;
fastcgi_pass 127.0.0.1:9000; # Change this to match your settings
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
回答必須の質問の*(赤いアスタリスク)を取り除く方法
LimeSurvey 2.x では、必須であることを示す赤いアスタリスクはtemplate.cssファイル("asterisk"クラス)内に設定されています。それを隠すには、
- テンプレートエディタを開く
- 変更したいテンプレートのコピーを作成する
- "template.css"ファイルを選択して、asteriskクラスを検索する
- asteriskクラスの最後に次の設定を追加する: ".asterisk {display: none;}"
- template.cssを保存する
- 編集したtemplate.cssが再読み込みされ、キャッシュから取得されないように、ブラウザのキャッシュをクリアする
以前のバージョン
- テキストエディタでqanda.phpを開きます
- "asterisk"という文字列を探す
- 行頭に2つのスラッシュ"/"を付けてこの行をコメントアウトする
- 例:
- original: $qtitle = ''.$clang->gT('*').''.$qtitle;
- modified: // $qtitle = ''.$clang->gT('*').''.$qtitle;
Flashファイルを埋め込む方法
まず全体設定に行き、XSSフィルターを無効にします。また、そのフィルターを無効にすることどうなるかは理解しておいてください。フィルターが有効な場合、次の手順は機能しません。
- Flashファイルを挿入する場所に移動します。これは、質問、サブ質問、回答、アンケートのようこそ/終了のテキストなど、統合されたHTMLエディタを使用できる場所であればどこでもかまいません。
- エディターツールバーの'LimeFitWin'ボタンをクリックし、フルスクリーンエディタモードを開きます。
- フルスクリーンエディタのツールバーには、Flashシンボル付きの小さなボタンがあります。クリックすると、ダイアログが開きます。
- このダイアログでは、既存のFlashファイルのパスを指定するか、'サーバーを閲覧'ボタンをクリックします。
- 'サーバーを閲覧'ボタンをクリックすると、ファイルブラウザが表示され、下部にはファイルアップロードフィールドが表示されます。既存のファイルを選択するか、ファイルをアップロードしてください。
それでおしまいです。この説明が不完全な場合は、適宜更新してください。
アンケートから既定のテキストを削除する方法
"X問あります"
"プライバシーに関するメモ..."
質問コード
これらのテキストはすべて、プレースホルダーを使用しているテンプレートに挿入されます。簡単に削除できます。テンプレートエディターに移動し、{THEREAREXQUESTIONS} / {PRIVACYMESSAGE} / {QUESTION_CODE}のプレースホルダーを削除します。
アンケート構成
一般に公開するアンケートを作成する方法
アンケートを一般に公開するには、以下のようにします。
- トークンテーブルの作成はしない(存在する場合は削除する)
- アンケート設定で、"トークンを持つユーザーのみがアンケートを実施できる" = noと設定する(古い設定)
- アンケート設定で、"参加登録許可" = noとする
- アンケート設定で、"公開アンケート一覧に表示"を"はい"にする
アンケートは、LimeSurveyのルートページにリストされます。ウェブサイト/ブログにアンケートへのリンクを公開し、誰でも制限なくアンケートに参加することができます。
システムから確認メールを送信しない方法
トークンを使用し、参加者がアンケートに記入すると、参加者のメールアドレスに確認メールが送信されます。このメッセージを送信したくない場合は、"確認メール"の件名とメッセージ全体を削除してください。ソースコードモードに切り替え、すべてのテキストを削除します。空のメッセージを保存すれば、確認メールをもう送信しなくなります。
誤操作への対処
パスワードをリセットする方法
バージョン2.x.x以降
- コマンドラインでサーバーにアクセスします(例:SSH)
- PHPにコマンドラインでアクセスできるか確認します(see http://php.net/features.commandline.php)
- limesurveyディレクトリーに移動します
- 次のコマンドを入力します
php application/commands/starter.php resetpassword NEW_ADMIN_NAME NEW_ADMIN_PASS
またはphp application/commands/console.php resetpassword NEW_ADMIN_NAME NEW_ADMIN_PASS
/usr/bin/phpなどphpへの完全なディレクトリーアクセス権が必要です
バージョン2.x.x以降でFTPアクセスのみの場合
ResetPasswordControllerを参照してください。
データベースのパスワードを直接変更する
Limesurveyのデータベースに直接アクセスできる場合、新しいパスワードをSHA256ハッシュに符号化して更新することで、古いパスワードを変更することが可能です。こちらでパスワードをSHA256ハッシュした値を生成できます。
たとえば、次のコマンドを使用してパスワードをpasswordに設定できます。
UPDATE lime_users SET password = 0x35653838343839386461323830343731353164306535366638646336323932373733363033643064366161626264643632613131656637323164313534326438 WHERE uid =1;
ここでは、接頭辞がlime_であり、データベースが選択されています。
無効にしたアンケートからデータを復元する方法
アンケートを無効にするのではなく、常に時間切れ扱いとすることをお勧めします。誤ってアンケートを終了した場合は、アンケートを何も変更しないでください。
そして、次のような手順を踏みましょう。
- アンケートを再度有効化する
- "アンケートの回答閲覧"画面に移動する
- "無効になったアンケートテーブルからのインポート"ボタンを選択する
- インポート元のテーブルを選択する
- "回答をインポートする"をクリックする
削除した質問/質問グループ/アンケートの復元方法
残念ながら、削除してしまうと、本当になくなってしまいます。ただし、バックアップしている場合は復元できます(もちろん、定期的に行っていることが前提です)。
ハードウェア・ソフトウェアの要求条件
一般的な要件については、インストール手順を参照してください。
LimeSurveyの制約
処理速度について
LimeSurveyには処理速度に制限はありません。サーバーの処理速度とサーバーへの接続速度に依存します。短時間に多数のユーザーからの回答が予想され、サーバーが処理できるかどうかわからない場合は、フォーラムで他のユーザーの経験に関するトピックを参照してください。
アンケートの規模について
注意: ここでいう'アンケートの規模'とは、アンケートの質問(と回答)の最大数のことであり、アンケートで受け付ける最大の回答数ではありません(こちらに制限はありません)。理論的には、LimeSurveyの質問/回答の最大数に制限はありません。しかし、使用しているデータベースエンジンにはいくつかの制限があります。最も重要なのは、結果テーブルのフィールド(列)数の制限です。
- MySQL ISAM: テーブル内のVARCHAR列とCHAR列の長さの合計は最大64KBです。
- MySQL InnoDB: 最大1000列
- MS SQL Server 2000: 最大1024列
- Postgres: 列の種類に応じ最大250〜1600列。既定のブロックサイズを32kに増やすと、列の最大数を4倍にすることができます。インストールのFAQおよびPostgreSQL FAQを参照してください。
注意: 実施する前に考えてください。10×10項目の配列は、すでに100列を要します。ルール:画面上で記入または選択が可能なアイテムはそれぞれ1列としてカウントされます。
mySQL ISAMエンジンは最も面倒です(詳細はmysqlのドキュメントを参照)。1行につき最大65,535バイトまで可能で、utf8文字は1文字につき最大3バイト必要なので、最大値は21,844文字となります(DBエンコーディングによって異なります)。
アンケートの規模は次のように見積もることができます。
- 複数の数値質問: 回答ごとに20文字
- 複数選択と配列質問タイプ: 回答ごとに5文字
- その他の質問タイプ: 5文字
- 余裕をみるため10%程度を追加
PostgreSQLの最大カラム数を増やす方法
アンケートの質問がとても多い場合、PostgreSQLで異なるブロックサイズを定義し、より多くの列を作成することができます。PostgreSQLを再コンパイルし、BLCKSZを16KBまたは32KBなどのより高い値に設定する必要があるため、扱いにくいかもしれません。設定オプション"--with-blocksize=BLOCKSIZE"を確認してください。詳細は、PostgreSQLメーリングリストのアーカイブを参照するか、そこで質問してください(pgsql-patches(at)postgresql(dot)org)。
Debianでの手順です。(Martin Pitt提供)
sudo apt-get build-dep postgresql-8.3
apt-get source postgresql-8.3
cd postgresql-8.3-*
debian/rules patch
sensible-editor build-tree/postgresql-8.3.5/src/include/pg_config_manual.h
dpkg-buildpackage -us -uc -b -nc
注意: 2014年8月、Ubuntu 14.04で上記を再現することはできませんでした。パッチが必要です(設定オプションでは不十分です)。参照(LinuxでPostgreSQL 9.3でテスト済み): Linux上でPostgreSQL の最大カラム数を増やす方法
Fatal error: Allowed memory size
サーバー構成によっては、メモリーに問題が発生し、次のようなレポートを受けることがあります。"Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 233472 bytes) in /path/to/htdocs/limesurvey/filename.php on line 7296"
LimeSurveyの設定ファイルにオプションの設定を追加することで、制限を引き上げることができます。
このようなアプリケーションによるローカル設定は、グローバルサーバー設定によって常に無効になる可能性があることに注意してください。あなたのサーバー上でメモリ制限を直接128Mに増やすには、以下を追加してみてください。
- サーバのメインのphp.iniファイルで、memory_limit = 128Mとする(アクセス権がある場合はお勧めします)
- LimeSurveyルートのphp.iniファイルで、memory_limit = 128Mとする。
- LimeSurveyルートの.htaccessファイルで、php_value memory_limitを32Mとする。
- config.phpで、ini_set('memory_limit', '128M')とする。
特定の設定
Under certain circumstances, you need tu update LimeSurvey configuration in application/config/config.php
2 limesurvey instance on same domain
With 2 limesurvey instance on same domain, but different directory, you need to update the session configuration.
For example, if you have example.org/ls1 and example.org/ls2 : update the ls1 config file
'session' => array (
'cookieParams' => array(
'path' => '/ls1',
),
),
'request' => array(
'csrfCookie' => array( 'path' => '/ls1' )
),