【发布时间】:2016-07-17 04:01:17
【问题描述】:
基本上我有一个带有 2 个选择下拉框的表单,我想用 2 个通过 php 返回所有值的存储过程填充选择。但是,似乎只有第一个选择框被填充,而第二个没有。 我已经测试了这两个存储过程,它们都可以正常工作。
<div class="form-group row">
<label class="col-sm-2 form-control-label">Name</label>
<div class="col-sm-10">
<select class="form-control" name="pokemonName" style="width:30%;">
<?php
require_once '../database/connection.php';
$sqlNames = "CALL sp_selectAllPokemonName";
$names = $con->query($sqlNames);
while ($name = $names->fetch_assoc()){
echo "<option value= '".$name['pokemonName']."'>".$name['pokemonName']."</option>";
}
// $names->close();
// $con->close();
?>
</select>
</div>
</div>
<div class="form-group row">
<label class="col-sm-2 form-control-label">Hour</label>
<div class="col-sm-10">
<select class="form-control" name="hour" style="width:30%;">
<?php
// query doesn't work here
require_once '../database/connection.php';
$sqlHours = "CALL sp_selectAllHour";
$hours = $con->query($sqlHours);
while ($hour = $hours->fetch_assoc()){
echo "<option value= '".$hour['Id']."'>".$hour['Id']."</option>";
}
?>
</select>
</div>
</div>
连接.php
<?php
require 'credentials.php';
include '../ChromePhp.php';
// Create connection
//$con = mysqli_connect($servername, $username, $password, $dbname); // Procedural
$con = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($con->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
ChromePhp::warn('something went wrong!');
}
?>
【问题讨论】:
-
mysqli一次支持多个分号分隔的查询。 -
@Iceman,我知道这一点,但对我来说,这在逻辑上应该可行。我不明白为什么不是。在我从程序上切换到 OOP mysqli 之前它工作了