Som först:
I din andra SQL-fråga:
$sqla="UPDATE table SET count='$new_count'";
du måste ange vilken/vilka rader du vill uppdatera. För detta måste du använda WHERE
klausul.
Till exempel:
$sqla="UPDATE table SET count='$new_count' WHERE id='$id'";
Som tvåa:
Du saknar }
i ditt tillstånd, vilket också kan vara problemet. Om jag lägger mellanslag på din kod kommer den att se ut så här:
$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";
}
Är ditt tillstånd (som började på andra raden) slutat med }
korrekt?
Som tredje:
Spara utdata från mysql_fetch_array
och mysql_query
till en variabel och använd sedan denna variabel i dina villkor:
$data = mysql_fetch_array($sql);
if($data) { ...
Och
$result = mysql_query($sqla);
if($result) { ...
Fotnoter:
Det är okänt om tabellnamnet du använder verkligen heter table
.
Om det är det, så är det ett reserverat MySQL-ord och det kräver särskild uppmärksamhet, som att slå in det i bockar eller namnge det till något annat än ett reserverat ord.
Dvs:
SELECT * FROM `table`
och
UPDATE `table`
Referens: