4

こんにちはimちょっとcakephpの新機能で、調整に多くの問題があります..これが私の最大の問題です..

パラメータをアクションに渡そうとすると、ロードされますが、スクリプトがコントローラからビューに移動し、再びコントローラに戻ると、その動作はなくなります。

コントローラーコード

 function add($mac = 0)
{


if(isset($this->params['form']['medico'])) 
{

 $temp= $this->Person->find('first', array('conditions' => array('smartphones_MAC' => $mac)));
 $id= $temp['Person']['id'];

$this->Union->set('events_id', $id+1);
$this->Union->set('people_id', $id);
$this->Union->save();

}

コードの表示(これはメニューです。現在、ボタンは1つしかありません)

 <fieldset>

 <legend>SELECCIONE SU ALERTA</legend>

 <?php 

  echo $form->create('Event'); 

  echo $form->submit('EMERGENCIA MEDICA',array('name'=>'medico')); 

  echo $form->end();

  ?> 

  </fieldset>
4

3 に答える 3

12

フォームを作成するとき、入力として追加のurlパラメーターまたはフィールドを含めません。これらのいずれかがないと、パラメータは新しいリクエストの一部ではないため、消えてしまいます。フォーム送信URLに追加のパラメータを追加できます。

$ form-> create('Event'、array(
    'url' => array('something'、'somethingelse')
));

これにより、を指すフォームが作成され/events/add/something/somethingelseます。

于 2010-03-22T01:57:48.593 に答える
0

私はいくつかのヘルパー($ htmlなど)やいくつかのメソッド($ formのcreate()やend()など)を使用するのが好きではありません。問題は発生しませんでしたが、実際に使用しているのと同じURLに対してPOSTリクエストを行う必要があるのではないかと思います。

<form method="GET" action="<?=$this->here ?>">

たぶん、あなたはあなたが達成しようとしていることのさらなる説明を与えるべきです。

于 2010-03-19T15:36:26.680 に答える
0

名前付きパラメータを使用してみてください。

私はあなたが役立つと思うかもしれない同様の質問をしました:

一部のパラメータが修正されたcakephp追加レコード

于 2010-03-19T19:42:02.093 に答える