Geen database invoer

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Paul du Long

Paul du Long

01/11/2006 10:20:00
Quote Anchor link
Hoi,

Ik ben bezig met een soort van criminal game maar een gedeelte php werkt niet.
De variabel gvor wordt niet toegevoegd in database.

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

if($rang == 7){
$vor1 = '0,5' ;
$vor2 = '0,9' ;
$vor3 = '1,15' ;
$vor4 = '1,45' ;
$vor5 = '2' ;
}


// Var. $kracht juiste waarde geven

if($_POST['train']) {

if($_POST['1'] == 1){ $vor = $vor1 ; $tijd = 5 ;}
if($_POST['1'] == 2){ $vor = $vor2 ; $tijd = 10 ;}
if($_POST['1'] == 3){ $vor = $vor3 ; $tijd = 15 ;}
if($_POST['1'] == 4){ $vor = $vor4 ; $tijd = 20 ;}
if($_POST['1'] == 5){ $vor = $vor5 ; $tijd = 30 ;}

//Krachtijd berekenen
$traintijd = time() + (60*$tijd);
$traintijd = date("d-m-Y H:i:s",$traintijd) ;
$traintijd1 = date("H:i:s",$traintijd) ;

//Invoeren in database

mysql_query ("UPDATE users SET gvor=(gvor + '".$vor."'), krachttijd = '".$traintijd."' WHERE username='paul'") or die ( mysql_error() );

echo '<a href='.$_SERVER['PHP_SELF'].'>[Terug]</a><br />';
die('Je bent voor de komende '.$tijd.' minuten aan het trainen.');
}



?>


In heb de mysql query uitgevoerd in PHPmyadmin en daar ondervond ik geen probleem.

Paul
Gewijzigd op 01/01/1970 01:00:00 door Paul du Long
 
PHP hulp

PHP hulp

18/11/2024 18:46:47
 
Erik Rijk

Erik Rijk

01/11/2006 10:28:00
Quote Anchor link
je krijgt ook geen foutmelding?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
mysql_query ("UPDATE users SET gvor = gvor + '".$vor."', krachttijd = '".$traintijd."' WHERE username = 'paul'") or die ( mysql_error() );
?>
Probeer hem anders zo?
Gewijzigd op 01/01/1970 01:00:00 door Erik Rijk
 
- wes  -

- wes -

01/11/2006 10:38:00
Quote Anchor link
echo je query eens , ik gok dat $vor leeg is of niet bestaat, mede omdat dit
$_POST['1']
niet mag, vars mogen niet beginenn met een getal (dacht ik)
 
Frank -

Frank -

01/11/2006 10:46:00
Quote Anchor link
Wes heeft volkomen gelijk, dan naamgevingen zijn niet goed. Daarnaast maak je het jezelf onnodig lastig met programeren. 1, 2 of 3 zegt toch helemaal niets over de inhoud van deze variabele? Het is dus dom om dit soort namen te gebruiken, net zoals $var1 en $var2 helemaal nergens op zouden slaan: Variabele nummer 1, variabele nummer 2, tja, wat moet je daar mee?

Verder is $traintijd = date("d-m-Y H:i:s",$traintijd) ; fout, dit kan nooit een datum zijn die je kunt opslaan in de database en/of waar je nog eens mee kunt gaan rekenen of op sorteren. De database heeft het datatype DATETIME die het formaat yyyy-mm-dd hh:mm:ss als input vereist. Dat is een ISO-formaat en daar kun je nog eens een keer wat mee gaan doen. Zie de hoofstukken 9 en 12.5 van de MySQL-handleiding.
 
Paul du Long

Paul du Long

01/11/2006 16:35:00
Quote Anchor link
Even wat ophelderen:

$vor staat voor vorderingen
1,2,3,4,5,6 staat voor de optie die je hebt gekozen.
En traintijd met ik nog veranderen.

Ik heb aan het einde $vor geechoed en daar gaf die het gewoon goed weer vreemd hè ?!
Maarja hoe los ik dit op
 
Frank -

Frank -

01/11/2006 16:45:00
Quote Anchor link
0 komma 5, dat is de vertaling van 0,5. Dat is dus een stuk tekst en geen getal waar je mee kunt rekenen. 0.5 daarintegen is een fraai getal waar je mee kunt rekenen.

Wanneer $vor staat voor de variabele vordering (engels: progress), dan lijkt mij $progress of evt. $vordering meer voor de hand liggen. Dan is het duidelijk waar je het over hebt. Vooral handig wanneer je over een half jaar (0.5 jaar ;) ) onderhoud gaat plegen, dat scheelt een hoop tijd en bugs.

$1 => $option_1 , al blijft deze beroerd. Wát is nu eigenlijk 'optie 1' ?
 



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.