waarde optellen in mysql
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?
$sql = mysql_query("UPDATE klaverjassen
SET $totpunten = ".$row[0]." + ".$punten."
WHERE speler = ".$speler."");
$retval = mysql_query($sql);
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
?>
$sql = mysql_query("UPDATE klaverjassen
SET $totpunten = ".$row[0]." + ".$punten."
WHERE speler = ".$speler."");
$retval = mysql_query($sql);
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
?>
echter met dit krijg ik deze error wat doe ik fout?
Could not update data: Query was empty
Verder raad ik aan om MySQLi te gebruiken.
Gewijzigd op 17/08/2014 19:44:24 door - Ariën -
Maar goed, dit soort hopeloze hulp acties komen mij te vaak voor, dan houd ik het voor gezien.
krijg ik het volgende:
UPDATE klaverjassen SET totpunten = 2550 + 3369 WHERE speler = xxx xxxxxxburg Could not update data: Query was empty
ik mis single-quotes om je spelersnaam in je WHERE.
Quote:
Dit levert in dit geval een true of false op, dus wat er gebeurt:
Daarbij is het absolute onzin om eerst de waarde van een kolom met een select query op te halen, en deze daarna te gebruiken in UPDATE query.
Dus (zoals Ivo P ook al eens aangaf in dit topic)
Code (php)
1
2
3
4
5
2
3
4
5
<?
$sql = mysql_query("UPDATE klaverjassen
SET $totpunten = ".$row[0]." + ".$punten."
WHERE speler = ".$speler."");
?>
$sql = mysql_query("UPDATE klaverjassen
SET $totpunten = ".$row[0]." + ".$punten."
WHERE speler = ".$speler."");
?>
Dit levert in dit geval een true of false op, dus wat er gebeurt:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$retval = mysql_query($sql);
// $retval = mysql_query(true);
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
?>
$retval = mysql_query($sql);
// $retval = mysql_query(true);
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
?>
Daarbij is het absolute onzin om eerst de waarde van een kolom met een select query op te halen, en deze daarna te gebruiken in UPDATE query.
Dus (zoals Ivo P ook al eens aangaf in dit topic)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$sql = "UPDATE klaverjassen
SET
totpunten = totpunten + " . (int) $punten . "
WHERE
speler = " . $speler;
if (mysql_query($sql) {
echo 'Update geslaagd';
}
else {
echo 'Update mislukt met query:<br>' . $sql;
}
?>
$sql = "UPDATE klaverjassen
SET
totpunten = totpunten + " . (int) $punten . "
WHERE
speler = " . $speler;
if (mysql_query($sql) {
echo 'Update geslaagd';
}
else {
echo 'Update mislukt met query:<br>' . $sql;
}
?>
Gewijzigd op 17/08/2014 20:03:01 door Ger van Steenderen
Ik wil absoluut niet eigenwijs overkomen in deze maar ik loop er gewoon tegen aan.
Verder vind ik alle hulp die ik kan krijgen waardevol en wil ik iedereen bedanken voor de hulp
Toevoeging op 17/08/2014 21:08:42:
Nog even een vraagje;
voor zover ik het begrijp doe ik met deze oplossing toch niks meer dan de waarde van "punten" kopiëren naar "totpunten" of begrijp ik het nu echt niet?
Luc Gomes op 17/08/2014 20:16:44:
Toevoeging op 17/08/2014 21:08:42:
voor zover ik het begrijp doe ik met deze oplossing toch niks meer dan de waarde van "punten" kopiëren naar "totpunten" of begrijp ik het nu echt niet?
voor zover ik het begrijp doe ik met deze oplossing toch niks meer dan de waarde van "punten" kopiëren naar "totpunten" of begrijp ik het nu echt niet?
Heb je het al getest? Dan weet je wat er gebeurt: punten wordt opgeteld bij totpunten.