Estoy liado con CakePHP y un sistema de encuestas. De momento lo tengo todo bien montado. Se vota y una vez hecho esto te recarga el form eliminandolo y poniendo en su lugar un text que dice: Su voto ha sido guardado.
Lo que yo quiero ahora es que al votar salgan los resultados y no me sirve hacer la consulta siempre y meterla en un div, ya que son muchos datos y no siempre se van a mostrar -ya que no siempre se va a votar.
Me gustaría saber que podría hacer, si hay posibilidad de llamar a una función PHP o algun controlador o algo.
Os pego el codigo:
Código PHP:
<h2><span>Encuesta</span></h2>
<fieldset>
<p>Después de la Premier League, ¿Qué Liga te gusta más?</p>
<div id="results" <?php if(!$voted) echo "style='display: none'"; ?>>
Resultados encuestas.
</div>
<div id="loading" style="display: none;">
<?php echo $html->image("loading.gif", array("alt"=>"Loading")); ?>
Cargando...
</div>
<div id="refreshArea" <?php if($voted) echo "style=' display: none'"; ?>>
<input type="hidden" value="Ligas" name="data[Poll][title]" />
<?php
echo $form->input('vote', array("type" => "radio",
"legend" => false,
"options" => array(0 => "Bundesliga",
1 => "Francesa",
2 => "Calcio",
3 => "Argentina",
4 => "Otras Ligas")));
?>
<?php echo $ajax->submit('Votar', array('div' => false, 'url' =>"/polls/add/", 'indicator' =>'loading', 'loading' => 'Element.hide("refreshArea")', 'complete' => 'Effect.Appear("results")'));
?>
</div>
</fieldset>
<?php echo $form->end(); ?>