我有一个链接http://mywebsite.com/referral/dafa60b2b96c366e165be58649755742Zend公司得到的数据库记录错误
随着参数dafa60b2b96c366e165be58649755742
当时试图获取参数连接到数据库来获取用户信息,但它最终得到没有对象:公告:试图让行非对象的属性.....
这里是我的代码:
的application.ini:
resources.router.routes.referralSelectProduct.route = “/转诊/:URL” resources.router.routes.referralSelectProduct.defaults.controller =索引 resources.router.routes.referralSelectProduct.defaults.action = referral-选择副产物 resources.router.routes.referralSelectProduct.reqs.url = “[0-9A-ZA-Z] +”
控制器:
public function referralSelectProductAction()
{
$referral_url = $this->getRequest()->getParam('url');
$user = $this->_helper->model('Users')->fetchRowByFields(array('url' => $referral_url));
setcookie('referral_url', $referral_url, time() + 3600*24*30, '/');
}
模型:
class Application_Model_DbTable_Users extends Sayka_Db_Table_Abstract{
protected $_rowClass = 'Application_Model_DbTable_Row_User';protected $_name = 'users';}
观点:
<div id="content_bottom" class="content"><br/>
<h1>Select the product to refer your friend <span class="colorset_orange"><?php echo $this->user()->first_name; ?></span>.</h1>
<div><a class="refer_submit" href="?email=<?php echo $this->user()->email ?>&first_name=<?php echo $this->user()->first_name; ?>&last_name=<?php echo $this->user()->last_name; ?>" id="btn_free_download">Free Download</a></div>
<div><a class="refer_submit" href="#" id="btn_buy_now">Buy Now</a></div>
我的观点最终得到没有在数据库中用户的对象。
你能明确告诉我们,你是从哪里得到错误,并显示上下文代码到哪里你得到那个错误?这个错误非常明显,因为你正试图在一个对象上进行操作,但是你认为拥有一个对象的变量没有。 –
它实际上在视图上时,我回声$ this-> user() - >所有这些回声给出一个错误。它没有得到该用户的数据库记录 – user1892860
你甚至没有显示调用'$ this-> user()'的任何代码行。很显然'user'对象没有设置,你只需要通过你的代码进行调试来找出原因。 –