使用php从数据库中获取作为选项值的值
所以我在做我们的论文,我需要将一些值从我的sql数据库传输到我的数据库 以下是示例代码:使用php从数据库中获取作为选项值的值,php,html,Php,Html,所以我在做我们的论文,我需要将一些值从我的sql数据库传输到我的数据库 以下是示例代码: <tr> <td id="t" align="center">Subject: <select name="subj"> <?php $con = mysql_connect("localhost","root"); if (!$con) { die('Coul
<tr>
<td id="t" align="center">Subject: <select name="subj">
<?php
$con = mysql_connect("localhost","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("sps_ccp",$con);
$college=$_SESSION['college1'];
$sql="SELECT * FROM subject_db WHERE crs='$college'";
$result=mysql_query($sql,$con);
$count=mysql_num_rows($result);
//echo $count;
for($ctr=0;$ctr<$count;$ctr++)
{
$sql1="SELECT subject FROM subject_db WHERE crs='$college'";
$subj=mysql_query($sql1,$con);
$subj1=mysql_result($subj,$ctr);
echo "<option value=".$subj1.">".$subj1."</option>";
}
?>
</select>
</td>
<tr>
<td id="t">Building: <select name="build">
<option value="hr">HR Building</option>
<option value="pr">PR Building</option>
<option value="gv">GV Building</option>
</select>
</td>
<td id="t">Room: <select name="room">
<?php
if(isset($_POST['build'])){
if($_POST['build']=='hr')
{
$hr = mysql_query("SELECT * FROM hrbuilding");
$h1 = mysql_num_rows($hr);
while(mysql_fetch_array($hr)){
if(h1>0)
{
echo "<option value=".$hr.">".$hr."</option>";
}
}
}
}
?>
</td>
主题:
两个都不起作用。它在选项框上没有值。我确实检查了我的数据库,我认为它没有任何问题。我问过某人如何处理这个问题,但他建议使用javascript,我真的不明白它是如何工作的。
希望你能帮助我:)谢谢 由于缺少
会话_start(),第一个代码体可能无法工作代码>这是使用时必需的。由于它必须位于顶部,您可能会收到一个错误,指出标题已发送…
,因此您需要将HTML与PHP分开,将PHP置于顶部,或者将ob_start()置于顶部代码>在会话_start()的顶部代码>
您的第二个代码体很可能会失败,因为该if(h1>0)
应该读为if($h1>0)
您遗漏了$
符号
另外,在您的第一段代码中,您缺少以下密码参数:(如果不是输入错误)
应改为:
$con = mysql_connect("localhost","root","password");
从
<强> N.B: 请考虑切换到<代码> MySqLI**<代码>函数。code>mysql.*
函数已弃用,将从以后的版本中删除。我认为您在这里有一个错误:
您从查询中获得结果,但再次调用相同的查询,但实际上没有得到字段(仅是查询的资源)。value
属性中还缺少一个引号
要修复:
$db_selected = mysql_select_db("sps_ccp",$con);
$college=$_SESSION['college1'];
$sql="SELECT * FROM subject_db WHERE crs='$college'";
$result=mysql_query($sql,$con);
$count=mysql_num_rows($result);
//echo $count;
while($row=mysql_fetch_assoc($result)) {
echo '<option value="'.$row["subject"].'">'.$row["subject"].'</option>';
}
希望这能对你有所帮助
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<select name="sample_s">
<?php
mysql_connect("localhost","root","your_password");
mysql_select_db("db_name");
if(mysql_errno())
die("Database Server is Offline");
$q=mysql_query("SELECT `id`, `opt` FROM `sample`");
if(mysql_num_rows($q)){
while($m=mysql_fetch_assoc($q))
{
echo '<option value="'.$m["opt"].'">'.$m["opt"].'</option>';
}
}
?>
</select>
</body>
</html>
您得到了什么结果?您正在打印错误消息吗?@General\u Twyckenham我只是在获取一个选项框的值。我应该照张相吗?我真的不擅长解释事情。我不是在打印错误消息,只是试图从数据库中获取条件语句的值。至少描述一下什么不起作用。你得到了错误的值吗?没有值?步骤1:在php文件顶部写入错误报告(1)
。第二步:在每一步(每一个if语句)进行检查,看看你是否真的达到了目的。例如:在if(isset($\u post['build'])之后,生成一行echo“Variable build is set”代码>。这将让你看到你的程序正在达到什么阶段。旁注:第一个阶段可能没有工作,因为缺少会话_start()代码>这是使用会话时必需的。谢谢,我尝试了它,但选项框仍然没有值。不客气。您还需要有…
标记,我在您的代码中没有看到这些标记。你在用它们吗@Jessica也在这行echo“$hr”代码>应该看起来像echo“$hr”代码>或回显“$hr”代码>@Jessicajoy谢谢我试过了,但选项框还是没有值。我现在在猜测,但是这次会议产生的$college
的价值是什么?你能把它打印出来吗?该值是否为有效(存在)crs
字段?您是否可以硬编码一个值,以查看它是否工作,而不是会话?你能使用我编辑答案的功能吗?谢谢,我试过了,但选项框仍然没有值。
$db_selected = mysql_select_db("sps_ccp",$con);
$college=$_SESSION['college1'];
$sql="SELECT * FROM subject_db WHERE crs='$college'";
$result=mysql_query($sql,$con);
$count=mysql_num_rows($result);
//echo $count;
while($row=mysql_fetch_assoc($result)) {
echo '<option value="'.$row["subject"].'">'.$row["subject"].'</option>';
}
// very top of file
ini_set("display_errors",1);
error_reporting(E_ALL);
// now, just call your PHP code but in between 2 calls
ob_start();
...call your PHP code here
$buffer = ob_get_clean();
echo $buffer; // what is here? place it so you can see on screen what it says
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<select name="sample_s">
<?php
mysql_connect("localhost","root","your_password");
mysql_select_db("db_name");
if(mysql_errno())
die("Database Server is Offline");
$q=mysql_query("SELECT `id`, `opt` FROM `sample`");
if(mysql_num_rows($q)){
while($m=mysql_fetch_assoc($q))
{
echo '<option value="'.$m["opt"].'">'.$m["opt"].'</option>';
}
}
?>
</select>
</body>
</html>