簡體   English   中英

使用 MySQL 填充 PHP/HTML 表單上的多個下拉框時出現“mysqli::query(): 無法獲取 mysqli”

[英]"mysqli::query(): Couldn't fetch mysqli" when using MySQL to populate multiple drop-down boxes on PHP/HTML form

我創建了一個帶有下拉元素的表單,該元素讀取 MySQL 表以填充選項,當它將表單數據寫入不同的字段時,它會寫入所選選項的行 ID。 當我只使用一個元素時,它會按預期工作,但是當我復制該元素時,它會引發以下錯誤:

State
警告:mysqli::query(): 無法獲取 /var/www/jobtrak/register.php 中的 mysqli 行 202
警告:main():無法在第 209 行的 /var/www/jobtrak/register.php 中獲取 mysqli

用戶類型
警告:mysqli::query(): 無法獲取 /var/www/jobtrak/register.php 中的 mysqli 行 217
警告:main():無法在第 224 行的 /var/www/jobtrak/register.php 中獲取 mysqli

這是這兩個元素的 PHP/HTML 代碼。 第 202 行是第 4 行,209 是第 11 行,217 是第 19 行,224 是第 26 行。

            <div class="form-group">
                <label>State</label>
                <?php
                    if($r_set1 = $link->query("SELECT * from state")){
                        echo "<select id=state name=state class=form-control style=width:150px>";
                        while ($row1 = $r_set1->fetch_assoc()) {
                            echo "<option value=$row1[id]>$row1[state]</option>";
                        }
                        echo "</select>";
                    }else{
                        echo $link->error;
                    }
                ?>
                <span class="invalid-feedback"><?php echo $state_err; ?></span>
            </div>
            <div class="form-group">
                <label>User Type</label>
                <?php
                    if($r_set2 = $link->query("SELECT * from usertype")){
                        echo "<select id=usertype name=usertype class=form-control style=width:150px>";
                        while ($row2 = $r_set2->fetch_assoc()) {
                            echo "<option value=$row2[id]>$row2[type]</option>";
                        }
                        echo "</select>";
                    }else{
                        echo $link->error;
                    }
                ?>
                <span class="invalid-feedback"><?php echo $usertype_err; ?></span>
            </div>

我看過這里但是我看不到它太早關閉連接,或者我只是完全失明並且看不到它。

嘗試將 HTML 標記屬性包裝在引號“”中。 和/或 $row1['id'], $row1['state']

例如。

<?php
    if($r_set1 = $link->query("SELECT * from state")){
        echo '<select id="state" name="state" class="form-control" style="width:150px">';
        while ($row1 = $r_set1->fetch_assoc()) {
            echo "<option value=\"$row1['id']\">$row1['state']</option>";
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM