Als eerste:
In uw tweede SQL-query:
$sqla="UPDATE table SET count='$new_count'";
u moet specificeren welke rij/rijen u wilt bijwerken. Hiervoor moet je WHERE
. gebruiken clausule.
Bijvoorbeeld:
$sqla="UPDATE table SET count='$new_count' WHERE id='$id'";
Als tweede:
Je mist }
in uw toestand, wat ook het probleem kan zijn. Als ik uw code op een afstand plaats, ziet het er als volgt uit:
$sql=mysql_query("SELECT * FROM table WHERE id='$id'");
if($data=mysql_fetch_array($sql))
{
$count=$data['count'];
$new_count=$count+1;
$sqla="UPDATE table SET count='$new_count' WHERE id='$id'";
if(mysql_query($sqla))
{
echo "success";
}
Is uw aandoening (begonnen op de tweede regel) geëindigd met }
correct?
Als derde:
Uitvoer opslaan van mysql_fetch_array
en mysql_query
naar een variabele en gebruik deze variabele vervolgens in uw voorwaarden:
$data = mysql_fetch_array($sql);
if($data) { ...
En
$result = mysql_query($sqla);
if($result) { ...
Voetnoten:
Het is niet bekend of de tabelnaam die u gebruikt inderdaad table
wordt genoemd .
Als dat zo is, dan is dat een door MySQL gereserveerd woord en vereist het speciale aandacht, zoals het in vinkjes plaatsen of het een naam geven aan iets anders dan een gereserveerd woord.
D.w.z.:
SELECT * FROM `table`
en
UPDATE `table`
Referentie: