Autor Zpráva
kkarel
Profil *
Dobrý den,

mám zrpovozněné vyhledávání dat z databáze a to tím stylem, že ať zadám jakékoli slovo z jakéhokoli sloupce v databázi, najde to, co má. To je v pořádku. Rád bych ale nějakým formulářem (asi inputy a optiony) podmínil vyhledávání jen z některých sloupců (například nazev, autor...).
V php a mysql se hrabu dv dny, jiné zkušenosti s tím nemám. I za tu pro mě krátkou dobu se mi povedlo zprovoznit celé to vyhledávání... s tímto si však nevím rady, podmiňování jde trochu mimo mě. Zatím. Bohužel mě dost tlačí čas, můžu poprosit o nějký jednoduchý návod? kód? případně odkaz na zdroj, kde se něco podobného řeší?

vyhledávání mám zařízené klasicky přes form a metodu post na index.php, kde se načítá script ze stranky posli.php

Díky moc za jakoukoliv radu.
scheras
Profil *
Nejdříve tomu musíte mít uzpůsobený formulář. Asi takto:
<form method="post" action="index.php">
        <input type="text" name="s" placeholder="Hledaný text">
        
        <input type="checkbox" name="section[]" value="nazev">
        <input type="checkbox" name="section[]" value="autor">
        
        <input type="submit" name="hledej" value="Hledej">
</form>
Pak už v php skriptu jenom zpracujeme. Nic těžkého:
if ( !isset( $_GET[ 'section' ] ) ) {
        // Stávající sql kód pro vyhledávání
}
else {
        // Zjistíme, v kterých sekcích chceme hledat, a na základě toho vytvoříme sql dotaz
}
// pokračujeme ve vyhledávání, které už bude stejné jako v původním kódu
kkarel
Profil *
Díky za nasměrování!... pokud by to někoho zajímalo, kód je funkční, jen doporučuji místo $_GET dát $_POST. S $_GET mi to nefungovao, s $_POST spolehlivě.

Btw tušíte někdo proč ? :)
jenikkozak
Profil
V uvedeném skriptu je chyba - formulář se posílá metodou post, ale v PHP se zpracovává pole $_GET.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: