希望这个问题不会让任何人喝酒。 我已经在这里约9个小时了,不能得到一个下拉来填充。我知道我错过了一些非常简单的事情,我正在伸出手去看看是否有人能够给我一些见解。我打电话来的表有1列,只有名称(这是唯一的)从MySql和Php填充下拉选择
我有一个数据库类被称为在我的所有页面的开始,在所有除2例,其工作正常,在2个例外,它是需要下拉的页面。我删除并重新创建了两个页面,没有任何改变。
这两个页面都被命名为select.php和select_p.php。最初的电话如下,并在第一个分隔符“ - >”“?>”后,所以开始打印的一切,直到
include("database.class.php");
$database = new database;
$sql_page = $database->mysqlQuery("SELECT * FROM spec_tables");
$edata_page = $database->mysqlFetchArray($sql_page);
return $edata_page;
?>
继承人在类文件中的温控功能是其他2个站点工程和在这同一站点
function mysqlQuery($qry)
{
$rs = mysql_query($qry, $this->DatabaseLink);
return $rs;
echo mysql_error();
}
现在,如果我使用的代码在页面其他页面,它不打印,但下拉是空白
<select name='list' value=''><option>Select List</option>
<?
$sql_page = $database->mysqlQuery("SELECT * FROM spec_tables");
$edata_page = $database->mysqlFetchArray($sql_page);
return $edata_page;
foreach($edata_page as $row){
?>
<option value="<?php echo $row; ?>"><?php echo $row; ?></option>
<? } ?>
</select>
我看了以下(加上约20页那是不是这个接近)
PHP- Fetch from database and store in drop down menu html
How to put table value in a dropdown menu with MYSQL and PHP
http://www.plus2net.com/php_tutorial/list-table.php
http://www.tutorialrepublic.com/faq/how-to-populate-dropdown-list-with-array-values-in-php.php
这是我一直在努力,都无济于事的所有代码片段,他们中的一些实际打印代码在html表单中,任何建设性的帮助将非常感谢。
*********************************************************
<select name='list' value=''><option>Select List</option>
<?
$sql_page = $database->mysqlQuery("SELECT * FROM spec_tables");
$edata_page = $database->mysqlFetchArray($sql_page);
return $edata_page;
foreach($edata_page as $row){
?>
<option value="<?php echo $row; ?>"><?php echo $row; ?></option>
<? } ?>
</select>
*****************************************************************
<select name='list' value=''><option>Select List</option>
<?
$result = $database->mysqlQuery("select * from spec_tables");
if (!$result) die('Couldn\'t fetch records');
$num_fields = mysql_num_fields($result);
$row = array();
for ($i = 0; $i < $num_fields; $i++)
while ($row = mysql_fetch_row($result))
{
?>
<option value="<?php echo $row; ?>"><?php echo $row; ?></option>
<? } ?>
</select>
********************************************************************
<select name='list' value=''><option>Select List</option>
<?
$result = $database->mysqlQuery("select * from spec_tables");
if(mysql_num_rows($result) > 0){
while($row = mysql_fetch_array($result)) {
echo '<option value=". $row['name'] .">' . $row['name'] . '</option>';
}
}
?>
</select>
****************************************************************************
Placed in top of file
$servername = "localhost";
$username = "uname";
$password = "pword";
$dbname = "db_name";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
if ($result = mysqli->query("SELECT * FROM 'spec_tables'")) {
printf("Select returned %d rows.\n", $result->num_rows);
/* free result set */
$result->close();
}
**********************************************************************
<?
$sql = "select * from spec_tables";
$result = mysql_query($sql);
echo "<select name='list' value=''><option>Select List</option>";
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['name'] ."'>" . $row['name'] ."</option>";
}
echo "</select>";
?>
**************************************************
确定短标记被启用?听起来像他们不是。启用它们或将所有'<?'改为'<?php'。 –
摆脱mysql_并使用当前/现代/好的东西。 – mickmackusa
为什么不在代码中放置一些断点,查明查询是否实际返回结果集或错误。你是否在数据库中运行你的查询来证明它有效?做小而简单的检查最终会在某些情况下节省9个小时或更长时间。 – mickmackusa