Názory ke článku PHP & MySQL – Vyhľadávanie na stránke – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Názory ke článku PHP & MySQL – Vyhľadávanie na stránke – Programujte.comNázory ke článku PHP & MySQL – Vyhľadávanie na stránke – Programujte.com

 

Názory ke článku PHP & MySQL – Vyhľadávanie na stránke

ps2console   NOVÝ
6. 10. 2006

no vyzerá to dobre ;)

dalaman   NOVÝ
6. 10. 2006

caute, preco sa musi pisat v tom sql dotaze aj percento?
like '%".addslashes(htmlspecialchars($_post['search']))."%'

zaachi   NOVÝ
6. 10. 2006

Clanek se me moc nelibi.
Jako nadpis clanku je "PHP & MySQL – Vyhľadávanie na stránke", ale kde je tedy podrobneji vysvetleno vyhledavani?
Jedine vyhledavani je zde pouziti operatoru LIKE, ktery neni zrovna to nejlepsi reseni, hlavne jedna li se o vetsi databazi.
Nicmene neni zde vysvetlena syntaxe tohoto operatoru a ani jeho pouziti. Je zde jenom hotove reseni jednoho vyhledavani, ketere je temer nepouzitelne, kvuli tomu jak je pomale.
Dale funkce sformatovat, kterou autor asi vymyslel: tato funkce je napsana priserne. Autor by si mel sam nastudovat funkci printf, ktera se pouziva pro formatovany vystup, a u ktere si muze nastavit nekolik direktiv s jejihz pomoci bude provedeno formatovani. Printf neni ovsem jedina funkce, ktera jde pouzit. Takovych funkci je daleko vic (napriklad number_format, ktera je primo pro tyto ucely vytvorena).

Dalsi co me docela zarazilo je cast kodu:

while($rows=@mysql_fetch_array($mysql_query)) {
$stat=$rows['stat'];
$hlavne_mesto=$rows['hlavne_mesto'];
$pocet_obyvatelov=$rows['pocet_obyvatelov'];

nechapu proc vyberete data z databaze, priradite je do dalsich promennych a potom je stejne vypisete. Veskera vybrana data se potom kopiruji jeste jedou a uplne zbytecne. Zabira se tim dalsi misto v pameti na serveru.

A kdyz uz se chces zabyvat takovyma vecma jako je formatovani cisel, tak uz bys mohl i spravne osetrit SQL dotaz.
Prijdou sem uzivatele, kteri si zdrojak zkopiruji a budou se divit proc jim nefunguje spravne. Bude to mozna zpusobeno funci addspashes, kterou ty pouzivas bez toho, aby sis radeji nejprve zjistil nastaveni na serveru. Zase je zde napriklad funkce get_magic_quotes_gpc.

No a pokud se tedy jedna o hotove reseni, tak by nebylo spatne doplnit SQL dotaz alespon o nejaky LIMIT a razeni.

Preji hodne zdaru pri opravovani nebo psani dalsiho clanku.

knova   NOVÝ
18. 10. 2006

Jojo,
proč je titulek "PHP & MySQL – Vyhľadávanie na stránke"?
Hledal jsem informace o vyhledávání na stránce (čili fulltext na webové stránce) a místo toho najdu toto.

A vůbec, já vím, že chceš začátečníkům pomoci. Ale takhle jim poravdu nepomůžeš. Začínal jsem před lety úplně stejně. A časem jsem zjistil, že musím překopat celou část kódu, která pracuje s databází, protože se to takhle prostě dělat nedá.
HTML zdroj je v podstatě také špatný, formulář je formulář a tabulka je tabulka. Takto jen naučíš začátečníky své zlozvyky. Oni ti sice teď děkují - protože potřebují rychle bez jakýchkoli znalostí nabušit nějaký kód (a vydávat ho pak za vlastní a machrovat před kamarádama, v extrémních případech se pak dokonce prohlašovat za PHP programátora a webdesignera a otevřít si webdesign studio:)).
Ale za nějakou chvíli snad i oni pochopí, jak byli hloupí a líní a s děkováním bude konec.
I když, asi ne pořád - stále se rodí noví lidé, kterým tyto stránky asi mají co nabídnout.

pin2k   NOVÝ
22. 11. 2006

Kdysi jsem psal také vyhledávání v php z mysql db a musím říct, že to mám mnohem jednodušeji, zhruba o polovinu kratší.

Ladis   NOVÝ
6. 12. 2006

Hlavně je vhodné pro vyhledávání použít MySQL fulltext a ne porovnávání. Výsledky pak lze řadit i podle relevance. Ale jinak přeju hodně štěstí při učení sebe i druhých.

Ladis, php.blog.cz   NOVÝ
6. 12. 2006

Procento značí wildcard, tj.

%kol bude hledat jenom pred, jako "drtikol",
kol% zase za slovem, tj např. "koloběžka".
%kol% najde i "drtikoloběžku",
kol najde jenom záznam ve kterém je přesně kol

Ale jinak

tomas   NOVÝ
25. 5. 2007

celý článek jsem pročetl a nemohl jsem najit SQL tabulku. kdyžtak mi ji pošlete na E-mail prosím díky moc

Nika   NOVÝ
13. 6. 2007

no tak vy ste ale mudri

Peta   NOVÝ
13. 6. 2007

aj ty si to myslis??=))

Stefan   NOVÝ
27. 8. 2007

Ja som zaciatocnik, vypada to mozno pekne, ale nefunguje mi to ani po 2 hodinach:
a) tabulka - ukazuje mi chybu undefined id (ale ukaze sa). Ja som si urobil hTML-tabulku s while a for a tabulka je v poriadku bez chyby.
b) formular mi nefunguje - jedine ak robim chybu, ze mozno som si mal dosadit za $_server['PHP-SELF'] nejaku svoju cestu (obdobne ako si davam heslo) - to ale ako zaciatocniknemoze vediet

Undefined variable: _server in C:\ComplexWebServer\http_docs\hlavne_mesta.php on line 26

Notice: Undefined index: search in C:\ComplexWebServer\http_docs\hlavne_mesta.php on line 70
•utujeme, ale nezadali ste §iaden text

Anonymní uživatel   NOVÝ
11. 11. 2007

[/b[kurz[/ :'-( u]iva]]

Elektron112   NOVÝ
21. 8. 2008

Reagoval na komentář od uživatele pin2k : a adresa by nebyla? Nejaké jednodušší bez ochrany proti SQL injection by se mi hodilo.

matus   NOVÝ
23. 2. 2009

preco mi to nejde sak som to cele skopiroval a dal ako serch.php a aj tak mi to nejde a databaza.inc.php mam nastavenu spravne to viem,

smejd   NOVÝ
29. 9. 2009

Ten kod je ekny bordel ten kod. Nakolko je to funkcne davam tomu plus. Ked sa v tom nejaky zaciatocnik vyzna aspon sa nauci :) dufam ze nie zlym zvikom

frelancer   NOVÝ
3. 1. 2011

v praxi nepouzitelny kod... ak chcel vysvetlit ako pracuje like stacilo na to par riadkov.

Přidej svůj názor

×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:
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo e-mailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Reaguješ na příspěvek:
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové názory e-mailem (pouze pro přihlášené)
Sleduj názory ke článku a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.



loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý