Como primero:
En su segunda consulta SQL:
$sqla="UPDATE table SET count='$new_count'";
debe especificar qué fila/filas desea actualizar. Para esto debes usar WHERE
cláusula.
Por ejemplo:
$sqla="UPDATE table SET count='$new_count' WHERE id='$id'";
Como segundo:
Te falta }
en su condición, que también puede ser el problema. Si espacio su código, se verá así:
$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";
}
¿Su condición (comenzó en la segunda línea) terminó con }
? correctamente?
Como tercero:
Guardar salida de mysql_fetch_array
y mysql_query
a una variable y luego use esta variable en sus condiciones:
$data = mysql_fetch_array($sql);
if($data) { ...
Y
$result = mysql_query($sqla);
if($result) { ...
Notas al pie:
No se sabe si el nombre de la tabla que está utilizando se llama table
.
Si lo es, entonces es una palabra reservada de MySQL y requiere una atención especial, como envolverla en ticks o nombrarla con algo que no sea una palabra reservada.
Es decir:
SELECT * FROM `table`
y
UPDATE `table`
Referencia: