Uso del autocompletar

edited marzo 2010 in Principiantes
Saludos,

Use el ejemplo que esta en el libro de kumbia con unas modificaciones en el SQL y este no me funciono cuando escribia dos letras parecia que estuviera buscando pero no aparecio nada y necesito usarlo.
Alguien lo ha usado? le ha funcionado?
(Estoy usando oracle 9i.)
Espero que me puedan ayudar,

Aqui les pongo lo que tengo en el controlador:

<?php
/*
* Created on 10/09/2007
*
* To change the template for this generated file go to
* Window - Preferences - PHPeclipse - PHP - Code Templates
*/
class ejemplocontroller extends ApplicationController{
public $cells;
function index(){

}

function ver_sugerencias(){
$this->set_response("view");
$site = $this->request("site");
$this->cells = $this->Cell->find_all_by_sql("select * from cell where site like '%$site'");

}
}
?>

la vista
<div style='text-align:center'>
<b>Site:</b> <?= text_field_with_autocomplete("site", "action: ejemplo/ver_sugerencias") ?>
</DIV>
<ul><? foreach($cells as $cell): ?>
<li id='<?= $cell->Cellid ?>'><?= $cell->Site ?></li>
<? endforeach;?>
</ul>


Muchas Gracias de antemano.

Comentarios

  • Saludos...

    Y donde esta la vista del method ver_sugerencia <!-- s:?: --><img src="{SMILIES_PATH}/icon_question.gif" alt=":?:" title="Question" /><!-- s:?: -->
  • edited 10:51
    Tengo el mismo problema, pero yo no realice ningun cambio del ejemplo y aun asi no funciona.
  • Tengo el mismo problema, pero yo no realice ningun cambio del ejemplo y aun asi no funciona.

    Puedes mostrar el código que estas utilizando... <!-- s:?: --><img src="{SMILIES_PATH}/icon_question.gif" alt=":?:" title="Question" /><!-- s:?: -->
  • edited 10:51
    Tengo el mismo problema, pero yo no realice ningun cambio del ejemplo y aun asi no funciona.

    Puedes mostrar el código que estas utilizando... <!-- s:?: --><img src="{SMILIES_PATH}/icon_question.gif" alt=":?:" title="Question" /><!-- s:?: -->

    Controller: busqueda_controller.php
    &lt;?php
               class BuquedaController extends ApplicationController &#123;
    
                    function index&#40;&#41; &#123;
    
                    &#125;
    
                    function ver_sugerencias&#40;&#41; &#123;
    
                    $this-&gt;set_response&#40;&quot;view&quot;&#41;;
    
    		$nombre = $this-&gt;request&#40;&quot;nombre&quot;&#41;;
    
    		$this-&gt;items = $this-&gt;detalleitem-&gt;find&#40;&quot;nombre like '%$nombre%'&quot;&#41;;
    		
    	        &#125;
    &#125;
    ?&gt;
    

    Views: ver_sugerencias.phtml
    &lt;ul&gt;
    &lt;? foreach&#40;$items as $detalleitem&#41;&#58; ?&gt;
    	&lt;li id='&lt;?= $detalleitem-&gt;id ?&gt;'&gt;&lt;?= $detalleitem-&gt;nombre ?&gt;&lt;/li&gt;
    &lt;? endforeach ?&gt;
    &lt;/ul&gt;
    


    Views: index.phtml
    &lt;div style='text-align&#58;center'&gt;
    
    	&lt;b&gt;Buscar Item&#58;&lt;/b&gt; &lt;?= text_field_with_autocomplete&#40;&quot;nombre&quot;, &quot;action&#58;busqueda/ver_sugerencias&quot;&#41; ?&gt;
    
    &lt;/div&gt;
    
  • deben revisar bien en su código acabo de probar con una aplicacion que tengo en production y trabaja perfecto el helpers text_field_with_autocomplete
  • Pruebalo asi en la vista ver_sugerencias
    &lt;ul&gt;
    &lt;? foreach&#40;$items as $detalleitem&#41;&#123; ?&gt;
          &lt;li id='&lt;?= $detalleitem-&gt;id ?&gt;'&gt;&lt;?= $detalleitem-&gt;nombre ?&gt;&lt;/li&gt;
    &lt;?&#125;?&gt;
    &lt;/ul&gt;
    
  • edited 10:51
    Podrias colocar el codigo de lo que tienes, para comparar con lo que tengo.
  • Una observacion con respecto a ese ej:

    cuando se realiza la consulta deben colocar conditions: ya que si lo hacen como en el libro indica la consulta que se realiza es un SELECT * FROM TABLE y nosotros necesitamos una consulta como esta SELECT * FROM table WHERE campo like '%De%'...
  • edited 10:51
    uhm...de ese modo tambien se puede utilizar el: find_all_by_sql(consulta)
    voy a probar y despues comento
  • uhm...de ese modo tambien se puede utilizar el: find_all_by_sql(consulta)
    voy a probar y despues comento

    Si lo puedes utilizar pero kumbia te lo ofrece de la siguiente manera
    $this-&gt;items = $this-&gt;Detallesitem-&gt;find&#40;&quot;conditions&#58; nombre like '%$nombre%'&quot;&#41;;
    

    claro si tus consultas son con join, etc, ect bueno ahi existe otras alternativas (como las vistas por ejemplo)... pero si el nombre que buscas esta en la tabla detallesitem asi como te dice arriba te sirve
  • edited 10:51
    Saludos,

    Muchisimas gracias deivinsontejeda logre hacerlo funcionar con tu sugerencia del foreach.
    Y utilice para hacer la consulta find_all_by_sql() queria que los resultados salieran ordenados y tambien lo que pusiera el usuario llevarlo a mayuscula.

    Gracias de nuevo <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->

    Oz
  • Bueno si lo querias ordenado el metodo find recibe un parametro que se llama order y se utiliza de la siguiente manera
    $this->result = $this->Usuarios->find("conditions: nombres like '%$nombre%'", "order: id");

    que hace esto busca por nombre y el resultado lo devuelve ordenado por id que tal <!-- s:?: --><img src="{SMILIES_PATH}/icon_question.gif" alt=":?:" title="Question" /><!-- s:?: -->

    Exitos...!
  • edited 10:51
    Saben que he intendado ya de muchas formas y no re resulta... <!-- s:( --><img src="{SMILIES_PATH}/icon_sad.gif" alt=":(" title="Sad" /><!-- s:( -->
    aqui les dejo lo que tengo a ver si me pueden ayudar.

    Base de Datos:
    Tabla &#58; detalleitem
     Campos &#58; id, itemsdefactura_id, nombre, descripcion, cantidad
    

    Index.phtml
    &lt;div style='text-align&#58;center'&gt;
    
    	&lt;b&gt;Buscar Item&#58;&lt;/b&gt; &lt;?= text_field_with_autocomplete&#40;&quot;nombre&quot;, &quot;action&#58; busqueda/ver_sugerencias&quot;&#41; ?&gt;
    
    &lt;/div&gt;
    

    busqueda_controller
    &lt;?php
    	class BusquedaController extends ApplicationController &#123;
    
    	public $detalleitems;
    
    		function index&#40;&#41;&#123;
    
    		&#125;
    		function ver_sugerencias&#40;&#41;&#123;
    
    			$this-&gt;set_response&#40;&quot;view&quot;&#41;;
    
    			$nombre = $this-&gt;request&#40;&quot;nombre&quot;&#41;;
    
    			$this-&gt;detalleitems = $this-&gt;detalleitem-&gt;find&#40;&quot;conditions&#58; nombre like '%$nombre%'&quot;&#41;;
    		&#125;
    &#125;
    ?&gt;
    

    ver_sugerencias.phtml
    &lt;ul&gt;
    &lt;? foreach&#40;$detalleitems as $detalleitem&#41;&#123; ?&gt;
          &lt;li id='&lt;?= $detalleitem-&gt;id ?&gt;'&gt;&lt;?= $detalleitem-&gt;nombre ?&gt;&lt;/li&gt;
    &lt;? &#125; ?&gt;
    &lt;/ul&gt;
    

    bueno eso es lo que tengo.
    Ojala me pudieran ayudar.
    Gracias
  • edited 10:51
    Debo aclarar que ya esta solucionado mi problemay funciona perfectamente.
    solo tenia mall una variable minuscula que era mayuscula <!-- s:roll: --><img src="{SMILIES_PATH}/icon_rolleyes.gif" alt=":roll:" title="Rolling Eyes" /><!-- s:roll: -->
    Gracias a los que me ayudaron.
    <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->
  • edited 10:51
    Acá está explicado como implementar el Autocompletar de KumbiaPHP

    http://tics.firesoft.ws/2010/03/autocompletar-en-kumbiaphp/
Sign In or Register to comment.