Hei!
Tarvitsisin hiukan teidän näkemyksiä asiastani. Olen suunnittelemassa tai toisin sanottuna mielessäni on rakentaa pieni php:lla ja tietokannalla toimivajärjestelmä. Kaverin kanssa harrastamme vakioveikkausta ja olisi huomattavasti helpompaa suunnitella kimppaveikkaus tämmösen "järjestelmän" avulla kun asutaan eri paikkakunnilla. Ja kysyisinkin neuvoja kuinka tekisin tietokannan järkevästi.
Tarkoituksena on tehdä php:llä sivusto, jossa on viikonlopun vakioveikkaus kohteet. Kohteita on 12-13 kpl. Kohteet tulisi taulukkoon. Otteluparien perässä olisi kolme checkboxia-> Johon voisin laittaa 1, X, 2, 1X, X2, 12 tai 1X2 näiden perässä olisi linkki johon voi kirjoittaa kohteesta pienen kommentin ja tallentaa sen. Tässä kohtaa tuo taulukko olisi "suunnittelu" tilassa, jotta kohteita ja kommentteja voisi viikonaikana muokata.
Manu - Chelsea c1 c2 c3 Linkki
Arsenal - Stoke c1 c2 c3 Linkki
West Ham - Liverpool c1 c2 c3 Linkki
....
....
Kun rivi on valmis se tallennettaisiin "lopullisesti" Ja valmisrivi tulisi toiselle sivulle vaikak tyyliin:
Manu - Chelsea 1X Linkki
Arsenal - Stoke 1 Linkki
West Ham - Liverpool 2 Linkki
....
....
Tämmönen olisi ideana, tuohon tietokantaan tarviisin todellakin apuja miten sen teen. Montako taulua yms...
No, itse tekisin varmaan kolme taulua
Käyttäjä
Nimi
yms.
Ottelu
Koti
Vieras
Valinta
Käyttäjä->
Ottelu->
Valinta1
ValintaX
Valinta2
Kommentti
Joo tuohon tyyliin itekkin tietokantakuvausta piirtelin =)
Hep!
Nyt oon päässyt hyvin vauhtiin(alkuun) tässä projektissa. Nyt olen pähkäillyt seuraavaa asiaa miten saisin sen toimimaan.
syötän ottelut toisella formilla ja tallennan tietokantaan, haen ottelut toisella formilla näkyville, mutta nyt olen ongelmissa sen kanssa miten saan checkboxit paikoilleen otteluparin perään taulukkoon, jonka oon hakenu tietokannasta. ->
ID ottelupari checboxit
1 Manu - Chelsea c1 c2 c3
2 Arsenal - Stoke c1 c2 c3
Tallennakko checboxien arvot, otteluparin id:n mukaan? ja tämä kaikki tulisi tapahtua yhdellä queryllä, foreachiä käyttäen? ainakin käytän foreachiä tuossa ku tallennan ottelut tietokantaan yhdellä kertaa.
Kiitos jälleen kerran! =)
sainhan mä sen toimimaan ku vähän potkii =)
Moi!
Oon tässä miettinyt, että miten saisin tehtyä vaikka javascript funktion tai php yms., että ku valitaan vaikka droplistboxista joku arvo esim. 32 niin se tulostus jokaiseen textboxiin mihin haluan? ja homma jatkus vielä siten, että ne arvot saa tallennettua tietokantan siitä kerralla, tää homma onnistuu jo mutta tuo funktion tekeminen ei oikein nyt onnistu.
-mikko
mmikko kirjoitti:
Oon tässä miettinyt, että miten saisin tehtyä vaikka javascript funktion tai php yms., että ku valitaan vaikka droplistboxista joku arvo esim. 32 niin se tulostus jokaiseen textboxiin mihin haluan?
Helpoiten tuo onnistuu JavaScriptillä.
<form name="formi"> <select name="lista" onchange="muuta ()"> <!-- optionit tähän väliin --> </select> <input type="text" name="laatikko"> </form>
function muuta () { var luku = document.formi.lista.options[document.formi.lista.selectedIndex].value; document.formi.laatikko.value = luku; }
kiitos -tossu-!!! Olipas se kuitenkin sitten yksinkertainen ratkaisu, mulla tahtoo olla ongelmana, että ajattelen asiat liian monimutkaisesti.
mut suuri kiitos avusta!
-mmikko
Hep!
Tallennan allaolevalla koodilla, checkboxien arvoja tietokantaan. Toimii hyvin ei siinä mitään, mutta haluaisin tallentaa tiedot jollakin muulla arvoilla kuin numeerisena arvona. Onko tämä mahdollista allaolevaan koodiin? Vai voinko hakea sitten myöhemmin kannasta kaikki arvot ja siinä vaiheessa muuttaa numeeriset arvot kirjaimiksi?
<?php $host="localhost"; // Host name $username=""; // Mysql username $password=""; // Mysql password $db_name=""; // Database name $tbl_name=""; // Table name mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); $updated = FALSE; if(count($_POST) > 0){ $val1 = $_POST['valinta1']; array_map('intval',$val1); $val1 = implode(',',$val1); mysql_query("UPDATE $tbl_name SET valinta1=0"); mysql_query("UPDATE $tbl_name SET valinta1=1 WHERE id IN ($val1)"); $updated=TRUE; } ?> <html> <body> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> <table> <tr> <th>Ottelu</th> <th>1</th> <th>X</th> <th>2</th> </tr> <?php $sql = "SELECT id, ottelu,valinta1 FROM $tbl_name ORDER by id ASC"; $result = mysql_query($sql); while(list($id,$ottelu,$val1)=mysql_fetch_row($result)){ $checked = ($val1==1) ? 'checked="checked"' : ''; echo '<tr><td>'.$ottelu.'</td><td><input type="checkbox" name="valinta1[]" value="'.$id.'" '.$checked.'/></td></tr>'."\n"; } ?> <tr><td colspan="2"><input type="submit" name="submit" value="Tallenna valinnat" /></td></tr> </table> </form> </body> </html>
-mmikko
mmikko kirjoitti:
Toimii hyvin ei siinä mitään, mutta haluaisin tallentaa tiedot jollakin muulla arvoilla kuin numeerisena arvona.
Mikä vika on numeerisissa arvoissa?
-tossu- kirjoitti:
mmikko kirjoitti:
Toimii hyvin ei siinä mitään, mutta haluaisin tallentaa tiedot jollakin muulla arvoilla kuin numeerisena arvona.
Mikä vika on numeerisissa arvoissa?
ei mitään sinänsä mutta haluan tulostaa checkboxin arvot myöhemmin muodossa 1 X 2
-mikko
mmikko kirjoitti:
ei mitään sinänsä mutta haluan tulostaa checkboxin arvot myöhemmin muodossa 1 X 2
Anna niiden olla tietokannassa numeerisina ja muuta ne vasta tulostuksessa.
-tossu- kirjoitti:
mmikko kirjoitti:
ei mitään sinänsä mutta haluan tulostaa checkboxin arvot myöhemmin muodossa 1 X 2
Anna niiden olla tietokannassa numeerisina ja muuta ne vasta tulostuksessa.
ahaa, joo siis niinkin voi tehdä. Hyvä että selvis tässä vaiheessa. Voisitko vähän valottaa kuinka saan 1 esim X:n?
-mikko
Kokeilepa vaikka soveltaa tässä if-lausetta.
Aihe on jo aika vanha, joten et voi enää vastata siihen.