score bij houden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nico Kamper

Nico Kamper

02/09/2015 15:43:48
Quote Anchor link
Hallo ik heb een vraag ik ben vanplan online score bij te gaan houden

Maar nu zit ik met een uitdaging waar ik nog geen oplossing voor heb gevonden.
Ik zou graag via een webpagina 2 invul blokje hebben die je met een knop kunt bevestigen dat je hem naar een mysql database schrijft. En dat deze waades er dan in blijfen staan en vervolgens weer veranderd kunnen worden.

zodat je zeg maar een score verloop van de wedstrijd in kunt vullen

1-0 post 1-1 post 1-2 post


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
  <head>
    <title>score1<title>
  </head>
  <body>
  <form action="plaatsscore.php" method="POST">
  
    Team 1 - Team 2
    <input type="text" name="team1" value="" size="5">
    -
    <input type="text" name="team2" value="" size="5">
    
    <input type="submit" value="bevestig">
  </form><br>


  
 
 
 </body>
 </html>


ik hoop dat mijn bedoeling duidelijk is.

ik ben een beginnend phper dus mijn kennis is niet heel groot

Groet Nico
- Aar -:
Gelieve in het vervolg voor scripts de [code][/code]-tags gebruiken. Zie ook deze uitleg over de opmaakcodes.
Alvast bedankt!
Gewijzigd op 02/09/2015 16:27:51 door - Ariën -
 
PHP hulp

PHP hulp

26/04/2024 06:20:14
 
Eddy E

Eddy E

02/09/2015 16:23:56
Quote Anchor link
Wat heb je al?
Weet je wel welke functions je moet gaan gebruiken?
Welke logica denk je nodig te hebben? Werk dit eens uit.


Wat je nu vraagt is veel te ruim.
Iets als: "Ik wil een nieuw iets uitvinden. Het moet rond draaien als ik mijn voet er tegen zet."
Heb je nu over een fiets? Of een voetbal? Of een draaimolen?
 
Obelix Idefix

Obelix Idefix

02/09/2015 16:52:17
Quote Anchor link
Neem aan dat je score per wedstrijd wilt bijhouden? Je zult dus ergens moeten vastleggen welke wedstrijd je de gegevens van bijhoudt.
Wil je elke tussenstand bewaren? Of alleen de laatste (tussen)stand?
 
Nico Kamper

Nico Kamper

02/09/2015 16:54:26
Quote Anchor link
ik kan eventueel per wedstrijd een apparte tabel aanmaken

je moet de tussen stand kunnen invullen en vervolgens weer kunnen wijzigen dat de laatste (tussen)stand zichtbaar is
Gewijzigd op 02/09/2015 16:55:29 door Nico Kamper
 
Jan de Laet

Jan de Laet

02/09/2015 16:54:34
Quote Anchor link
Je gaat nu naar plaatsscore.php om je formulier af te handelen.
Als het goed is doe je daar de controles en werk je de database bij.

(Dit hoeft overigens niet in een apart php script maar kan ook in het script waar je formulier staat.
Je krijg dan iets als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
if ($_SERVER['REQUEST_METHOD'] == 'POST') {

    //doe hier de controles en werk de database bij

} else {

   //hier komt dat wat je al had

}


Bij je formulier kun je met value de eerder ingevulde waardes laten zien.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    <input type="text" name="team1" value="<?php echo isset($_POST['team1']) ? htmlspecialchars($_POST['team1']) : '' ?>" size="5">


Value wordt nu gevuld als $_POST['team1'] bestaat (omdat het formulier al een keer ingevuld)
 
Nico Kamper

Nico Kamper

02/09/2015 17:19:09
Quote Anchor link
ik heb hem nu als volgt gemaakt

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
    
    // contact maken met database
    
    $db = array (
    'host' => 'localhost',
    'user' => 'test',
    'pass' => 'test',
    'dbname' => 'wed1'
);

if(!mysql_connect($db['host'], $db['user'], $db['pass']))
{

    trigger_error('Fout bij verbinden: '.mysql_error());
}

elseif(!mysql_select_db($db['dbname']))
{

    trigger_error('Fout bij selecteren database: '.mysql_error());
}

else
{
    $sql = "SET SESSION sql_mode = 'ANSI,ONLY_FULL_GROUP_BY'";
    if(!mysql_query($sql))
    {

        trigger_error('MySQL in ANSI niet mogelijk');
    }
}



    // voor invullijst


if ($_SERVER['REQUEST_METHOD'] == 'POST') {

    //doe hier de controles en werk de database bij

} else {

   //hier komt dat wat je al had

}

?>





<html>
  <head>
    <title>score1<title>
  </head>
<body>
  <p>test</p>
  
<form  method="POST">
  
    Team 1 - Team 2
    <input type="text" name="team1" value="<?php echo isset($_POST['team1']) ? htmlspecialchars($_POST['team1']) : '' ?>" size="5">
    -
    <input type="text" name="team2" value="<?php echo isset($_POST['team2']) ? htmlspecialchars($_POST['team2']) : '' ?>" size="5">
    
    <input type="submit" value="bevestig">
  </form>
  <p>test2</p>


  
 
 
</body>
 </html>


aleen ik zie helemaal niks
 
Michael -

Michael -

02/09/2015 17:33:13
Quote Anchor link
De database lijkt sterk op een voorbeeld uit een tutorial van PHPtuts, maar deze functies (mysql_*) zijn hopeloos verouderd en zal 'notices' gegeven en uiteindelijk uit PHP verdwijnen. Je zult gebruik kunnen maken van MySqli of PDO.
Pdo - phptuts
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
Warning
This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:
mysqli_connect()
PDO::__construct()


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
if ($_SERVER['REQUEST_METHOD'] == 'POST') {

    //doe hier de controles en werk de database bij

} else {

   //hier komt dat wat je al had

}

Dit was als voorbeeld gegeven en door dit alleen klakkeloos in je script te gooien zal het niks doen.
In het eerste deel kun je je $_POST variabelen gebruiken, controleren en afhandelen. Hier kun je dus kijken of de velden zijn ingevuld, alleen inhoud hebben die jij wilt hebben en daarna kun je het opslaan in de database.
De connectie moet bovenaan je script en de 'insert' kan dan op die plek om de gegevens op te slaan.
'//hier komt dat wat je al had' Hiermee werd bedoeld dat je hier dan je formulier kan plaatsen (natuurlijk alleen het 'form' deel)

plaats ook even het volgende bovenaan je script zodat eventuele foutmeldingen worden weergegeven
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
error_reporting(E_ALL)
?>
Gewijzigd op 02/09/2015 17:42:36 door Michael -
 
Eddy E

Eddy E

02/09/2015 21:12:02
Quote Anchor link
Daarbij kunnen er toch alleen punten bij komen?
Een 'getal' invullen is dus niet nodig. Gewoon een PLUS-knopje tonen. En dat is dan gewoon een <a href="updatescore.php?team=33&wedstrijd=37549&score=plus

Op de pagina updatescore.php werk je dus wat bij.
Team 33 = team-id
wedstrijd 38338 = wedstrijd-id
score plus = welke actie. Wat als er een punt achteraf wordt afgekeurd?
 
Obelix Idefix

Obelix Idefix

03/09/2015 09:18:27
Quote Anchor link
Nico Kamper op 02/09/2015 16:54:26:
ik kan eventueel per wedstrijd een apparte tabel aanmaken

Dat lijkt me wat overdreven; lijkt me prima in 1 tabel te kunnen. Anders heb je voor 100 wedstrijden staks 100 tabellen.

Nico Kamper op 02/09/2015 16:54:26:
je moet de tussen stand kunnen invullen en vervolgens weer kunnen wijzigen dat de laatste (tussen)stand zichtbaar is

Dus alleen de actuele stand moet zichtbaar zijn. Lijkt de denkrichting van Eddy E mij een prima idee.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.