我正在改变产品页面上的添加链接,以便用户点击此链接时
$_product = $this->getProduct();
$sampleAttributes = $_product->getsample_attributes();
$id_product = $_product->getName(); //product name
<a href="http://www.sample.com/request-callback?id='<?php echo $id_product; ?>'" class="link-compare"><?php echo $this->__('Request a Callback') ?></a>
它会将产品名称发送至www.sample.com/request-callback?id =&#39;&#39;
在请求回调页面上我有
$id_product = intval($_GET['id']);
<input type="text" value="<?php echo $id_product; ?>" name="productname"/>
它正在使用magento产品的产品名称的一半被插入到地址栏中,但当我尝试从地址栏中拉出
$id_product = intval($_GET['id']);
我得到了&#39; 0&#39;
为什么会发生这种情况?
答案 0 :(得分:1)
因为你得到productName而不是productId。
我不使用Magento,但我认为它应该是$ id_product = $ _product-&gt; getId();
我希望它有所帮助。
答案 1 :(得分:0)
根据我的评论,intval
需要一个整数,如果您要发送一个字符串,请删除它(并添加isset
以获得良好的混乱):
$id_product = isset($_GET['id'])?$_GET['id']:'none';
为了清晰起见,我还会考虑将id
重命名为name
答案 2 :(得分:0)
我将$ id更改为产品ID,然后使用此
$productid = intval($_GET['id']);
$model = Mage::getModel('catalog/product'); //getting product model
$_product = $model->load($productid); //getting product object for particular product id
$product_name = $_product->getName();
$id_product = $product_name;
从产品ID中检索产品名称。