Я правильно использую api?
![введите описание изображения здесь]()
Когда я нажимаю кнопку просмотра, я просто вижу только запись первого клиента, как я могу получить конкретный идентификатор конкретного клиента, пожалуйста, объясните мне подробно, и я использую codegniter, вот какой-то из моего кода, где я хочу добавить..
AdminController.php
<?php
class AdminController extends MY_Controller {
function __construct()
{
parent::__construct();
if(!$this->session->userdata("id")) {
return redirect('logincontroller/index');
}
}
public function dashboard()
{
$this->load->view('admin/dashboard');
}
public function orderhistory()
{
$this->load->view('admin/order_history');
}
public function catalogue()
{
$this->load->view('admin/catalouge');
}
public function admin_detail()
{
$this->load->view('admin/admin_detail');
}
public function agent_detail()
{
$this->load->view('admin/agent');
}
public function customerdetail()
{
$this->load->view('admin/customers');
}
public function paymenthistory()
{
$this->load->view('admin/payment');
}
public function view_order_history()
{
$this->load->view('admin/view_order_history');
}
public function edit_order_history()
{
$this->load->view('admin/edit_order_history');
}
public function pagination($current_page)
{
}
public function view_product_detail()
{
$this->load->view('admin/view_product_detail');
}
public function edit_product_detail()
{
$this->load->view('admin/edit_product_detail');
}
public function view_admin_detail()
{
$this->load->view('admin/view_admin_detail');
}
public function edit_admin_detail()
{
$this->load->view('admin/edit_admin_detail');
}
public function edit_agent_detail()
{
$this->load->view('admin/edit_agent_detail');
}
public function view_agent_detail()
{
$this->load->view('admin/view_agent_detail');
}
public function view_customer_detail()
{
$this->load->view('admin/view_customer_detail');
}
public function edit_customer_detail()
{
$this->load->view('admin/edit_customer_detail');
}
public function edit_payment_history()
{
$this->load->view('admin/edit_payment_history');
}
public function view_payment_history()
{
$this->load->view('admin/view_payment_history');
}}?>
View_order_history
<div class="container">
<div class="jumbotron">
<h1>Jumbotron</h1>
<p>This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.</p>
<p><a class="btn btn-primary btn-lg">Learn more</a></p>
</div>
</div>
Ответы
Ответ 1
Поскольку у вас нет кода, соответствующего тому, что вы на самом деле делаете, вот несколько советов/идей:
На вашем классе вместо того, чтобы создавать кучу методов, которые все делают то же самое, я бы предложил использовать __call()
для перегрузки класса и сэкономить тонну дублирования. Обычно я не предлагал этого, но в этом случае имеет смысл:
class AdminController extends MY_Controller {
{
protected $args;
public function __call($name,$args)
{
$count = (!empty($args));
$this->args = ($count)? $args : false;
$this->load->view("admin/{$name}");
}
}
Чтобы использовать, просто вызовите имя действия вида:
$tester = new AdminController();
$tester->admin_detail();
При работе с формой вы можете сделать кнопки своей кнопкой с id
как скрытое поле. Я просто сосредоточусь на массиве customer
на ключе [0]
и разделе [0]
. Вы, конечно, сделали бы цикл в массиве customer[0]
, чтобы получить все строки:
<!-- tester.php is the page that you are sending the post to focus on.
I don't know what your actual page is called, you have not indicated
-->
<form action="/tester.php" method="post">
<input type="text" name="id" value="<?php echo $arr['customer'][0][0]['id']; ?>" />
<input type="submit" name="view" value="VIEW" />
<input type="submit" name="delete" value="DELETE" />
<input type="submit" name="edit" value="EDIT" />
<?php
foreach($arr['customer'][0][0] as $key => $value) {
echo $value;
}
?>
</form>
Когда вы нажимаете кнопку VIEW
и публикуете на странице фокуса, вы оставляете значение идентификатора строки, которое вы можете использовать для api, чтобы вытащить именно этот (предположительно, вы знаете, как получить API для этого?). Снова у вас нет кода, чтобы показать, как вы делаете что-либо на самом деле, так что это просто общий. Вот что будет делать кнопка. id
изменится в зависимости от того, на какую строку вы нажимаете.
Array
(
[id] => 1
[view] => VIEW
)