bueno,
a ver.... por ejemplo tengo una tabla que me trae resultado y quiero aplicarles un filtro, cual es la manera mas "formal" para hacerlo..?
1) una forma muy basica es , tener un formulario, debajo de la tabla donde presento los datos, el formulario tiene un input que envia valores de busqueda a esa misma pagina, bueno al principio de todo tengo un isset, que si tiene valores de un supuesto INPUT-filtro hara OTRA consulta, con un WHERE impriendo otra tabla
distinta a que el isset devuelva falso, hara un select * from usuarios...
bueno es muy basico no creo que haga falta colocar codigo... pero veo esta manera un poco basica-trucha
2) la otra es similar usando mysql, seria mas con ajax, tomando un valor, buscar en la tabla devolver resultados y colocarlos, toma mucha importancia ajax y mysql...
3) hay un plugin en jquery, no se bien es como funciona. pero toma los datos de manera estatica, no se comunica con mysql o base de datos.. es raro... o por lo menos en el ejemplo toma los datos de un html estatico (ya tiene los registros insertados)
esta es una funcion , parecida que busca texto y toma los registros y los imprime de nuevo, osea no hay nada dinamico, en relacion a datos nuevos en una base de datos
Código PHP:
jQuery.uiTableFilter = function(jq, phrase, column, ifHidden){
var new_hidden = false;
if( this.last_phrase === phrase ) return false;
var phrase_length = phrase.length;
var words = phrase.toLowerCase().split(" ");
// these function pointers may change
var matches = function(elem) { elem.show() }
var noMatch = function(elem) { elem.hide(); new_hidden = true }
var getText = function(elem) { return elem.text() }
if( column ) {
var index = null;
jq.find("thead > tr:last > th").each( function(i){
if( $(this).text() == column ){
index = i; return false;
}
});
if( index == null ) throw("given column: " + column + " not found")
getText = function(elem){ return jQuery(elem.find(
("td:eq(" + index + ")") )).text()
}
}
// if added one letter to last time,
// just check newest word and only need to hide
if( (words.size > 1) && (phrase.substr(0, phrase_length - 1) ===
this.last_phrase) ) {
if( phrase[-1] === " " )
{ this.last_phrase = phrase; return false; }
var words = words[-1]; // just search for the newest word
// only hide visible rows
matches = function(elem) {;}
var elems = jq.find("tbody > tr:visible")
}
else {
new_hidden = true;
var elems = jq.find("tbody > tr")
}
elems.each(function(){
var elem = jQuery(this);
jQuery.uiTableFilter.has_words( getText(elem), words, false ) ?
matches(elem) : noMatch(elem);
});
last_phrase = phrase;
if( ifHidden && new_hidden ) ifHidden();
return jq;
};
viendolo bien , creo que no tendria problemas de funcinar con datos dinamicos, ya que primero se imprime lo que es php y despues el jquery funcionaria... disculpen...
la duda principal del post, es que este plugin no hace busqueda en tabla mysql, hace las busqueda en los datos impresos de un html, pero al parecer funciona de igual manera asi que no hay problema