[PHP] Aggiornare un valore del database tramite form

PHP:
<?php
$con = mysqli_connect("localhost","user","");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error());
  }
mysqli_select_db("my_db", $con);
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
 $sql="UPDATE completo SET DATO50 = '$dato50' WHERE DATO8 = '$dato8'";
if (!mysqli_query($sql,$con))
  {
  die('Error: ' . mysqli_error());
  } else {
echo "DATO INSERITO CORRETTAMENTE";
}
mysqli_close($con)
?>

Prova questo codice con le credenziali del tuo db.
Se ho capito bene allora la query era sbagliata prima, inoltre dalla tabella che ci hai fatto vedere ci sta sia id che dato8 (che funge da id sempre e a te interessa più questo).
Se ti mostra un errore riportalo qui perchè adesso ho effettua la query e quindi aggiorna qualcosa o da errore e non ti da dato inserito correttamente.
 
PHP:
<?php
$con = mysqli_connect("localhost","user","");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error());
  }
mysqli_select_db("my_db", $con);
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
 $sql="UPDATE completo SET DATO50 = '$dato50' WHERE DATO8 = '$dato8'";
if (!mysqli_query($sql,$con))
  {
  die('Error: ' . mysqli_error());
  } else {
echo "DATO INSERITO CORRETTAMENTE";
}
mysqli_close($con)
?>

Prova questo codice con le credenziali del tuo db.
Se ho capito bene allora la query era sbagliata prima, inoltre dalla tabella che ci hai fatto vedere ci sta sia id che dato8 (che funge da id sempre e a te interessa più questo).
Se ti mostra un errore riportalo qui perchè adesso ho effettua la query e quindi aggiorna qualcosa o da errore e non ti da dato inserito correttamente.
Error
 
PHP:
<?php
$con = mysqli_connect("localhost","nome_utente","pass", "nome_db");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error());
  }
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
 $sql="UPDATE completo SET DATO50 = '$dato50' WHERE DATO8 = '$dato8'";
 $exec = mysqli_query($con, $sql) or die(mysqli_error());
echo "DATO INSERITO CORRETTAMENTE";
mysqli_close($con)
?>

Questo deve funzionare per forza.
 
restituisce DATO INSERITO CORRETTAMENTE....ma non aggiorna...
Codice:
<?php
$con = mysqli_connect("localhost","utente","password", "nome_database");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error());
  }
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
 $sql="UPDATE completo SET DATO50 = '$dato50' WHERE DATO8 = '$dato8'";
 $exec = mysqli_query($con, $sql) or die(mysqli_error());
echo "DATO INSERITO CORRETTAMENTE";
mysqli_close($con)
?>

Comunque ho apprezzato
 
Ultima modifica:
ciao
vedo la tabella che stai usando e se tu hai messo
PHP:
$sql="UPDATE completo SET DATO8 = '$dato8' WHERE id = '$dato50'";
ti aggiorna (cerca di aggiornare) la colonna DATO8 se in $dato50 hai un id (1 o 2 o 3.....)
per quello ti chiedevo cosa conteneva $dato50
se in $dato50 ha qualcos'altro, es. "pinco", la query cerca nella colonna id ul valore "pinco", se nella colonna id il valore "pinco" non esiste non ti dice query errata, ma che la quary ha comunque funzionato anche se non ha aggiornato nulla.
da quello che intuisco (ma posso sbagliarmi) tu vorresti aggiornare il record con quanto contenuto (se i nomi corrispondono) in colonna DATO50 allora la query deve essere
PHP:
$sql="UPDATE completo SET DATO8 = '$dato8' WHERE DATO50 = '$dato50'";
mettiamo per esempio (da come vedo la tabella) che $dato50 contenga "AL CENTRO" la query ti aggiorna tutti i record che hanno DATO50==AL CENTRO
 

Discussioni simili