如何创建包含列表的页面,列表中的每个项目都会转换为一个链接,在该链接中会将您发送到另一个页面,其中只有链接的问题列表。很难解释。
a table column called "quiz_name" in a database consist of
id quiz_name question_descripition
1 Jordan How are you?
2 Jordan How old are you?
3 Josh Where are you from?
4 Jordan Favorite Color?
5 Josh Favorite Movie?
我创建了一个名为quiz_name.php的页面,我使用
$mysql = "SELECT DISTINCT quiz_name FROM $table";
$mydata = mysql_query($mysql,$con);
while($records = mysql_fetch_array($mydata)){
$quizname=$records['quiz_name'];
$_SESSION['quiz_name']=$quizname."</br>";
echo $quizname;
echo "<a href=http://localhost/xampp/Website_DataBase/Pvamu_website/quiz_folder/quiz_layout.php>".$quizname."</a></br>";
显示超链接列表。
List:
1. Jordan
2. Josh
我想点击Jordan并转到我的测验布局页面并根据quiz_name = Jordan
显示所有问题然后我想点击Josh并转到我的测验布局页面并根据quiz_name = Josh显示所有问题
quiz_layout.php
Display(quiz_name)
Question #1
Option 1
Option 2
Option 3
Question #2
Option 1
Option 2
Option 3
示例:
Display(Jordan)
How are you? #1
Option 1
Option 2
Option 3
How old are you #2
Option 1
Option 2
Option 3
答案 0 :(得分:0)
使用以下链接开始:
<a href=?name=<?=$quizname?></a>
这将确保您保持与现在相同的页面。
下一部分是添加一些功能,以查看名称是否实际设置。
if($_GET['name'])
{
//make sure to check user input! Never trust user input. Do that here. Please read some information about SQL injections and escaping input. Also use something like PDO.
$quiz = $_GET['name']
// Do a select where the name is equal on the input, and output the right questions.
}
答案 1 :(得分:0)
由于用户可以在浏览器地址栏中使用GET变量并且您将在SQL查询中使用这些变量,因此在quiz_name.php中使用带有POST方法的表单和Jordan的单选按钮会更好Josh而不是附加到URL的变量的链接。
用于捕获POST变量的page_layout.php中的PHP代码应为:
$name = '';
if ( !empty( $_POST['name'] ) && $_POST['name'] != '' ) {
$name = $_POST['name'];
}
然后,要为测验布局页面获取正确的内容,可以在SQL查询中使用WHERE子句。像(这是一个PHP字符串):
"SELECT * FROM $table WHERE $table.quiz_name = '$name'"
这将仅检索名称的适当问题(来自question_description列)(来自quiz_name列)。