$query =mysql_query("UPDATE quarta SET nome = '".$nom."' WHERE id_per_4 = '".$id."'")
Qualcuno mi sa spiegare perchè cavolo non funziona?
Sto impazzendo da stamattina
Non mi aggiorna i dati nel database e non so più che pesci prendere
$query =mysql_query("UPDATE quarta SET nome = '".$nom."' WHERE id_per_4 = '".$id."'")
Qualcuno mi sa spiegare perchè cavolo non funziona?
Sto impazzendo da stamattina
Non mi aggiorna i dati nel database e non so più che pesci prendere
1. Non funziona non significa nulla, che errore ti da?Originariamente inviato da Zhilang
$query =mysql_query("UPDATE quarta SET nome = '".$nom."' WHERE id_per_4 = '".$id."'")
Qualcuno mi sa spiegare perchè cavolo non funziona?
Sto impazzendo da stamattina
Non mi aggiorna i dati nel database e non so più che pesci prendere
2. Manca il ; finale
3. Se id_per_4 è numerico non servino gli apici.
4. Forse $nom o $id o entrambi non sono valorizzati.
5. Non eseguire la query direttamente. Crea una stringa $query con la query e stampala per controllare che sia corretta.
6. Prova ad eseguirla a mano.
7. Aggiungi mysql_error() per vedere che errore ti restituisce.
"Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)
e non dimenticare di aggiungere prima di tutto error_reporting(E_ALL);
il ; finale c'è nel codice
Ho fatto un echo della query e mi da (Resource id#5)
La pagina di aggiornamento dati la carica, ma comunque nel database non mi aggiorna un bel niente
-.-![]()
Codice PHP:
// HOW TO TEST A QUERY
$q = "select * from quellochesia where id='".$id."'" ;
echo "STO PER ESEGUIRE : ".$q ;
$ris = mysql_query($q,$connection)or die( mysql_error() ) ;
var_dump($ris) ; // SOLO A QUESTO PUNTO E JUST TO BE SAFE !!
.........![]()
questa è la risposta che mi da
STO PER ESEGUIRE : SELECT id_per_4 FROM quarta WHERE id_per_4=''Resource id #5
Allora la select funziona ora controlla il risultato :
Codice PHP:
$ris = mysql_query($q,$connection)or die( mysql_error() ) ;
echo "HO TROVATO : ".mysql_num_rows($ris)." righe
" ;
echo "I dati estratti sono :
" ;
while($row = mysql_fetch_assoc($ris))
{
var_dump( $row ) ;
echo "<hr />";
}
questo è il risultato ora
HO TROVATO : 0 righe
I dati estratti sono :
STO PER ESEGUIRE : SELECT id_per_4 FROM quarta WHERE id_per_4=''Resource id #5
scusa ma perche' dice "sto per eseguire..." dopo "ho trovato ..." ??????
il codice che ho aggiunto e' da mettere dopo la query .... come appunto da codice.
perchè i vari echo li tengo in fondo alla pagina
ora ti posto tutto il codice e ti supplico vedi dove cavolo c'è lo sbaglio
<?php
include ($_SERVER["DOCUMENT_ROOT"]."/ImmiAgrigento/Archivio/include/dbconf1.php");
$db=mysql_connect($db_host,$db_username,$db_pswd);
if ($db==FALSE) die ('Errore nella connessione. Contattare il Referente informatico provinciale');
mysql_select_db($db_name,$db)
or die ('Errore nella selezione del database. Contattare il Referente informatico provinciale');
$cog=addslashes($_POST['cognome']);
$nom=addslashes($_POST['nome']);
$nazio=addslashes($_POST['nazione']);
$id=$_GET['id_per_4'];
$sql="select * from quarta";
$ri = mysql_db_query( $db_name, $sql );
if (!$ri) {
echo "<h1>Errore durante l'accesso dai dati! Contattare il Referente informatico provinciale</h1>";
exit;
}
$dati = mysql_fetch_array($ri);
$sql="SELECT id_per_4 FROM quarta WHERE id_per_4='".$id."'";
$s="SELECT id_per_4 FROM quarta WHERE id_per_4='".$id."'";
if ($cog==''){
echo "<h1 align='center'> Errore! Non è possibile mettere agli atti questo Fascicolo senza l'autorizzazione degli addetti ARCHIVIO!</h1>";
echo "<h1 align='center'> Cliccare sul tasto indietro del browser e modificare la propria scelta!</h1>";
exit;
} else {
//$query =mysql_query("UPDATE quarta SET cognome = '".$cog."' WHERE id_per_4 = '".$id."'");
/* $query =mysql_query("UPDATE quarta SET nome = '".$nom."' WHERE id_per_4 = '".$id."'");
$query =mysql_query("UPDATE quarta SET nazione = '".$nazio."' WHERE id_per_4 = '".$id."'"); */
$query =mysql_query("UPDATE quarta SET nome = '".$nom."' WHERE id_per_4 = '".$id."'");
$query=mysql_query($sql,$db)or die("Impossibile eseguire la query:".mysql_error());
}
$ris = mysql_query($s,$db)or die( mysql_error() ) ;
echo "HO TROVATO : ".mysql_num_rows($ris)." righe
" ;
echo "I dati estratti sono :
" ;
while($row = mysql_fetch_assoc($ris))
{
var_dump( $row ) ;
echo "<hr />";
}
echo "STO PER ESEGUIRE : ".$s ;
echo $query;
echo " ";
echo $id1;
?>
<center>
<font face="arial" size="4">
Tutti i dati sono stati aggiornati! </font> </p>