Jump to content

ayuda en desarrollo de un modulo de pruebas con un formulario


johandavid77

Recommended Posts

¿como insertar un formulario simple dentro de un modulo ? 

es decir ya el formulario lo veo y el modulo medio funciona, pero como hago para recibir los valores del formulario!

he intentado $smarty.post.lavariable y no he podido recibir los datos, alguien que me tire algún empujoncito?

es para un modulo que estoy tratando de hacer en base a cheque pero para pago con tarjeta, el formulario deberia mandar los datos por email pero aun no llego alla, jejejej, por ahora quiero poder recibir los datos del formulario y pintarlos en el payment_return.tpl 


damos gracias !!!

Link to comment
Share on other sites

  • 3 weeks later...

Lo que debes hacer es recibir los datos en POST o GET en la clase de tu módulo, y después asignarlos a una variable de smarty para emplearlos en la plantilla de tu módulo. 

 

Crea un condicionante para que si no se ha recibido el campo POST no se muestre nada:

if(isset($_POST['eldato']))
{
$valor=$_POST['eldato'];

}
else
{
$valor="";
}

$this->cont...assign('mivalor',$valor);

No te recomiendo que emplees directamente $_POST, emplea la clase TOOLS y la función getvalue.

  • Like 1
Link to comment
Share on other sites

Aqui http://www.prestashop.com/forums/topic/248849-¿se-puede-operar-con-variables-dentro-de-un-módulo/#entry1260547 tienes un ejemplo basico en el foro:

 

 

<?php
if (!defined('_PS_VERSION_'))
exit;
class BloqueNumeros extends Module
{

public function __construct()
{
$this->name = 'bloquenumeros';
$this->tab = 'advertising_marketing';
$this->version = '0.1';
$this->author = 'Vicente del Bosque (Entrenador Spain)';
parent::__construct();
$this->displayName = $this->l('Bloque Numeros');
$this->description = $this->l('Bloque para sumar dos numeros');

}

public function install()
{

return (parent::install() && $this->registerHook('leftColumn'));
}

public function uninstall()
{

return (parent::uninstall());
}
public function hookLeftColumn($params)

{

$numer1 = Tools::getValue('numero1');
$numer2 = Tools::getValue('numero2');

$suma = $numer1 + $numer2;

$this->smarty->assign(array(
'numer1' => $numer1,
'numer2' => $numer2,
'suma' => $suma,
));
return $this->display(__FILE__, 'bloquenumeros.tpl');
}

}
Y el contenido del fichero:

 

bloquenumeros.tpl
es este:

 

<div class="block">
<form action="#" method="post">
{l s='Numero 1' mod='bloquenumeros'} <input type="text" name="numero1" /> <br/>
{l s='Numero 2' mod='bloquenumeros'} <input type="text" name="numero2" /> <br/>
<input type="submit" value="{l s='Sumar ' mod='bloquenumeros'}" name="sumar_numeros_res" />

</form>

{if !empty($suma) }
{l s='El resultado de suma: ' mod='bloquenumeros'} {$numer1} + {$numer2} {l s='es: ' mod='bloquenumeros'} {$suma}

{/if}
</div>
(Atención, esto es solo una pequeña chapuza en modo demostracion)

 

Mas info: http://doc.prestashop.com/display/PS15/Creating+a+PrestaShop+module

  • Like 2
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...