你好,我在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();
}
查看代码(这是一个菜单,我现在只有一个按钮)
<fieldset>
<legend>SELECCIONE SU ALERTA</legend>
<?php
echo $form->create('Event');
echo $form->submit('EMERGENCIA MEDICA',array('name'=>'medico'));
echo $form->end();
?>
</fieldset>
答案 0 :(得分:12)
创建表单时,不包含其他url参数或字段作为输入。如果没有这些参数,参数将会消失,因为它们不是新请求的一部分。您可以使用
将其他参数附加到表单提交网址$form->create('Event', array( 'url' => array('something', 'somethingelse') ));
这将创建一个指向/events/add/something/somethingelse
的表单。
答案 1 :(得分:0)
我不喜欢使用一些助手(比如$ html)或一些方法(比如$ form的create()和end())。我有点没有得到你的问题,但我认为你可能需要向你实际进入的同一个网址发出POST请求。
<form method="GET" action="<?=$this->here ?>">
也许你应该进一步解释你想要达到的目标。
答案 2 :(得分:0)