-1

Cakephp に問題があります

コントローラ

$due = $this->Issue->find('all' , array('conditions' => array ('Issue.user_id'=>6)));
$this->set('due',$due);
$id = $due['0']['Issue']['book_id'];
$b = $this->Bookmaster->find('first' , array ('conditions' => array ('Bookmaster.id' => $bookid)));
$book = $this->Book->find('all',array('conditions' => array ('Book.id' =>$id)));
$bookid = $book['0']['Book']['bookmaster_id'];

Ctp を含む

<h1> ISSUED BOOK DETAILS </h1>
<table width="200" border="2" bordercolor="#009933">
<tr>
<td> BOOK ID </td>
<td> TITLE </td>
<td> AUTHOR </td>
<td> EDITION </td>
<td>ISSUED ON  </td>
<td> DUE DATE </td>
<td> POTENTIAL FINE</td>
</tr>
 <?php foreach ($due  as $data  ) { ?> <tr> 

<td> <?php  echo $data['Issue']['book_id']; ?> </td> 
<td> <?php   echo $b ['Bookmaster']['title'] ;?></td> 
<td> <?php  echo $b['Bookmaster']['author'];?></td>  
<td> <?php  echo $b ['Bookmaster']['edition'];?> </td>  
<td> <?php echo $data['Issue']['issue_date_time']; ?> </td> 
<td> <?php  echo $data['Issue']['due_date']; ?> </td>  
<td> <?php echo $out['Fine']['fineamount'];?> </td> 
 </tr> <?php }?>
</table>

私の問題は、これを for ループでどのように操作できるかです。私のループはブックマスターのために繰り返されていません..どうすればそれを行うことができます..

bookid の値をインクリメントするにはどうすればよいですか

4

1 に答える 1

0

問題は、 をループしていて$due、 $b データがキー値の配列 (つまり$b[0]['bd']$b[1]['bd']、など) であることです。したがって、検索している配列のキー (またはインデックス) はループ$b[2]['bd']と整列しません。$due.

より良い解決策は、各レコードに必要な情報が含まれ、必要なデータをループで表示できるように結合を作成することです。ここにいる誰かが提案を提供できるようにするには、あなたの側でより多くの要件/情報が必要です.

于 2013-01-15T19:44:43.063 に答える