填充数据库值的下拉列表

时间:2015-10-11 17:17:03

标签: php jquery mysql css3 dropdown

如何使用数据库值填充此下拉框。虽然这个问题似乎是重复的,但我在网上尝试了很多其他问题,但它们没有用。谢谢。

<div class="control-group <?php echo !empty($companynameError)?'error':'';?>">
                    <label class="control-label">SELECT COMPANY:</label>
                    <div class="controls">
                        <select name="companyname" id="companyname" onChange="enabledropdown()" placeholder="Product Type" value="<?php echo !empty($companyname)?$companyname:'';?>">
                        <?php if (!empty($companynameError)): ?>
                            <span class="help-inline"><?php echo $companynameError;?></span>
                        <?php endif; ?>
                        <?php
                            $pdo = Database::connect();
                            $cdquery = "SELECT companyname FROM company WHERE username=" .mysql_real_escape_string($_SESSION['username']);
                            $cdresult=mysql_query($cdquery) or die ("Query to get data from company failed: ".mysql_error());
                            while ($cdrow=mysql_fetch_array($cdresult)) {
                                $cdTitle=$cdrow["companyname"];
                                    echo "<option>
                                        $cdTitle
                                    </option>";
                                }   
                            Database::disconnect();
                        ?>
                        </select>
                    </div>
                  </div>

3 个答案:

答案 0 :(得分:1)

<?php

$pdo = Database::connect();
$cdquery = "SELECT companyname FROM company WHERE username='" . mysql_real_escape_string($_SESSION['username']) . "'";
$cdresult = mysql_query($cdquery) or die("Query to get data from company failed: " . mysql_error());
while ($cdrow = mysql_fetch_array($cdresult)) {
    $cdTitle = $cdrow["companyname"];
    echo "<option>" .
    $cdTitle
    . "</option>";
}
Database::disconnect();
?>

根据您的代码。

答案 1 :(得分:0)

<?php
    mysql_connect('localhost', 'root', '');
    mysql_select_db('crud_tutorial');
    $test = "testedok";
    $sqli = "SELECT companyname FROM company WHERE username= '" . mysql_real_escape_string($test) . "'";
    $sqlquery = mysql_query($sqli);

    echo "<select name='sub1'>";
        while($row=mysql_fetch_array($sqlquery))
        {
            echo "<option value ='" .$row['companyname']. "'>" .$row['companyname']. "</option>";
        }
    echo "</select>";
?>

答案 2 :(得分:0)

为澄清起见,错误发生在这一行:

$cdquery = "SELECT companyname FROM company WHERE username=" .mysql_real_escape_string($_SESSION['username']);

OP的错误是不将用户名包装在引号中。正确的查询应如下所示:

$cdquery = "SELECT companyname FROM company WHERE username='".mysql_real_escape_string($_SESSION['username'])."'";