使用PHP代码更新SQL Row

I want to update a row in my database. There is only one row in this database no other rows will be added at this stage.

I am using this PHP code but it does not update the value gives me error:

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(credits) VALUES ('')' at line 1

This is my code

 <?php
 $con = mysql_connect("localhost","stingin_epanic","****");
 if (!$con)
   {
   die('Could not connect: ' . mysql_error());
   }

  mysql_select_db("stingin_epanic", $con);

  $sql="UPDATE avis_credits (credits)
  VALUES
 ('$_UPDATE[credits]')";

  if (!mysql_query($sql,$con))
   {
   die('Error: ' . mysql_error());
   }
 echo "Number added thank you";

 mysql_close($con);

 ?>

I know it is something Stupid But Really battelling here

Have a look at the UPDATE syntax in mysql.

UPDATE avis_credits SET credits = 'your_value'

WATCH OUT

Please do not use the mysql_* functions anymore. Switch to the mysqli_ functions or PDO. The mysql_ - functions are deprecated and won't be supported >= PHP 5.5.

Echo out your $sql and see what it looks like. My guess is that the values are simply empty based on the error being shown, always do a quick debug.

You shouldn't be using deprecated mysql_* functions.

Your SQL is not correct.

"UPDATE avis_credits set credits = '$_UPDATE[credits]'";

If you can use PDO or mysqli.

<?php
$dsn = "mysql:host=localhost;dbname=stingin_epanic;charset=utf8";
$opt = array(
    PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
);
$pdo = new PDO($dsn,'stingin_epanic','', $opt);

$sql = "UPDATE avis_credits SET credits = ? WHERE some_id = ?";
$stm = $pdo->prepare($sql);
$stm->execute(array($_POST['credits'], $_POST['id']));

Assuming you have $_POST, not whatever $_UPDATE

Note the WHERE part. With UPDATE query you have to always use it to address a row to change, mind you