update dati nel form

ciao a tutti ho fatto la seguente query per l'aggiornamento dei dati :

$query= "UPDATE tblmenu SET  Nome_menu ='{$_POST['NomeMenu']}',

                Posizione ={$_POST['Posizione']} WHERE ID ={$IDmenu}";

$Risultato= mysql_query($query, $conn);

    if (mysql_affected_rows()==1)

   {

   //ok

    $messaggio=  'il record selezionato è stato aggiornato';

   }

   else

   {

   //ko

   $messaggio = 'aggiornamento non riuscito <br/>' . mysql_error();

   }   

}

 }

solo che non mi aggiorna i dati nel database, mentre se li aggiorno dal database li ritrovo poi tranquillamente nella pagina

ciao grazie a tutti

 :bye:

inviato 7 anni fa
scooby1574
X 0 X

Ti ritorna proprio l'errore di mysql? Se si lo puoi fornire?

$query= "UPDATE tblmenu SET  Nome_menu ='".$_POST['NomeMenu']."',  Posizione ='".$_POST['Posizione']."' WHERE ID ='".$IDmenu."'";

Prova con questo codice.

risposto 7 anni fa
Mario Santagiuliana
X 0 X

ho provato com il tuo codice ma, nulla purtroppo mi restituisce la pagina senza nessun tipo di errore che verifiche mi consigli di fare ?

risposto 7 anni fa
scooby1574
X 0 X

sia i campi Posizione che ID sono integer

risposto 7 anni fa
scooby1574
X 0 X

Prova così:

$query= "UPDATE tblmenu SET  Nome_menu =".$_POST['NomeMenu'].", Posizione =".$_POST['Posizione']." WHERE ID ='".$IDmenu."'";
         

$Risultato= mysql_query($query, $conn);

if (mysql_errno()) {
  $error = "MySQL error ".mysql_errno().": ".mysql_error()."\n<br>When executing:<br>\n$query\n<br>";
}

P.S. usa il tasto modifica se puoi, non inviare 2 messaggi consecutivi.

risposto 7 anni fa
Mario Santagiuliana
X 0 X

Non da segni di vita ne errori,  ho provato a fare la pagina di cancellazione dei dati e funziona senza il minimo problema e questa dannata query che non ne vuole sapere di andare

 :bye:

risposto 7 anni fa
scooby1574
X 0 X

Le variabili che passi tramite l'array post sono corrette?

Dagli un controllo li, vedi che valori assumono prima di eseguire la query, inserisci questo dopo la query:

echo $query

Facci vedere cosa dice, eventualmente copialo e prova ad incollare la query che risulta in phpMyAdmin(o quello che usi per gestire mysql) a vedere se da errori.

Al posto dell'if che ti ho dato prova questo:

if (!$Risultato) {
risposto 7 anni fa
Mario Santagiuliana
modificato 7 anni fa
X 0 X

Siccome avevo questo dubbio delle variabili non corrette ho tenuto aperto il database con i campi sottomano, comunque li ricontrollerò provando ad inserire il codice che mi hai mandato nel post precedente per vedere i risultati grazie ciaoo :bye:

risposto 7 anni fa
scooby1574
X 0 X

In testa allo script metti:

error_reporting(E_ALL);

così da visualizzare qualsiasi errore generato dallo script

risposto 7 anni fa
Gianni Tomasicchio
X 0 X

ciao basta inserire

<?phperror_reporting(E_ALL);

?> e mi riporta gli erori nello script?

risposto 7 anni fa
scooby1574
X 0 X

ciao basta inserire

<?phperror_reporting(E_ALL);

?> e mi riporta gli erori nello script?

Meglio:

<?php
error_reporting(E_ALL);
?>

Cioè no "phperror_reporting(E_ALL);"

Provare per credere  ^-^

Se hai degli errori saltano fuori, poi ci sono sempre i log di php che si possono leggere per capire meglio le cose  :bye:

risposto 7 anni fa
Mario Santagiuliana
X 0 X

ho provato ma non escono errori da nessuna parte ho usato anche

<?php error_reporting(E_ALL ^ E_NOTICE);

?>

ma nulla di che

risposto 7 anni fa
scooby1574
X 0 X

Fa un controllo delle variabili che passi allora.

Prova a fare l'echo della query come ti avevo suggerito prima  :bye:

risposto 7 anni fa
Mario Santagiuliana
X 0 X

ok proverò grazie  :bye:

risposto 7 anni fa
scooby1574
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda