Filtrování dat pomocí select – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Filtrování dat pomocí select – PHP – Fórum – Programujte.comFiltrování dat pomocí select – PHP – Fórum – Programujte.com

 

Mortem
~ Anonymní uživatel
2 příspěvky
3. 1. 2018   #1
-
0
-

Zdravím mám takový problém nevím jak napsat, aby mi to filtrovalo data z databáze pomocí selectu a pak se vypsaly. 

     <select>
       <option>vsechny</option>
       <option>Předkrmy</option>
       <option>Polévky</option>
       <option>Hlavní jídla</option>
       <option>Dezerty</option>
     </select>

chtěl bych, aby ihned na najetí na stránku se vypsaly všechny recepty. A potom při vyběru jiné možnosti se automaticky zobrazily třeba předkrmy. Tzn. bez tlačítka je to možné? 

Nahlásit jako SPAM
IP: 193.179.111.–
peter
~ Anonymní uživatel
3981 příspěvků
4. 1. 2018   #2
-
0
-

Mozne to je, ale html neni excel. Musis si vygooglovat potrebny js/jquery nebo napsat sam.
http://vratnice.fpf.slu.cz/…l-seznam.htm

google = javascript table filter
http://listjs.com/examples/table/
https://www.sitepoint.com/…uery-tables/ - treba FancyGrid
http://koalyptus.github.io/…ter/examples - Exact match by column (jen jin to ve FF moc nefunguje, teda :) )
http://cssdeck.com/…table-filter
https://datatables.net/

<pre id=xxx></pre>

<script>
function el(id) {return document.getElementById(id);}
function myWrite(str) {el('xxx').innerHTML+="<br><br>"+str;}
function myWrite2(table) {myWrite(myFormat(table));}
function myFormat(table) {var i,j,str; str=''; for(i=0;i<table.length;i++) {for(j=0;j<table[i].length;j++) str+=table[i][j]+' | '; str+='<br>';} return str;}

function tableFilter(table,col,str) {
var i, new_table;
new_table = [];
for(i=0;i<table.length;i++)
if (table[i][col]==str) {new_table[new_table.length] = table[i];}
return new_table;
}

var table, new_table;

table = [
[1,'aaa','x'],
[2,'aab','y'],
[2,'aaa','z']
];

myWrite2(table);
myWrite('table filtr col=1, text=aaa');
new_table = tableFilter(table,1,'aaa');
myWrite2(new_table);
myWrite('new_table filtr col=0, text=2');
new_table = tableFilter(new_table,0,2);
myWrite2(new_table);
myWrite('table filtr col=0, text=2 pro puvodni table');
new_table = tableFilter(table,0,2);
myWrite2(new_table);
</script>
Nahlásit jako SPAM
IP: 2001:718:2601:258:4172:2a...–
peter
~ Anonymní uživatel
3981 příspěvků
4. 1. 2018   #3
-
0
-

Ps. V php je to podobne, jen tam pridas dolary a par uprav. Ale s php by se to zbytecne komplikovalo. Pokud stranka stahne uz vsechny recepty, tak proc volat zas server, kdyz to muzes filtrovat uz u klienta pomoci javascriptu?

Nahlásit jako SPAM
IP: 2001:718:2601:258:4172:2a...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

Podobná vlákna

C# - Filtrování dat — založil Malag

Filtrování dat z mysql — založil Pepa Šrámek

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý