Salve ho un problema tra php e db mysql. Praticamente ho una pagina php che con il database 5.1 sempre di altervista non dava problemi, ma dopo aver fatto l'aggiornamento al 5.6 mi compare : Incorrect integer value: '' for column 'id' at row 1.
come posso risolvere?
il codice è il seguente
Codice PHP:
<?php
// refresh php
header("Refresh: 1; url=" . $_SERVER["PHP_SELF"]);
// dichiaro le variabili che ricevo da arduino
//settype ( $sec, "integer" );
$id = $_GET['id'];
$temperatura = $_GET['t'];
$umidita = $_GET['h'];
$luminosita = $_GET['pluce'];
$pioggia = $_GET['pioggia'];
$uv = $_GET['uv'];
$pressione = $_GET['pres'];
$altitudine = $_GET['alt'];
//$tmsp = strtotime("now");
//$data = date('d m Y',$tmsp);
//setlocale(LC_TIME,"it_IT");
$data = date("d m Y H:i:s");
sleep(1);
$tempo = $_GET['sec'];
// effettuo la connessione al mysql
$host = "www.MIOSITO.altervista.org";
$database = "MIODB";
$password = "MIAPASS";
$link = mysql_connect($host, $database, $password);
if (!$link)
{
die('non connesso : ' . mysql_error());
}
// effettuo la connessione al database mysql
$db_selected = mysql_select_db("MIO DB", $link);
if (!$db_selected)
{
die ('Non è grave; possibile connettersi al database : ' . mysql_error());
}
// seleziono la tabella nella quale memorizzare i dati
$query = mysql_query("SELECT * FROM meteo");
$fetch = mysql_fetch_array($query);
// inserisco i valori
if (mysql_query("INSERT INTO meteo(id,tempo,temperatura,umidita,luminosita,pioggia,uv,pressione,altitudine,data) VALUES('$id','$tempo','$temperatura','$umidita','$luminosita','$pioggia','$uv','$pressione','$altitudine','$data') ")or die(mysql_error()))
{ // se tutto è andato a buon fine...
echo "OK";
echo date ("d m Y H:i:s");
echo " tempo: ";
echo $tempo;
// if ($tempo>=3600)
//{
$query = mysql_query("TRUNCATE TABLE meteo");
$fetch = mysql_fetch_array($query);
//}
}
else
{
echo "ERROR";
}
?>