2017-03-28 66 views
3

我有一个章节的选择标记,我加载了查询结果。但它没有显示在选择标签中,章节名称显示为回显语句。数据没有显示在选择标记

 <!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>MCQ Questions</title> 

</head> 
<body> 

<?php 
session_start(); 

$dbh = new PDO('mysql:host=174.75.54;dbname=handbook', 'airman', 'airman'); 

    $type = $_POST['type']; 
    $question = $_POST["question"]; 
    $optionA = $_POST["opt1"]; 
    $optionB = $_POST["opt2"]; 
    $optionC = $_POST["opt3"]; 
    $optionD = $_POST["opt4"]; 
    $ans = $_POST["ans"]; 
    $chapter = $_POST["chapter"]; 
?> 

<form method="post" action="mcq.php" enctype="multipart/form-data"> 


<?php if(isset($_POST['question'])) 
{ 
?> 

Enter the question: <input name="question" type="text" value = "<?php echo $question?>"</input> <br><br> 
<?php 
} 
else 
{ 
?> 
    <p> Enter the question :</p> <input name="question" type="text"></input> <br><br> 

<?php 
} 
?> 

Select rank : 

<select name="type" id="type" onchange="this.form.submit()"> 

<?php if(isset($_POST['type'])) 
{ ?> 
<option value="1" <?php echo($type==1?"selected":"");?>>SSgt</option> 

<option value="2" <?php echo($type==2?"selected":"");?>>TSgt</option> 
<option value="3" <?php echo($type==3?"selected":"");?>>MSgt</option> 
</select> 
<?php 
} 
    else 
    { 
    ?> 
    <option value="1">SSgt</option> 
<option value="2">TSgt</option> 
<option value="3">MSgt</option> 
</select> 
    <?php 
    } 
    ?> 

<br><br> 
<?php if(isset($_POST['opt1'])) 
{ ?> 
<p> Enter options :</p> 
Enter option A : <input name="opt1" type="text" value = "<?php echo $optionA?>"</input> <br><br> 

<?php 
} 
else{ 
?> 
<p> Enter options :</p> 
Enter option A : <input name="opt1" type="text"> <br><br> 
<?php 
} 
?> 
<?php if(isset($_POST['opt2'])) 
{ ?> 

Enter option B : <input name="opt2" value = "<?php echo $optionB?>"</input> <br><br> 

<?php 
} 
else{ 
?> 
Enter option B : <input name="opt2" type="text"> <br><br> 
<?php 
} 
?> 

<?php if(isset($_POST['opt3'])) 
{ ?> 
Enter option C : <input name="opt3" value = "<?php echo $optionC?>"</input> <br><br> 

<?php 
} 
else{ 
?> 

Enter option C : <input name="opt3" type="text"> <br><br> 

<?php 
} 
?> 

<?php if(isset($_POST['opt4'])) 
{ ?> 
Enter option D : <input name="opt4" value = "<?php echo $optionD?>"</input> <br><br> 
<?php 
} 
else{ 
?> 

Enter option D : <input name="opt4" type="text"> <br><br> 

<?php 
} 
?> 


Select correct answer : 

<select name="ans" id="type"> 


<?php if(isset($_POST['ans'])) 
{ 
?> 
<option value="A" <?php echo($ans==A?"selected":"");?>>A</option> 

<option value="B" <?php echo($ans==B?"selected":"");?>>B</option> 

<option value="C" <?php echo($ans==C?"selected":"");?>>C</option> 

<option value="D" <?php echo($ans==D?"selected":"");?>>D</option 
</select> 

<br><br> 
<?php 
} 
else 
{ 
?> 

<option value="A">A</option> 
<option value="B">B</option> 
<option value="C">C</option> 
<option value="D">D</option> 
</select> 
<?php 
} 
?> 
<br><br> 

Select Chapter : 
<select name="chapters" id="chapters"> 

<?php 

if(isset($_POST['type'])) 
{ 
    $stmt = $dbh->prepare("SELECT * FROM chapters where type = :type"); 
    $stmt->bindParam("type", $type); 
$stmt->execute(); 
$results = $stmt->fetchall(PDO::FETCH_ASSOC); 

if(count($results > 0)){ 
foreach($results as $row):?> 
<option value="<?php echo $row['id'];?>"><?php echo $row['title'];?></option> 
<?php 
endforeach; 
}else{?> 

<option value="0">No data found</option> 
<?php 
} 

} 

else{ 

$stmt = $dbh->prepare("SELECT * FROM chapters where type = 1"); 

$stmt->execute(); 
$results = $stmt->fetchall(PDO::FETCH_ASSOC); 

if(count($results > 0)){ 
foreach($results as $row):?> 
<option value="<?php echo $row['id'];?>"><?php echo $row['title'];?></option> 
<?php 
endforeach; 
}else{?> 

<option value="0">No data found</option> 
<?php 
} 
} 
?> 

</select> <br><br> 

<input type="Submit" value = "Submit" name="b1"> 

<?php 

if(isset($_POST['b1'])) 
{ 

ini_set('display_errors', 1); 
error_reporting(1); 
ini_set('error_reporting', E_ALL); 

$type = $_POST['type']; 
$question = $_POST['question']; 
$optionA = $_POST['opt1']; 
$optionB = $_POST['opt2']; 
$optionC = $_POST['opt3']; 
$optionD = $_POST['opt4']; 
$ans = $_POST['ans']; 
$chapter = $_POST['chapters']; 

    $stmt = $dbh->prepare("INSERT INTO questions (question,answer_a,answer_b,answer_c,answer_d,answer,type,chapterId) VALUES (?, ?, ?, ?, ?, ?, ?,?)"); 
$stmt->execute(array($question, $optionA, $optionB, $optionC, $optionD, $ans,$type,$chapter)); 

if ($dbh->lastInsertId()) 
{ 
    echo 'Question submitted.'; 

    echo '<a href="mcq.php">Upload another question.</a>'; 
    session_destroy(); 
} 
else 
{ 
    echo 'Question could not submit.'; 
} 
} 
?> 

</form> 
</body> 
</html> 

它加载的数据在选择标签月1日的时间,如果类型没有设置,但如果类型设置它显示了样回声语句章节。

这里有什么问题?请帮助谢谢你。

回答

3

我建立我的选项在PHP然后回显在php

IF ($row[$i]['abc'] == 'A'){ 
$a[$i]='<option value="A" selected="selected">A</option>'; 
$b[$i]='<option value="B" >B</option>'; 
} 
IF ($row[$i]['abc'] == 'B'){ 
$a[$i]='<option value="A" >A</option>'; 
$b[$i]='<option value="B" selected="selected" B</option>'; 
} 

整个字符串这样 在我的HTML

<select> 
    <php? echo $a[$i]; ?> 
    <php? echo $b[$i]; ?> 
</select> 

总是工作,并将它放在正确的数据

为练习和学习创建一个名为try1.php的文件

<?php 

$1='<option value="1">1</option>'; 
$2='<option value="2">2</option>'; 
//name of your selection 
if(isset($_POST['1']){ 
echo 'you selected : '.$_post['1']; 

} 
?> 
<html> 
<body> 
<select name="1"> 
<?php echo $1; ?> 
<?php echo $2; ?> 
</select> 
<input type="submit" name="1" value="1"> 
</body> 
</html> 

这是从一个文件我为我的妻子做了代码,它已经工作了两年,但它很旧,可是没有功能得到什么选择

<?php 
session_start(); 
include_once("../staffpage/getstaff.php"); 
include_once("../staffpage/staffheader.php"); 
include_once("../cert/dbc.php"); 
?> 
<html> 
    <head> 
    </head> 
     <body> 
     <h1>&#20250;&#21592;&#27880;&#20876;</h1> 

     <form action="direct to you php file handling your indput.php" method="post"> 
      <tr> 
      <td> 
       <table width="60%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"> 
       <tr> 
        <td colspan="3"><strong>&#20250;&#21592;&#27880;&#20876;</strong></td> 
       </tr> 
        <tr> 
      <td width="78">&#21345;&#21495;</td> 
     <td width="6">:</td> 

     <td width="294"><input type="text" name="cno" required/></td> 
     </tr> 
     <td width="78"> &#25910;&#25454;&#21495;</td> 
     <td width="6">: 
     </td> 

     <td width="294"><input type="text" name="rno" required/></td> 

     </td> 
     </tr> 
     <td width="78"> &#22995;&#21517;</td> 
     <td width="6">:</td> 
     <td width="294"><input type="text" name="fname" required/></td> 
     </tr> 


     <td width="78">&#30005;&#35805;</td> 
     <td width="6">:</td> 
     <td width="294"><input type="text" name="ctel" required/></td> 
     </tr> 


     <td width="78"> cardname </td> 
     <td width="6">:</td> 
     <td width="294"> 
     <select name="cardnameno" > 
      <?php 
       //my query in this file 
       include_once("../sec/cards.php"); 
       $i=0; 
       while($row = mysql_fetch_array($result)) { 
       $z2=$row['cardname']; 
       $z1=$row['cardnameno']; 
       ?> 

      <option value="<?php echo $row['cardnameno']; ?>" ><?php echo $row['name']; ?></option> 
      <?php 
      $i++; 
      } 
      ?> 
     </select> 

     </tr> 
     <tr> 
      <td>&nbsp;</td> 
      <td>&nbsp;</td> 
      <td><input type="submit" /></td> 
     </tr> 
    </table> 
</form></p> 
    </div> 
</form> 
</body> 
</html> 
</html> 

我包括在另一个文件,但应不要停止工作

+0

我该如何在我的代码中实现这个功能?我只使用一个PHP文件。 – Sid

+0

也只使用1个文件,但你必须记住,直到你在isset中发布代码($ _ post将不会在