我有这种表
我想要像这样获取数据
我已经获取了菜肴名称(文本),但我还需要在单个数组中使用它的ID我该怎么办? 我的代码如下: 控制器: -
function fetch()
{
$this->load->model('fetch');
$d=$this->fetch->call();
$e=$d->result();
$max=$d->num_rows();
for($i=0;$i<$max;$i++){
$a[$i]=$e[$i]->product;
$a2[$i]=$e[$i]->id;
$b[]=explode(',',$a[$i]);
}
echo '<pre>';
print_r($a2);
$array['arr'] = call_user_func_array('array_merge', array_map('array_values', $b));
$this->load->view('display',$array);
}
型号: -
function call()
{
$this->db->select('*');
$this->db->from('ruff');
$query = $this->db->get();
if ($query->num_rows() > 0) {
return $query;
} else {
return false;
}
}
查看: -
<body>
<input type="text" name="item" id="txt_search" list="item_list">
<datalist id="item_list">
<?php
foreach($arr as $a)
{
echo "<option>".$a."</option>";
}
?>
</datalist>
</body>
提前致谢。
答案 0 :(得分:0)
在你的控制器中试试这个......代码
$this->load->model('fetch');
$d=$this->fetch->call();
$e=$d->result_array();
// $max=$d->num_rows();
$products='';
foreach ($e as $p) {
$products.=$p['product'];
}
$data=explode(',', $products);
echo '<pre>';
print_r($data);
echo '</pre>';
答案 1 :(得分:0)
通常在控制器中访问数据库功能不是一个好习惯。因此,为了满足计算物品的需要,您可以更改模型以返回一系列物品。
型号:
var test1 = (from p in Products
select new ProductResult()
{
Name = p.ProductName,
Category = p.CategoryId,
Supplier = p.SupplierID,
}).Distinct();
然后,在控制器的function call()
{
$data = array();
$this->db->select('*');
$this->db->from('ruff');
$query = $this->db->get();
if ($query->num_rows() > 0) {
foreach($query->result() as $row){
$data[] = (array)$row;
}
return $data;
} else {
return false;
}
}
函数中,您可以展开fetch
字段并创建另一个数组以提交到您的视图。
控制器:
product
这将导致您有一个类似于下面的数组:
function fetch()
{
$this->load->model('fetch');
$d=$this->fetch->call();
$list = array();
foreach($d as $row)
{
$products = explode(',', $row['product']);
foreach($products as $p)
{
$list[] = array('id' => $row['id'], 'product' => $p);
}
}
$this->load->view('display',array('arr' => $list));
}
现在您的ID可以在您的视图中使用。
查看:
Array
(
[0] => Array
(
[id] => 1
[product] => veg. burger
)
[1] => Array
(
[id] => 1
[product] => non-veg burger
)
[2] => Array
(
[id] => 1
[product] => chees burger
)
[3] => Array
(
[id] => 2
[product] => vadapau
)
[4] => Array
(
[id] => 2
[product] => butter vadapau
)
[5] => Array
(
[id] => 2
[product] => chees vadapau
)
)
答案 2 :(得分:0)
这是您的型号代码。
public function call()
{
$query = $this->db->select("id,product")
->from("stuff")
->get();
if ($query->num_rows() > 0) {
return $query->result_array();
} else {
return false;
}
}
现在,您将在控制器中获取结果数据数组。这是控制器功能。
public function fetch()
{
$this->load->model('fetch');
$result = $this->fetch->call();
foreach ($result as $value) {
$newArr = explode(',',$value['product']);
foreach ($newArr as $val) {
$productArray[] = array('productID'=>$value['id'],"product"=>$val);
}
}
$data['finalArray'] = $productArray;
$this->load->view('display',$data);
}
现在访问视图中的最终产品数组。这是查看代码。
<input type="text" name="item" id="txt_search" list="item_list">
<table id="item_list" border="1">
<?php
foreach($finalArray as $stuffs)
{
echo "<tr>";
echo "<td>".$stuffs['productID']."</td>";
echo "<td>".$stuffs['product']."</td>";
echo "</tr>";
}
?>
</table>
干杯!
答案 3 :(得分:0)
非常简单的代码请遵循代码 您的型号代码如下:
型号: -
function call()
{
return $this->db->get('ruff')->result_array();
}
此代码现在为您提供所有数据控制器代码,如下所示
控制器: -
function fetch()
{
$this->load->model('fetch');
$array['arr'] = $this->fetch->call();
$this->load->view('display',$array);
}
此代码现在为您提供所有数据控制器代码,如下所示
控制器: -
function fetch()
{
$this->load->model('fetch');
$array['arr'] = $this->fetch->call();
$this->load->view('display',$array);
}
此代码为您提供现在所有数据控制器代码,如下所示
控制器: -
function fetch()
{
$this->load->model('fetch');
$array['arr'] = $this->fetch->call();
$this->load->view('display',$array);
}
现在请在视图中编写代码 视图: -
` 此代码为您提供现在所有数据控制器代码,如下所示
控制器: -
function fetch()
{
$this->load->model('fetch');
$array['arr'] = $this->fetch->call();
$this->load->view('display',$array);
}
现在请在视图中编写代码 视图: -
<body>
<input type="text" name="item" id="txt_search" list="item_list">
<datalist id="item_list">
<?php
foreach($arr as $value){
$newarray=explode(',',$value);
foreach($newarray as $test)
{
echo "<option value=".$arr['id'].">".$test['product']."</option>";
}
}
?>
</datalist>
</body>
我认为此代码可以帮助您 感谢