使用sql在php中的文本框中显示变量值

时间:2013-09-07 03:40:06

标签: php sql variables

我正在尝试从一个.php文档中获取一个变量,以便在另一个文本框中显示。在此过程中,变量的值将返回到数据库以获取与变量相关的信息 更具体地说,用户从第一个表单上的动态填充下拉框中选择一个StudentID,然后转到另一个表单,其中所选的StudentID显示在第一个文本框中,以及其他数据(例如电子邮件地址,电话号码) 。)显示在下面的不同文本框中。然后,这允许用户修改显示的数据并将其保存回数据库。

我遇到问题的原因是变量值最初来自动态填充的下拉框。根据我的尝试,我不认为变量被传递给第二种形式。这是因为我尝试了不同的代码变体来使数据显示在文本框中,而且每次都没有显示。

以下是下拉框中的代码:

$query="SELECT StudentID FROM Personal_Details";
$result = mysql_query ($query);
echo '<select name= "StudentID">';
//Printing the list box select command
while($nt=mysql_fetch_array($result)){ /*Array or records stored in $nt*/
echo "<option value=$nt[StudentID]>$nt[StudentID]</option>";
/*Option values are added by looping through the array*/
}
echo "</select>"; //Closing of lost box
?>

对此我不熟悉,我假设变量是“StudentID”。

如果是这种情况,这是第二个.php文档中使用的代码,用于获取可变数值以及其他数据显示在文本框中:

$query=mysql_query("SELECT Email, Phone FROM Personal_Details WHERE StudentID = '$StudentID'") or die(mysql_error());
while ($row = mysql_fetch_row($query)) {
   $email = $row[1];
   $phone = $row[2];
}
?>

(这里有一些HTML代码来设置表单。我跳过了那个并直接找到了与问题相关的代码)

<form name="modstudent" method="post" action="modstudent2.php">
Student ID: <input name="StudentID" type="text" value="<?php printf("%s",$StudentID);?>"><br>
Email: <input name="email" type="text" value="<?php printf("%s",$email);?>"><br>
Phone: <input name="phone" type="text" value="<?php printf("%s",$phone);?>"><br>

任何帮助将不胜感激。提前谢谢。

更新

问题似乎是第一页未传递到第二页的变量。为了确保它是一个变量问题,将固定值替换为下面的代码:

$query=mysql_query("SELECT Email, Phone FROM Personal_Details WHERE StudentID = '/StudentID-here/'") or die(mysql_error());

需要更改什么才能传递变量?提前谢谢。

1 个答案:

答案 0 :(得分:0)

echo "<option value=".$nt[StudentID].">".$nt[StudentID]."</option>";或使用<option value=echo($nt[StudentID])>echo($nt[StudentID])</option>;