Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: PHP+mysql

Sivun loppuun

mmikko [24.08.2010 10:14:16]

#

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...

Grez [24.08.2010 14:34:56]

#

No, itse tekisin varmaan kolme taulua

Käyttäjä
Nimi
yms.

Ottelu
Koti
Vieras

Valinta
Käyttäjä->
Ottelu->
Valinta1
ValintaX
Valinta2
Kommentti

mmikko [24.08.2010 15:40:21]

#

Joo tuohon tyyliin itekkin tietokantakuvausta piirtelin =)

mmikko [20.09.2010 13:46:36]

#

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! =)

mmikko [20.09.2010 23:16:54]

#

sainhan mä sen toimimaan ku vähän potkii =)

mmikko [24.09.2010 11:23:01]

#

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

-tossu- [24.09.2010 14:35:27]

#

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;
}

mmikko [24.09.2010 14:49:49]

#

kiitos -tossu-!!! Olipas se kuitenkin sitten yksinkertainen ratkaisu, mulla tahtoo olla ongelmana, että ajattelen asiat liian monimutkaisesti.

mut suuri kiitos avusta!

-mmikko

mmikko [26.09.2010 21:55:43]

#

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

-tossu- [26.09.2010 22:37:29]

#

mmikko kirjoitti:

Toimii hyvin ei siinä mitään, mutta haluaisin tallentaa tiedot jollakin muulla arvoilla kuin numeerisena arvona.

Mikä vika on numeerisissa arvoissa?

mmikko [26.09.2010 23:04:43]

#

-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

-tossu- [26.09.2010 23:14:00]

#

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.

mmikko [26.09.2010 23:52:32]

#

-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

Metabolix [27.09.2010 00:32:59]

#

Kokeilepa vaikka soveltaa tässä if-lausetta.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta