0
私はLaravel 5を使用しています。 ドロップダウンですべてのデータベース名をリストしたいと思いますが、最後の値をフェッチすることになります。私はすでに foreachループを使用して、何も起こりません。ここに私のコードです:最後の値のみがドロップダウンでフェッチされるLaravel 5
public function create(Request $request)
{
//echo "<pre>";
$sqlconn = mysqli_connect('127.0.0.1', 'root', '1234');
$showdb = "SHOW DATABASES";
$dbconn = mysqli_query($sqlconn, $showdb);
$dbnames = array();
while ($row=mysqli_fetch_assoc($dbconn)) {
$dbnames = $row;
foreach ($dbnames as $dbname => $value) {
if ($value != "information_schema" && $value != "performance_schema" && $value != "test" && $value != "mysql") {
//$dblists = implode(":", array($value));
$dblists = $value;
//print_r($dblists);
}
}
}
//die();
}
And here's my html codes:
<div class="col-md-12">
<div class="form-group @if($errors->has('description')) has-error @endif">
<div class="col-xs-2">
<label for="reports_description" class="control-label"><h5><b>Select Database:</b></h5></label>
</div>
<div class="col-xs-5">
<select class="form-control">
<option>---SELECT---</option>
<option value="{{$dblists}}">{{$dblists}}</option>
</select>
</div>
</div>
</div>
2つのこと - 1.あなたが変数として '$のdblists'を初期化されていません'$ dblists'はforeachループの中で初期化されています - したがって、ループの最後の反復からの' $ value'のみを含みます。 foreachループの中で '$ dblists = [];'を初期化し、foreachループの 'if'条件の中で' $ dblists [] = $ value'を実行すると値が '$ dblists'配列にプッシュされ続けます。 – Donkarnash