如何创建一个下拉菜单的调查应用程序的答案在php


how to create a drop down menu for the answers of a survey app in php

我刚刚开始构建一个调查应用程序,其中包含不同类型的答案(例如复选框,单选按钮,是/否等)。

我的问题是,我不知道如何显示一些问题的答案,如"谁是你最喜欢的演员?"我考虑过自动完成或下拉框(例如按字母顺序),用户可以从中选择他们最喜欢的演员,但我不知道如何做到这一点。

我搜索了类似的问题,如如何创建下拉菜单[关闭],创建下拉菜单,PHP动态下拉菜单,我读了这个教程,但我仍然很困惑如何使这种类型的答案(也因为我不知道我怎么能在我的数据库中设计它们)。

为了设计我的数据库,我想创建4个表:

Questions (questionId, questionText, questionType)

Answers (answerId, questionId, answer)

UsersAnswer (userAnswerId, AnswerId, UserId, userAnswer)

Users (userId, userName,…)

你需要jquery和它的尺寸:

放置在页面顶部:

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dimensions.js"></script>
<script type="text/javascript" src="autocomplete.js"></script>

现在你需要一个函数来调用…

<script type="text/javascript">
$(function(){      setAutoComplete("searchField", "results", "autocomplete.php?part=");  });
</script>

现在输入(客户端):

<label>Actors: </label><input type="text" id="searchField" name="searchField">
PHP(服务器端):

$link = mysql_connect('localhost', 'dbUsername', 'dbPassword');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
if (!mysql_select_db("database")) {
echo "Unable to select mydbname: " . mysql_error();
exit;
}
$result = mysql_query("SELECT name FROM  sks_color");
while ($row = mysql_fetch_assoc($result)) {
$colors[]=$row['name'];
}
mysql_free_result($result);
mysql_close($link);        // check the parameter
if(isset($_GET['part']) and $_GET['part'] != '')
{
// initialize the results array
$results = array();        // search colors
foreach($colors as $color)
{
// if it starts with 'part' add to results
if( strpos($color, $_GET['part']) === 0 ){
$results[] = $color;
}
}         // return the array as json with PHP 5.2
echo json_encode($results);
}

请记住,这是返回一个JSON对象…

链接:

    AJAX自动完成PHP 教程