我正在使用cakephp 2.3.0。我在手册中搜索了很长时间,但我还没有找到答案。此外,我搜索了互联网,但仍然没有找到我正在寻找的东西。所以,我在这里发帖子。请注意,我对cakephp很新。
情景:
我无法弄清楚为什么我将“1”的值添加到我的表单的POST值中? 如果有人试图提供帮助,我会很高兴在此帖子中包含任何其他额外的PHP代码。
这是我的FORM代码(从我看来)......我知道有DIV助手,但我会稍后再说:
echo $this->Form->create(null, array('url' => array('controller'=>'activities', 'action'=>'results'))); ?>
<div class="box1" style="position:relative; top:10px; left:10px; float: left;">
Search here.... <br>
<hr>
<?php echo $this->Form->input('activityName', array('size'=>'30',
'label'=>'Activity Name:', 'value'=>'i.e. walking, etc.'));?>
<br>
<?php echo $this->Form->input('zip', array('size'=>'7', 'label'=>'Postal Code:')); ?>
<br>
</div>
<div class="box1" align="right">
<?php echo $this->Form->end('Go Search');?>
</div>
这是我的控制器代码:
<?php
class ActivitiesController extends AppController {
public $helpers = array('Html', 'Form');
public function index() {
//other code....
}
public function results() {
$this->layout = 'second';
$name = $this->request->data['Activity']['activityName'];
$pCode = $this->request->data['Activity']['zip'];
$this->set('theName', $name);
$this->set('theZip', $pCode);
$this->set('results', $this->Activity->
find('all', array('conditions' => array('name' => $name, 'postal_code' => $pCode))));
$this->set('title_for_layout', 'Results');
$this->render();
}
}
?>
我的最终视图代码。我遗漏了一些代码......只是显示了重要的部分:
<div style="position:relative; top:10px; left:5px; ">
<?php echo print_r($theName); ?>
<br>
<?php echo print_r($theZip); ?>
由于
答案 0 :(得分:5)
1
来自打印print_r()
true
的返回值(即1
)。
换句话说:你不应该做echo print_r()
,只做print_r()
。该功能自行处理打印,您无需手动打印结果。
(另外,print_r()
几乎绝不是打印输出值的最佳选择,除非在调试时,甚至CakePHP的debug()
更适合。)