0

我已经这样做了:-

    $qry=mysql_query("SELECT client.resID, menu.name FROM client INNER JOIN menu ON   
    client.resID = menu.resID WHERE client.resID = $resID");

    $row=mysql_fetch_array($qry);

    echo $row['name'];

}

?>
<form action="client_admin_post.php" method="post" enctype="multipart/form-data" name="form1" id="form1">


<p>Services &nbsp;&nbsp;:
<label for="cat"></label>
<input type="text" name="name" id="name" value="<?php echo $row['name']; ?>" />
</p>


<p align="center">
<input type="submit" name="Submit" id="Submit" value="Submit" />
</p>
</form>

我正在构建一个从 MySQL 表中获取数据的 php 表单。它用于编辑 MySQL 表中的数据。现在的问题是,比方说,一家餐馆有很多菜单。因此,在这种情况下,“menus”MySQL 表中有许多行具有相同的 restaurantID(pk)。我需要将所有菜单提取到 5 个字段。使用此代码,我只能获取菜单。我怎么能那样做?

谢谢 :D 谢谢

4

2 回答 2

0

您只需要遍历您的结果集。像这样的东西应该工作

$names = array(); //array to store all names

while ($row = mysql_fetch_array($qry)) { // loop as long as there are more results
    $names[] = $row['name'];  // push to the array
}

print_r($names);    // $names array now contains all names
于 2012-12-03T15:19:39.860 回答
0

我删除了 id,所以没有重复的 id。如果您的姓名输入确实需要一个 id,最好为每个循环添加一个增量变量。例如“name1”、“name2”等...

<form action="client_admin_post.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
    <?php
    $qry = mysql_query("SELECT client.resID, menu.name FROM client INNER JOIN menu ON client.resID = menu.resID WHERE client.resID = $resID");

    while($row = mysql_fetch_assoc($qry))
    {
        ?>
        <p>
            Services &nbsp;&nbsp;:
            <label for="cat"></label>
            <input type="text" name="name" value="<?php echo $row['name']; ?>" />
        </p>
        <?php
    }
    ?>
    <p align="center">
        <input type="submit" name="Submit" id="Submit" value="Submit" />
    </p>
</form>
于 2012-12-03T15:29:42.337 回答