quantidade de errado [zero] está exibindo em particular phtml página
-
29-09-2020 - |
Pergunta
estamos usando o código a seguir para atualizar a quantidade ficheiro2.phtml arquivo :
<li class="fields">
<div class="customer-name">
<div class="field">
<div class="input-box">
<input type="text" name="qty" id="qty" value="<?php echo intval($mpAssignProductModel->getQty()) ?>" class="required-entry validate-zero-or-greater input-text"/>
</div>
</div>
</div>
</li>
eu copiei esse código no arquivo 1, agora em arquivo1.phtml página, a sua exibição, como este :
significa a quantidade correta de valor [20 ] mostrando ficheiro2.phtml página , mas em arquivo1.phtml página, mostrando a sua "0" como a quantidade
código completo para arquivo1.phtml, file2.phtml
Editar
para depurar, eu usei este código : <?php var_dump($id); ?>
, sua exibição NULL
Solução
Tenta usar o $assinproducts
em vez de o $mpAssignProductModel
no arquivo1.phtml.Você deve adicionar a entrada com qty após a condição:
<?php foreach($this->getCollection() as $assinproducts): ?>
Código completo deve este aspecto:
<tbody>
<?php foreach ($this->getCollection() as $assinproducts): ?>
<?php $products = Mage::getModel('catalog/product')->load($assinproducts->getProductId()); ?>
<tr class="wk_row_view ">
<td>
<input type="text" name="qty" id="qty" value="<?php echo intval($assinproducts->getQty()) ?>" class="required-entry validate-zero-or-greater input-text"/>
</td>
....
Mas cuidado porque você pode ter mais de um item na tabela.Na parte inferior do código que você pode ver o original qtde de entrada (com o id de incremento no nome) e eu recomendo fortemente que você utilize o original do campo de entrada:
<td>
<span class="label qty" id="valueqty_<?php echo $assinproducts->getId(); ?>">
<?php echo intval($assinproducts['qty']); ?>
</span>
<input type="text" id="qty_<?php echo $assinproducts->getId(); ?>"
onkeydown="validateNumbers(event)"
name="stock" value="<?php echo intval($assinproducts['qty']); ?>"
style="display:none;"/>
<span class="label wk_action" id="edit_link_<?php echo $assinproducts->getId(); ?>">
<img onclick="showField('<?php echo $assinproducts->getId(); ?>'); return false;"
src="<?php echo $this->getSkinUrl('marketplace/images/icon-edit.png'); ?>"/>
</span>
<p id="updatedqty_<?php echo $assinproducts->getId(); ?>"
style="display:none;color:red;">Updated</p><br/>
<button id="update_button_<?php echo $assinproducts->getId(); ?>"
class="button wk_mp_btn1"
onclick="updateField('<?php echo $assinproducts->getId(); ?>',<?php echo intval($assinproducts['qty']); ?>); return false;"
style="display:none">
<span>
<span style="font-size:12px;"><?php echo $helper->__('Update') ?></span>
</span>
</button>
<button id="reset_button_<?php echo $assinproducts->getId(); ?>"
type="reset" class="cancel"
onclick="hideReset('<?php echo $assinproducts->getId(); ?>'); return false;"
style="display:none"></button>
</td>
PS:Por favor, diga-me se eu tiver arquivos misturados e vou atualizar a resposta
Outras dicas
Você tem modelo de carga usando o id.
portanto, o seu código não está funcionando
$mpAssignProductModel->getQty();
Altere-a para:
$mpAssignProductModel->getData('qty');