Zle vyhadzovanie vysledkov z databazy

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod fili » 05 led 2012 22:28

Pocuj, mozeme sa vratit k tomuto kodu? To GET mi nesedi a moc tomu nerozumiem.
A vysledok by mal byt priblizne takyto:
Schránka-1.jpg
Schránka-1.jpg (13.43 KiB) Zobrazeno 242 x



<?php

$sql="SELECT * FROM veci WHERE tricka LIKE '%".$_POST['tricka']."%'";
$result=MySQL_Query($sql) Or Die(MySQL_Error());
echo "Nalezeno řádků:".MySQL_Num_Rows($result)."<br>";
While($neco=MySQL_Fetch_Assoc($result))
{
echo "<p>";
ForEach($neco as $k=>$v)
{
echo "{$k}:{$v}<br>";
}
echo "</p>";
}
?>

--- Doplnění předchozího příspěvku (05 Led 2012 22:29) ---

Ten nazov je link

Reklama
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod CZechBoY » 05 led 2012 22:31

no jasně že je link, ale kam má víst a co má zobrazit?
pošli sem tvojí strukturu tabulek a já ti sem hodim hotový řešení
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod fili » 05 led 2012 23:03

No ved takto a url, kam to ma odkazovat v uz databaze mam, len to potrebujem z nej vytiahnut
a zo slovicka viac, teda linku sa tam prekliknut, obsah stranky uz nie je podstatny.
fili píše:No s tym ratam, ze bude viac vysledkov. Priklad:

Pocet nájdených produktov:
Tricko1 modra cena 9€ viac (<a href="tricko1.php">viac</a>)
Tricko2 modra cena 10€ viac (<a href="tricko2.php">viac</a>)
Tricko3 modra cena 10€ viac (<a href="tricko3.php">viac</a>)


A mam otazku,
v sql dotaze pri spajani vicerych atributov hladania som pozil and, ale to uzivatel asi musi
pouzit vsetky selecty inak to nebude fungovat, co mam pouzit namiesto "and" aby tie selecty moholo akokolvek
kombinovat. A kolko atributov pre vyhladavanie do sql dotazu mozem takto spojit, ma to nejake mnozstevne obmedzenie?

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod CZechBoY » 06 led 2012 09:41

v informatice není nic neomezené, ledatak načítání Windows :D
počet "atributů" je však pro naše ruční dotazy dostačující :)

pokud chceš vybrat trička, které mají cenu 10€ nebo velikost 45 tak SQL WHERE bude: WHERE cena='10€' OR velikost=45

v phpmyadminu zvol tu tabulku a v horním menu dej Export a pak odškrtni Data a dole ještě odškrtni "Do souboru" a dej Proveď
pošli sem potom výstup
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod fili » 06 led 2012 19:58

Takze sa da pouzit len "and" a "or" nic ineho?
Tu je struktura tabulky:
-- Štruktúra tabuľky pre tabuľku `veci`
--

CREATE TABLE `veci` (
`Nazov` varchar(255) character set cp1250 collate cp1250_bin NOT NULL,
`Typ` varchar(255) character set cp1250 collate cp1250_bin NOT NULL,
`Aký` varchar(150) character set cp1250 collate cp1250_bin NOT NULL,
`Farba` varchar(150) character set cp1250 collate cp1250_bin NOT NULL,
`Veľkosť` varchar(150) character set cp1250 collate cp1250_bin NOT NULL,
`Cena` varchar(150) character set cp1250 collate cp1250_bin NOT NULL,
`Url` varchar(255) character set cp1250 collate cp1250_bin NOT NULL,
`Img` varchar(255) character set cp1250 collate cp1250_bin NOT NULL,
PRIMARY KEY (`Nazov`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;

Uživatelský avatar
Ellrohir
nováček
Příspěvky: 49
Registrován: prosinec 11
Bydliště: Praha
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod Ellrohir » 06 led 2012 21:25

můžeš použít spoustu dalších podmínek - doporučuju najít si nějakej "manuál" k SQL a nastudovat si to ;)

http://www.kiv.zcu.cz/~zima/vyuka/db2/sql92-01.html - tohle mi přijde docela použitelný
"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod CZechBoY » 06 led 2012 21:32

tak a teď co se tam ještě ukládá do tý tabulky :D
url nechápu.. to je CoolURL?
a sloupec `aký` znamená co?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod fili » 06 led 2012 21:53

Ellrohir, dakujem. No ja som myslel ci sa neda pouzit nejak "and" a "or" spolu. Asi nie v tych nejakych manualoch som nic ine
nenasiel. A co je lepsie pouzit, aby vysledky boli co najpresnejsie, myslim vseobecne.

CZechBoY,
co je CoolURL, to netusim, ma to byt url stranky, kde sa nachadza podrobny popis produktu - link na preklik
Img ma obsahovat url obrazku, ktory by sa mal zobrazovat pri vysledkoch hladania
Aký ma obsahovat pansky, damsky, detsky a este unisex - ja som to trochu zmenil pretoze
Typ ma obsahovat aj ine veci napr. svetere, nohavice, sukne, a pod. ako len tricka na trickach to len testujem

Uživatelský avatar
Ellrohir
nováček
Příspěvky: 49
Registrován: prosinec 11
Bydliště: Praha
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod Ellrohir » 06 led 2012 23:20

jde to úplně v pohodě...můžeš řetězit "podmínka1 AND podmínka2 AND podmínka3 OR podmínka4" atd. úplně libovolně...a taky jdou použít závorky, aby se dalo najevo, jak je dotaz myšlenej (př.: "(podmínka1 AND podmínka2) OR podmínka3" nebo "podmínka AND (podmínka2 OR podmínka3)")...jo a krom AND a OR máš k dispozici i "NOT podmínka", což se taky může občas hodit ;)

jinak obecně z teorie - AND dává přesnější dotazy, ale snižuje se úplnost vyhledávání (nenajde se vše, co by mě potenciálně zajímalo), zatímco OR naopak dá větší úplnost, ale zase méně přesné výsledky (vyhodí spoustu výsledků, ale mnohý z nich budou pro mě nezajímavý)...záleží hlavně na konkrétním případě, co je víc žádoucí
"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod CZechBoY » 06 led 2012 23:28

dej nějaký příklad CoolURL ať vím kam odkazovat a jak případně nazvat ten soubor
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod fili » 07 led 2012 08:37


Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Zle vyhadzovanie vysledkov z databazy

Příspěvekod CZechBoY » 07 led 2012 15:48

v tom případě potřebuješ použít ModRewrite na přepis adres (metoda podstrkávání)
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW


Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti