Avatar billede b3k-0ne Nybegynder
24. marts 2006 - 11:35 Der er 20 kommentarer og
1 løsning

Programmering af script til hold scoring!

Hej eksperter.
Jeg er ved at lave en hjemmeside for min lillebror

Jeg skal lave et script hvor i de kan indtaste informationer om kampe de har spillet i et spil.. hehe
Jeg ved bare ikke hvordan jeg skal programmere min database (og alt det andet)

Her er et link så i kan se hvad jeg ”ævler om”..!
http://per.hotserv.dk/eksperten.htm

Tak for hjælpen på forhånd

Marck Christensen
Avatar billede jakobdo Ekspert
24. marts 2006 - 13:41 #1
Din database ville jeg lave som:

tabel_navn: hold
id, navn, hjemmeside og hvad du ellers vil registrere på holdene...

tabel_navn: kampe
id, dato, hjemmehold (id fra hold-tabellen), udehold (id fra hold-tabellen), hjemmemap, udemap, hjemscore1, udescore1, hjemscore2, udescore2

Mere skal der vel næsten ikke gemmes i databasen.
Avatar billede b3k-0ne Nybegynder
24. marts 2006 - 21:10 #2
Okay, det skulle vel ikke være sådan så du måske kunne prøve at skrive hvordan SQL filen vil se ud så?
Avatar billede jakobdo Ekspert
24. marts 2006 - 21:44 #3
Jeg har leget lidt og lavet 3 tabeller.
En som indeholder holdene.
En som indeholder selve kampen.
Og sidste som indeholder maps.

CREATE TABLE `tbl_697765_team` (
`id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 50 ) NOT NULL ,
`hjemmeside` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;

CREATE TABLE `tbl_697765_match` (
`id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT ,
`datotid` DATETIME NOT NULL ,
`hjemmehold` SMALLINT UNSIGNED NOT NULL ,
`udehold` SMALLINT UNSIGNED NOT NULL ,
`hjemmemap` TINYINT UNSIGNED NOT NULL ,
`udemap` TINYINT UNSIGNED NOT NULL ,
`hjemscore1` TINYINT UNSIGNED NOT NULL ,
`udescore1` TINYINT UNSIGNED NOT NULL ,
`hjemscore2` TINYINT UNSIGNED NOT NULL ,
`udescore2` TINYINT UNSIGNED NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;

CREATE TABLE `tbl_697765_map` (
`id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;
Avatar billede b3k-0ne Nybegynder
24. marts 2006 - 23:06 #4
okay det ser lækkert ud. men hvordan skal jeg få sat min side sammen (http://per.hotserv.dk/eksperten.htm)med databasen?
Avatar billede jakobdo Ekspert
24. marts 2006 - 23:12 #5
Du skal jo først lave en form, hvor du kan oprette hold.
Så laver du en form hvor du kan oprette baner/maps.
Til sidste skal du så lave en form, hvor du kan vælge hold hjemme og ude.
Deres map og så gemme hele balladen i match tabellen.

Har du slet ikke arbejder med php og database før?
Avatar billede b3k-0ne Nybegynder
24. marts 2006 - 23:21 #6
Nej ikke rigtigt, er lige begyndt sådan lidt på det. Men kunne jeg ikke bare bruge den side der jeg har lavet, og så bare sætte det sammen med databasen på en eller anden måde?
Avatar billede jakobdo Ekspert
24. marts 2006 - 23:33 #7
Det kunne du godt jo, men så skal du ikke bruge alle mine 3 tabeller.
Start med at lav en form, som poster det til f.eks. input.php
Til at starte med, kan du indsætte koden: <?php print_r($_POST); ?> på input.php siden.

Så laver vi resten når du har lavet en form og filen input.php virker.
Avatar billede b3k-0ne Nybegynder
25. marts 2006 - 00:37 #8
Øhh okay.. Tror bare det bliver en anden dag jeg laver det her, måske når jeg engang har lidt forstand på det.. :P

Bare kom med et svar så får du dine point.

Men mange tak..
Avatar billede jakobdo Ekspert
25. marts 2006 - 09:59 #9
Nej, vi skal ikke bare lukke.
Jeg kan godt lave et script som laver det hele for dig, håbede bare du hellere ville lære lidt selv og ende med at kode det meste selv og rent faktisk forstå hvad der forgår.
Avatar billede b3k-0ne Nybegynder
25. marts 2006 - 14:36 #10
Jeg vil også gerne lære det, har lige lånt en masse bøger på biblioteket om PHP 5 og MySQL så er igang :o)
Men det kunne være lækkert hvis du kunne lave det script. Men du skal bare sige til, hvis du har brug for noget grafisk arbejde.
Plejer nemlig kun at lave alt det grafiske arbejde, men nu ville jeg gerne prøve lidt andet. Men det ville være cool hvis du kunne lave det til mig.
Avatar billede jakobdo Ekspert
26. marts 2006 - 11:55 #11
Har du oprettet en tabel til det?
Avatar billede b3k-0ne Nybegynder
26. marts 2006 - 12:21 #12
ja jeg har oprettet den du skrev
Avatar billede b3k-0ne Nybegynder
26. marts 2006 - 12:44 #13
eller dem du skrev..
Avatar billede jakobdo Ekspert
26. marts 2006 - 15:40 #14
Ok, jeg kigger lige på det senere.
Avatar billede b3k-0ne Nybegynder
26. marts 2006 - 15:47 #15
Okay det lyder godt..
Avatar billede jakobdo Ekspert
26. marts 2006 - 18:06 #16
Prøv denne kode:

<?php
//http://www.eksperten.dk/spm/697765
session_start();
if($_SESSION['loggedIn'])
{
    //Vi har en admin
   
    if(isset($_POST['opret']))
    {
        //Forbind til mysql...
        mysql_query("INSERT INTO tabelnavn(id,teamnavn1,teamnavn2,map1,map2,runde1team1,runde1team2,runde2team1,runde2team2
        VALUES('','".$_POST['team1']."','".$_POST['team2']."','".$_POST['map1']."','".$_POST['map2']."',
        '".$_POST['runde1t1']."','".$_POST['runde1t2']."','".$_POST['runde2t1']."','".$_POST['runde2t2']."')");
    }
    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
    echo 'Team1: => <input type="text" name="team1"><br />';
    echo 'Team2: => <input type="text" name="team2"><br />';
   
    echo 'Map1: => <input type="text" name="map1"><br />';
    echo 'Map2: => <input type="text" name="map2"><br />';
   
    echo 'Runde1 - Team1: => <input type="text" name="runde1t1"><br />';
    echo 'Runde1 - Team2: => <input type="text" name="runde1t2"><br />';
   
    echo 'Runde2 - Team1: => <input type="text" name="runde2t1"><br />';
    echo 'Runde2 - Team2: => <input type="text" name="runde2t2"><br />';
   
    echo '<input type="submit" name="opret" value="Gem">';
    echo '</form>';
}
else
{
    //Vi har ikke en admin
   
    if($_POST['user'] == 'admin' && $_POST['pass'] == 'secret')
    {
        $_SESSION['loggedIn'] = true;
        header('Location: ' . $_SERVER['PHP_SELF']);
        exit();
    }
   
    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
    echo 'Brugernavn: => <input type="text" name="user"><br />';
    echo 'Kodeord: => <input type="password" name="pass"><br />';
    echo '<input type="submit" name="login" value="Login">';
    echo '</form>';
}

?>
Avatar billede b3k-0ne Nybegynder
26. marts 2006 - 18:27 #17
Okay, det ser lækkert ud.. :P
Jeg skal stadig bare bruge den samme database så? Fordi jeg syntes ikke rigtig dfen skriver noget i den..
Avatar billede jakobdo Ekspert
26. marts 2006 - 18:30 #18
Det er korrekt!
Prøv at fang mig på msn: jakobdo [at] hotmail {dot} com
Så kan vi lige få rettet resten på plads!
Avatar billede jakobdo Ekspert
26. marts 2006 - 20:19 #19
Og et svar!
Avatar billede b3k-0ne Nybegynder
26. marts 2006 - 20:22 #20
Tak til Jakob... her er hans løsning:

<?php
//http://www.eksperten.dk/spm/697765
session_start();
require("connect.php");

if($_SESSION['loggedIn'])
{
    //Vi har en admin
 
    if(isset($_POST['opret']))
    {
        //Forbind til mysql...

        mysql_query("INSERT INTO  tbl_697765_match(id,datotid,hjemmehold,udehold,hjemmemap,udemap,hjemscore1,udescore1,hjemscore2,udescore2)
        VALUES('',NOW(),'".$_POST['team1']."','".$_POST['team2']."','".$_POST['map1']."','".$_POST['map2']."',
        '".$_POST['runde1t1']."','".$_POST['runde1t2']."','".$_POST['runde2t1']."','".$_POST['runde2t2']."')") or die(mysql_error());
    }
    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
    echo 'Team1: => <input type="text" name="team1"><br />';
    echo 'Team2: => <input type="text" name="team2"><br />';
 
    echo 'Map1: => <input type="text" name="map1"><br />';
    echo 'Map2: => <input type="text" name="map2"><br />';
 
    echo 'Runde1 - Team1: => <input type="text" name="runde1t1"><br />';
    echo 'Runde1 - Team2: => <input type="text" name="runde1t2"><br />';
 
    echo 'Runde2 - Team1: => <input type="text" name="runde2t1"><br />';
    echo 'Runde2 - Team2: => <input type="text" name="runde2t2"><br />';
 
    echo '<input type="submit" name="opret" value="Gem">';
    echo '</form>';
}
else
{
    //Vi har ikke en admin
 
    if($_POST['user'] == 'admin' && $_POST['pass'] == 'secret')
    {
        $_SESSION['loggedIn'] = true;
        header('Location: ' . $_SERVER['PHP_SELF']);
        exit();
    }
 
    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
    echo 'Brugernavn: => <input type="text" name="user"><br />';
    echo 'Kodeord: => <input type="password" name="pass"><br />';
    echo '<input type="submit" name="login" value="Login">';
    echo '</form>';
}

$query = mysql_query("SELECT * FROM tbl_697765_match ORDER BY datotid");
if(mysql_num_rows($query)>0)
{
    echo "<table border='1'>";
    echo "<tr><th>Dato/Tid</th><th>Team 1</th><th>&nbsp;</th><th>Team 2</th><th>Bane 1</th><th>Bane 2</th><th>Map1</th><th>Map2</th><th>Total score</th></tr>";
    while($row = mysql_fetch_assoc($query))
    {
        echo "<tr><td>" . $row['datotid'] . "</td>";
        echo "<td>" . $row['hjemmehold'] . "</td>";
        echo "<td>vs</td>";
        echo "<td>" . $row['udehold'] . "</td>";
        echo "<td>" . $row['hjemmemap'] . "</td>";
        echo "<td>" . $row['udemap'] . "</td>";
        echo "<td>" . $row['hjemscore1'] . " / " . $row['udescore1'] . "</td>";
        echo "<td>" . $row['hjemscore2'] . " / " . $row['udescore2'] . "</td>";
        echo "<td>" . ($row['hjemscore1']+$row['hjemscore2']) . " / " . ($row['udescore1']+$row['udescore2']) . "</td></tr>";
    }
    echo "</table>";
}

?>
Avatar billede jakobdo Ekspert
26. marts 2006 - 20:24 #21
takker for point!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester