คำถามที่พบบ่อยทั่วไป
From LimeSurvey Manual
เริ่มต้นใช้งาน
หากคุณไม่ต้องการอ่านคู่มือไปครึ่งเล่มเพื่อให้เห็นภาพว่า LimeSurvey ทำอะไรได้บ้าง เราแนะนำให้คุณดูวิดีโอสอนใช้งานบน YouTube ดังต่อไปนี้:
- วิธีตั้งค่าบัญชีและการติดตั้งแบบสำรวจ
- ชนิดของคำถาม - อาร์เรย์
- การประเมินผล
- ฟิลด์ Placeholder
- รายการตัวเลือกเดียว
- คัดลอก/นำเข้าแบบสำรวจ
- นำเข้าคำถาม
ฉันต้องการคำแนะนำเบื้องต้นสำหรับ LimeSurvey
หากต้องการอ่านคำแนะนำเบื้องต้นสำหรับ LimeSurvey แบบข้อความ โปรดดูสองลิงก์ต่อไปนี้:
การออกแบบและเลย์เอาต์ของแบบสำรวจ
ฉันจะลบ index.php ออกจากพาธ URL เพื่อให้ URL สั้นลงได้อย่างไร
หากคุณต้องการใช้ URL แบบสวยงาม (ไม่มี /index.php ในทุก URL) โปรดแก้ไขไฟล์ /application/config/config.php และเปลี่ยน
'showScriptName' => true,
เป็น
'showScriptName' => false,
เพื่อให้ใช้งานได้อย่างถูกต้อง คุณต้องใช้เว็บเซิร์ฟเวอร์ Apache ที่ติดตั้งโมดูล mod_rewrite อย่างถูกต้อง สำหรับ nginx โปรดดูตัวอย่างการกำหนดค่า nginx ของ LimeSurvey
ฉันจะลบ * (เครื่องหมายดอกจันสีแดง) ของคำถามที่จำเป็นต้องตอบออกได้อย่างไร
คำแนะนำสำหรับ LimeSurvey 2
ใน LimeSurvey 2.x เครื่องหมายดอกจันสีแดงของคำถามที่จำเป็นต้องตอบถูกกำหนดไว้ในไฟล์ template.css (คลาส "asterisk") วิธีซ่อน:
- เปิดตัวแก้ไขเทมเพลต
- สร้างสำเนาของเทมเพลตที่คุณต้องการแก้ไข
- เลือกไฟล์ "template.css" แล้วค้นหาคลาส asterix
- เพิ่มบรรทัดต่อไปนี้ที่ท้ายคลาส asterix ".asterisk {display: none;}"
- บันทึก template.css
- ล้างแคชของเบราว์เซอร์ เพื่อให้โหลด template.css ที่แก้ไขใหม่ ไม่ใช่ดึงจากแคช
คำแนะนำสำหรับ LimeSurvey 3
ขั้นตอนคล้ายกับที่แสดงไว้ข้างต้นสำหรับ LimeSurvey 2
- เข้าสู่ธีมที่ต้องการ หากเป็นธีมเริ่มต้น ให้สร้างสำเนาโดยคลิกปุ่ม "ขยาย"
- เข้าสู่รายการธีม แล้วคลิกตัวแก้ไขธีมที่ตรงกับธีมที่สร้างขึ้นใหม่
- ทางด้านซ้าย คุณจะเห็นไฟล์ CSS ที่เกี่ยวข้องของธีมของคุณ
- คลิกที่ custom.css แล้วเพิ่มบรรทัดต่อไปนี้:
.asterisk {display: none;}
- บันทึกการเปลี่ยนแปลง เครื่องหมายดอกจันสีแดงที่ปกติจะแสดงที่จุดเริ่มต้นของข้อความคำถามจะถูกซ่อนไว้
ฉันจะฝังไฟล์ Flash ได้อย่างไร
ขั้นแรก ไปที่ตั้งค่าโดยรวมแล้วปิดใช้งานตัวกรอง XSS โปรดศึกษาผลกระทบที่เกิดจากการปิดใช้งานตัวกรองนี้ต่อระบบของคุณด้วย ขั้นตอนต่อไปนี้จะไม่ทำงานหากตัวกรองยังเปิดใช้งานอยู่
- ไปยังตำแหน่งในแบบสำรวจของคุณที่ต้องการแทรกไฟล์ Flash ซึ่งอาจเป็นที่ใดก็ได้ที่สามารถใช้ตัวแก้ไข HTML ในตัวได้ เช่น ในคำถาม คำถามย่อย คำตอบ ข้อความต้อนรับ/ข้อความสิ้นสุดของแบบสำรวจ และอื่น ๆ อีกมากมาย
- เปิดโหมดแก้ไขแบบเต็มหน้าจอโดยคลิกปุ่ม 'LimeFitWin' บนแถบเครื่องมือของตัวแก้ไข
- บนแถบเครื่องมือของตัวแก้ไขแบบเต็มหน้าจอ คุณจะพบปุ่มเล็ก ๆ ที่มีสัญลักษณ์ Flash ให้คลิกที่ปุ่มนั้น กล่องโต้ตอบจะเปิดขึ้น
- ในกล่องนี้ คุณสามารถระบุพาธของไฟล์ Flash ที่มีอยู่แล้วที่ใดที่หนึ่ง หรือคลิกปุ่ม 'Browse server'
- หากคุณคลิกปุ่ม 'Browse server' คุณจะเห็นตัวเรียกดูไฟล์ และด้านล่างจะมีช่องอัปโหลดไฟล์ ให้เลือกไฟล์ที่มีอยู่แล้ว หรืออัปโหลดไฟล์ก่อน
เสร็จเรียบร้อย! หากคุณพบว่าคำอธิบายนี้ยังไม่สมบูรณ์ โปรดช่วยอัปเดตให้เหมาะสม
ฉันจะสร้างแบบสำรวจที่เปิดให้ทุกคนตอบได้อย่างไร
หากต้องการสร้างแบบสำรวจที่ทุกคนสามารถตอบได้ อย่าสร้างตารางผู้เข้าร่วมแบบสอบถาม! ให้แชร์ลิงก์แบบสำรวจที่อยู่ในแผงภาพรวม
การลงทะเบียนสาธารณะ - ฟิลด์จำเป็นต้องตอบ
หากคุณใช้ตารางผู้เข้าร่วมแบบสอบถามและอนุญาตการลงทะเบียนสาธารณะด้วย ผู้ใช้จะเห็นข้อความต่อไปนี้:

ดังที่เห็นข้างต้น มีเพียงฟิลด์อีเมลเท่านั้นที่จำเป็นต้องตอบ
หากต้องการให้ทั้งสามฟิลด์เป็นฟิลด์จำเป็นต้องตอบ โปรดแก้ไขธีมแบบสำรวจของคุณตามนั้น หากคุณใช้ธีม Fruity ให้ไปที่หน้าจอ การลงทะเบียน แล้วดูว่าฟิลด์อีเมลของผู้เข้าร่วมมีลักษณะอย่างไร:
{# Participants email #}
<div class='{{ aSurveyInfo.class.registerformcolrowc }} form-group row' {{ aSurveyInfo.attr.registerformcolrowc }}>
<label {{ aSurveyInfo.attr.registerformcolrowclabel }} class='{{ aSurveyInfo.class.registerformcolrowclabel }} control-label'> {{ gT("Email address:") }} {{ include('./subviews/registration/required.twig') }}</label>
<div {{ aSurveyInfo.attr.registerformcolrowcdiv }} >
{{ C.Html.textField('register_email', aSurveyInfo.sEmail, ({'id' : 'register_email','class' : 'form-control input-sm','required' : true})) }}
</div>
</div>
จากนั้น ให้แก้ไขฟิลด์ชื่อและนามสกุลในลักษณะเดียวกัน โดยเพิ่มลาเบล:
{{ include('./subviews/registration/required.twig') }}
และเพิ่มบรรทัดนี้ซึ่งทำให้ฟิลด์ดังกล่าวจำเป็นต้องกรอก:
'required' : true
ไฟล์ที่แก้ไขแล้วควรมีลักษณะดังนี้:
{# Participants first name #}
<div class='{{ aSurveyInfo.class.registerformcolrow }} form-group row' {{ aSurveyInfo.attr.registerformcolrow }}>
<label for='register_firstname' class='{{ aSurveyInfo.class.registerformcolrowlabel }} control-label '>{{ gT("First name:") }} {{ include('./subviews/registration/required.twig') }}</label> {# extra label #}
<div class="">
{{ C.Html.textField('register_firstname', aSurveyInfo.sFirstName, ({'id' : 'register_firstname','class' : 'form-control', 'required' : true})) }} {# mandatory field #}
</div>
</div>
{# Participants last name #}
<div class='{{ aSurveyInfo.class.registerformcolrowb }} form-group row' {{ aSurveyInfo.attr.registerformcolrowb }}>
<label {{ aSurveyInfo.attr.registerformcolrowblabel }} class='{{ aSurveyInfo.class.registerformcolrowblabel }} control-label '>{{ gT("Last name:") }} {{ include('./subviews/registration/required.twig') }}</label> {# extra label #}
<div {{ aSurveyInfo.attr.registerformcolrowbdiv }} >
{{ C.Html.textField('register_lastname', aSurveyInfo.sLastName, ({'id' : 'register_lastname', 'class' : 'form-control', 'required' : true})) }} {# mandatory field #}
</div>
</div>
ตอนนี้ หน้าลงทะเบียนสาธารณะควรมีลักษณะดังนี้ (ทุกฟิลด์จำเป็นต้องตอบ):

การซ่อนตัวสลับภาษา
ขั้นตอนการซ่อนตัวสลับภาษาทั้งสองตัว (ใกล้ชื่อการสำรวจและที่มุมขวาบนของหน้า) อธิบายไว้ในส่วนของวิกิที่เกี่ยวกับแบบสำรวจหลายภาษา
การซ่อน "ออกจากแบบสำรวจและลบข้อมูล"
หากคุณต้องการซ่อนปุ่ม "ออกจากแบบสำรวจและลบข้อมูล" คุณต้องแก้ไขไฟล์ nav_bar.twig ที่อยู่ภายในธีมแบบสำรวจของคุณ

บรรทัดที่ต้องลบออก (หรือคอมเมนต์ออก) คือ:
{{ include('./subviews/navigation/clearall_links.twig') }}

ตอนนี้ จะไม่มีตัวเลือกให้ออกจากแบบสำรวจและลบข้อมูลอีกต่อไป

ช่วยด้วย ฉันเผลอ...
ฉันลืมรหัสผ่านผู้ดูแลระบบ จะรีเซ็ตได้อย่างไร?
เวอร์ชัน 6.x
- เข้าถึงเซิร์ฟเวอร์ของคุณผ่านบรรทัดคำสั่ง (เช่น ssh)
- ตรวจสอบให้แน่ใจว่าคุณสามารถใช้บรรทัดคำสั่ง php ได้ (ดู http://php.net/features.commandline.php)
- ไปที่ไดเรกทอรี LimeSurvey ของคุณ
- เรียกใช้คำสั่งนี้
php application/commands/console.php resetpassword NEW_ADMIN_NAME NEW_ADMIN_PASSphp อาจต้องระบุพาธไดเรกทอรีแบบเต็ม เช่น /usr/bin/php
เวอร์ชัน 2.x
- เข้าถึงเซิร์ฟเวอร์ของคุณผ่านบรรทัดคำสั่ง (เช่น ssh)
- ตรวจสอบให้แน่ใจว่าคุณสามารถใช้บรรทัดคำสั่ง php ได้ (ดู 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_PASSphp อาจต้องระบุพาธไดเรกทอรีแบบเต็ม เช่น /usr/bin/php
เวอร์ชัน 2.x.x และใหม่กว่า เมื่อมีเฉพาะการเข้าถึงผ่าน FTP
เปลี่ยนรหัสผ่านในฐานข้อมูลโดยตรง
หากคุณสามารถเข้าถึงฐานข้อมูล LimeSurvey ได้โดยตรง คุณสามารถเปลี่ยนรหัสผ่านเดิมได้โดยอัปโหลดรหัสผ่านใหม่ในรูปแบบแฮช SHA256 คุณสามารถสร้างแฮช SHA256 ของรหัสผ่านของคุณได้ที่นี่
ตัวอย่างเช่น คุณสามารถใช้คำสั่งนี้เพื่อตั้งรหัสผ่านเป็น password:
UPDATE lime_users SET password = 0x35653838343839386461323830343731353164306535366638646336323932373733363033643064366161626264643632613131656637323164313534326438 WHERE uid =1;
ในที่นี้ใช้คำนำหน้าตารางเป็น lime_ และได้เลือกฐานข้อมูลไว้แล้ว
ฉันจะกู้คืนข้อมูลจากแบบสำรวจที่ปิดใช้งานแล้วได้อย่างไร?
เราขอแนะนำให้ใช้ตัวเลือกหมดเวลาเสมอ แทนการปิดใช้งานแบบสำรวจ หากคุณปิดแบบสำรวจโดยไม่ได้ตั้งใจ สิ่งสำคัญคือคุณต้องไม่เปลี่ยนแปลงสิ่งใดในแบบสำรวจนั้น!
จากนั้น และต้องทำตามลำดับนี้เท่านั้น ขั้นตอนต่อไปนี้จึงจะใช้งานได้:
- เปิดใช้งานแบบสำรวจของคุณอีกครั้ง
- เลือก การตอบคำถาม จากแถบเครื่องมือของแบบสำรวจ
- คลิก นำเข้า แล้วเลือกรายการเมนู "นำเข้าคำตอบจากตารางแบบสำรวจที่ปิดการใช้งาน"
- เลือกตารางแหล่งที่มาของคุณ
- คลิกปุ่ม "นำเข้า" ที่อยู่ด้านขวาบนของหน้าจอ
ฉันลบคำถาม/กลุ่มคำถาม/แบบสำรวจไปแล้ว!
หากคุณลบไปแล้ว ข้อมูลนั้นจะหายไปถาวร มีเพียงการทำสำรองเท่านั้นที่จะช่วยให้คุณกู้คืนได้
ความต้องการด้านฮาร์ดแวร์และซอฟต์แวร์
สำหรับความต้องการทั่วไป โปรดดูคำแนะนำการติดตั้งของเรา
LimeSurvey มีข้อจำกัดอะไรบ้าง..
...เกี่ยวกับความเร็ว
LimeSurvey ไม่มีการจำกัดความเร็ว ทุกอย่างขึ้นอยู่กับความเร็วของเซิร์ฟเวอร์และการเชื่อมต่อของคุณ หากคุณคาดว่าจะมีผู้ใช้จำนวนมากในช่วงเวลาสั้นๆ และไม่แน่ใจว่าเซิร์ฟเวอร์ของคุณจะรองรับได้หรือไม่ โปรดค้นหาหัวข้อที่คล้ายกันในฟอรัมของเรา! ใช้ LimeSurvey Cloud หรือติดต่อพาร์ทเนอร์ที่ได้รับอนุญาตของ LimeSurvey
...เกี่ยวกับขนาดของแบบสำรวจ
MySQL และ MariaDB
หมายเหตุ: "ขนาดของแบบสำรวจ" หมายถึงจำนวนคำถาม (และคำตอบ) สูงสุดในแบบสำรวจของคุณ - อย่าสับสนกับจำนวนการตอบกลับในแบบสำรวจ (ซึ่งไม่มีข้อจำกัด) ในทางทฤษฎี LimeSurvey ก็ไม่มีขีดจำกัดสำหรับจำนวนคำถาม/คำตอบสูงสุดเช่นกัน แต่เอนจินฐานข้อมูลที่คุณใช้มีข้อจำกัดหลายอย่าง ข้อจำกัดที่สำคัญที่สุดคือจำนวนฟิลด์ (คอลัมน์) ในตารางผลลัพธ์
- MySQL ISAM: ผลรวมความยาวของคอลัมน์ VARCHAR และ CHAR ในตารางอาจมีได้สูงสุด 64KB
- MySQL InnoDB: สูงสุด 1000 คอลัมน์
- MS SQL Server 2000: สูงสุด 1024 คอลัมน์ หนึ่งแถวมีขนาดสูงสุด 8,060 ไบต์ ดังนั้นแม้จะเปิดใช้งานแบบสำรวจได้ แต่หากคุณมีข้อมูลข้อความจำนวนมาก ผู้เข้าร่วมอาจไม่สามารถส่งคำตอบได้…
- Postgres: สูงสุด 250-1600 คอลัมน์ ขึ้นอยู่กับชนิดของคอลัมน์ จำนวนคอลัมน์สูงสุดสามารถเพิ่มได้สี่เท่าโดยการเพิ่มขนาดบล็อกเริ่มต้นเป็น 32k ดู คำถามที่พบบ่อยเกี่ยวกับการติดตั้ง และ PostgreSQL FAQ
เอนจิน mySQL ISAM เป็นเอนจินที่จัดการยากที่สุด (ดู เอกสารของ mysql สำหรับข้อมูลเพิ่มเติม) เนื่องจากอนุญาตเพียง 65,535 ไบต์ต่อแถว และอักขระ utf8 อาจต้องใช้ถึงสามไบต์ต่ออักขระ จึงอาจรองรับได้สูงสุดเพียง 21,844 อักขระ (แต่ขึ้นอยู่กับการเข้ารหัสของฐานข้อมูลของคุณ)
คุณสามารถคำนวณขนาดของแบบสำรวจโดยประมาณได้ดังนี้:
- คำถามตัวเลขแบบหลายค่าทุกข้อ: 20 อักขระ ต่อหนึ่งคำตอบ
- คำตอบของคำถามแบบเลือกตอบได้หลายตัวและแบบอาร์เรย์ทุกข้อ: 5 อักขระ ต่อหนึ่งคำตอบ
- ประเภทคำถามอื่นๆ ทั้งหมด: 5 อักขระ
- เพิ่ม 10% สำหรับส่วนเกินปกติ
กับ Microsoft SQL
MSSQL ไม่มีขีดจำกัดที่แน่นอน ดูข้อมูลบนเว็บไซต์ของ Microsoft
ขีดจำกัด 8,060 ไบต์ต่อแถวอาจเกิดขึ้นหลังจากเปิดใช้งาน เมื่อคุณต้องการเรียกดูการตอบคำถามและข้อมูล คุณสามารถส่งออกรหัสคำตอบแทนข้อความคำตอบ หรือลองส่งออกเพียงบางคอลัมน์
กับ PostgreSQL
เมื่อคุณพยายามส่งออกการตอบคำถาม คุณอาจพบข้อผิดพลาด SQLSTATE[54000] คุณสามารถส่งออกเพียงบางคอลัมน์ได้ ดูโพสต์ในฟอรัม
วิธีเพิ่มจำนวนคอลัมน์สูงสุดใน PostgreSQL
หากแบบสำรวจของคุณมีคำถามมากเกินไป คุณสามารถกำหนดขนาดบล็อกที่แตกต่างออกไปใน PostgreSQL เพื่อสร้างคอลัมน์ได้มากขึ้น ซึ่งอาจทำได้ยาก เพราะคุณต้องคอมไพล์ PostgreSQL ใหม่และตั้งค่า BLCKSZ ให้สูงขึ้น เช่น 16kiB หรือ 32kiB ให้สังเกตตัวเลือกการกำหนดค่า "--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
หมายเหตุ: ไม่สามารถทำซ้ำขั้นตอนข้างต้นได้ บน Ubuntu 14.04 ในเดือนสิงหาคม 2014 จำเป็นต้องมีแพตช์ (ตัวเลือกการกำหนดค่าอย่างเดียวไม่เพียงพอ) ดู (ทดสอบกับ PostgreSQL 9.3 บน Linux): คำแนะนำในการเพิ่มจำนวนคอลัมน์สูงสุดใน PostgreSQL บน Linux
ข้อผิดพลาดร้ายแรง: 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:
- memory_limit = 128M ในไฟล์ php.ini หลักของเซิร์ฟเวอร์ (แนะนำ หากคุณมีสิทธิ์เข้าถึง)
- memory_limit = 128M ในไฟล์ php.ini ในโฟลเดอร์รากของ LimeSurvey
- php_value memory_limit 32M ในไฟล์ .htaccess ที่อยู่ในโฟลเดอร์รากของ LimeSurvey
- " ini_set('memory_limit', '128M'); " ในไฟล์ config.php ของคุณ
การกำหนดค่าเฉพาะ
ในบางกรณี คุณจำเป็นต้องอัปเดตการกำหนดค่าของ LimeSurvey ในไฟล์ application/config/config.php
IE 11 และ Windows 7 / Windows 8
มีปัญหาที่ทราบกันดีเกี่ยวกับเซสชันใน IE 11 ซึ่งทำให้ผู้ใช้ไม่สามารถทำแบบสำรวจให้เสร็จสมบูรณ์ได้
สามารถแก้ไขได้โดยการตั้งชื่อเซสชันที่ไม่ซ้ำกัน
ทำได้โดยเพิ่มโค้ดต่อไปนี้ลงในไฟล์การกำหนดค่า
// Set the name of the session
'session' => array (
'sessionName' => "YOURUNIQUESESSIONNAME",
),
LimeSurvey สองอินสแตนซ์บนโดเมนเดียวกัน
หากคุณรัน LimeSurvey 2 อินสแตนซ์บนโดเมนเดียวกันแต่อยู่ในไดเรกทอรีที่แตกต่างกัน คุณจำเป็นต้องอัปเดตการกำหนดค่าเซสชัน
ตัวอย่างเช่น หากคุณมี example.org/ls1 และ example.org/ls2 ให้อัปเดตไฟล์การกำหนดค่าของ ls1:
'session' => array (
'cookieParams' => array(
'path' => '/ls1',
),
),
'request' => array(
'csrfCookie' => array( 'path' => '/ls1' )
),