我是法国人,所以为我的英语道歉。我的 Zend 应用程序在 URL 中存在变量问题。我正在为酒店的服务创建一个后台应用程序。
说明:
我必须设置一个包含用户信息的表格,例如“id,name,first name etc...”当管理员单击“delete”按钮时,他可以删除一些用户。
因为我是 ZF 的新用户,所以我学会了如何将变量从“视图”发送到“控制器”
我的看法:
我已经用这个命令设置了变量传输。
<?php echo $this->url(array('controller'=>'moderation','action'=>'supprimer' , 'id' => $donnees['id']));?>">
它工作正常,我的变量在我的“supprimerAction”中,很酷。我的网址就像 localhost/moderation/supprimer/id/2
但是,就在之后,当我单击另一个链接以更改控制器时,我的变量仍然在我的 URL 中,例如 localhost/welcome/id/2
我不知道为什么...
为了解决这个问题,我创建了另一个新页面,使用另一个控制器等......等等......,它是相同的东西。我的变量仍然显示在我的网址中...
我不知道你是否明白我的问题是什么,但我从 2 天以来一直在努力解决它......
我的代码:
审核.phtml
while ($donnees = $this->reponse->fetch())
{
if ($donnees['hotel_zone'] == 0)
$donnees['hotel_zone'] = "Paris";
else
$donnees['hotel_zone'] = "Province";
?>
<tr>
<td style="border-top:1px solid grey"> <?php echo $donnees['id'];?></td>
<td style="border-top:1px solid grey"> <?php echo $donnees['hotel_name'];?></td>
<td style="border-top:1px solid grey" ><?php echo $donnees['id_availpro'];?></td>
<td style="border-top:1px solid grey" ><?php echo $donnees['c_name'];?></td>
<td style="border-top:1px solid grey" ><?php echo $donnees['c_email'];?></td>
<td style="border-top:1px solid grey" ><?php echo $donnees['c_url'];?></td>
<td style="border-top:1px solid grey" ><img src="<?php echo $this->baseUrl;?>/public/css/yes.gif"></td>
<td style="border-top:1px solid grey" ><a href="<?php echo $this->url(array('controller'=>'moderation','action'=>'supprimer' , 'id' => $donnees['id']));?>"><img src="/public/img/no.png"></a>
</tr><?php
}
审核控制器:
<?php
class ModerationController extends Zend_Controller_Action
{
/*function init(){ $this->view->baseUrl = $this->_request->getBaseUrl(); }*/
function indexAction()
{
//echo $this->getRequest()->getParam('id');
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=myloocalhost;dbname=fhg_bo', 'root', '', $pdo_options);
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$this->view->reponse = $bdd->query('SELECT id, hotel_name, hotel_city, hotel_zone, c_title, c_name, c_fname, id_availpro, c_email, c_phone, c_url FROM nouveau_client');
$this->view->nb_mod = $bdd->query('SELECT COUNT(*) FROM nouveau_client GROUP BY id');
}
function supprimerAction ()
{
echo $this->getRequest()->getParam('id');
}
}
?>
所以当我收到这个变量并且当我点击另一个链接时,我的变量仍然在我的网址中......就像变量被记忆在我的程序中......
谢谢你帮助我,
再说一次,对不起我的英语,我会尽力回答问题。
谢谢