Autor | Zpráva | ||
---|---|---|---|
jurinko2000 Profil |
#1 · Zasláno: 21. 11. 2014, 18:12:48 · Upravil/a: jurinko2000
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 |
#3 · Zasláno: 21. 11. 2014, 18:35:51
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 |
#5 · Zasláno: 21. 11. 2014, 19:14:43
ok dik skusim ked budem na pc :)
|
||
Časová prodleva: 11 let
|
0