Autor Zpráva
jurinko2000
Profil
ako mám spraviť spresnenie parametrov na webe? potrebujem nieco ako alza.sk napr. ze produkt je na samsung. , produkt je modrý, produkt je na S4 mini. atd

myslel som že do DB dodám stĺpec Samsung, ďalší stĺpec S4, ďalší S3
ale ako to z db vytiahnem aby bol iba ten kde je napr. S4?


a budem pridávať 1/0
lionel messi
Profil
SELECT * FROM `produkty` WHERE `model` = 'Samsung' AND `farba` = 'modry'

Vyberieš všetky modré Samsungy. Podľa mňa nie je dobré robiť stĺpec pre každú značku/farbu/typ a dávať 1/0, o niečo vhodnejšie je dať stĺpce značka, farba a typ typu varchar (podľa toho som napísal aj dotaz) a tam ukladať dáta ako string, ale ešte lepší by možno bol trochu iný databázový návrh, bližšie neporadím, nie som profík.
jurinko2000
Profil
ja som myslel že by som to robil cez check boxy
lionel messi
Profil
jurinko2000:
ja som myslel že by som to robil cez check boxy
OK, ale trochu sa nechápeme. Teraz hovoríš o tzv. front-ende, ja som myslel tzv. back-end (predpokladám, že tieto pojmy počuješ po prvý raz, ak áno, pozri sem, kde to vysvetľujú profíci). Takýto návrh databáze, aký som popísal (ale ani ten, kt. si popísal ty), nevylučuje, že to v pohode urobíš cez checkboxy. Stačí im dať value takto:

<form method="post">
Samsung: <input type="checkbox" name="model" value="Samsung">
HTC: <input type="checkbox" name="model" value="HTC">
</form>

a v PHP v pohode vyfiltruješ nejako takto:

<?php
//pripojenie k db a ďalšiu logiku nechávam stranou, kód počíta s tým, že $_POST["model"] bol nastavený.

$query = mysql_query("SELECT * FROM produkty WHERE model ='". mysql_real_escape_string($_POST["model"]) ."'");
?>

poznámka: Použil som zastaralú funkciu mysql_*, nie je však problém prerobiť na mysqli_*.
jurinko2000
Profil
ok dik skusim ked budem na pc :)

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: