Като първо:
Във втората ви SQL заявка:
$sqla="UPDATE table SET count='$new_count'";
трябва да посочите кой ред/редове искате да актуализирате. За това трябва да използвате WHERE
клауза.
Например:
$sqla="UPDATE table SET count='$new_count' WHERE id='$id'";
Като второ:
Липсва Ви }
във вашето състояние, което също може да е проблемът. Ако разположа вашия код, той ще изглежда така:
$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";
}
Вашето условие (започнало на втори ред) завършва ли с }
правилно?
Като трето:
Запазете изхода на mysql_fetch_array
и mysql_query
към променлива и след това използвайте тази променлива във вашите условия:
$data = mysql_fetch_array($sql);
if($data) { ...
И
$result = mysql_query($sqla);
if($result) { ...
Бележки под линия:
Не е известно дали името на таблицата, което използвате, наистина се нарича table
.
Ако е така, тогава това е запазена дума на MySQL и изисква специално внимание, като например да я поставите в отметки или да я наименувате с нещо различно от запазена дума.
Т.е.:
SELECT * FROM `table`
и
UPDATE `table`
Справка: