Query update

Ahhahahha si me ne sono accorto poverino gli farai venire un ulcera.
Comunque complimentoni ad entrambi siete preparatissimi.
Grazie ancora.
 
Ancora un problema con una query di update questa non mi modifica il dato. Mi spiego ho un solo dato, un solo record nel database che deve essere aggiornato ma non lo fa dove sbaglio?

$tipologia=".jpg";
$foto=$_POST["foto"]; //invio il numero della foto dal form
$nfoto=$foto.$tipologia; // foto e tipologia esempio 1.jpg

$query_up = "UPDATE memorianf SET nome_foto='$nfoto" WHERE
nome_foto='$nfoto";
if(mysql_query($query_up)){
echo"nome foto aggiornato</br>";
echo"$nfoto</br>";
}else{
echo "errore";
}
 
Dovrebbe dare errore perché hai fatto confusione con gli apici. Se avessi messo il codice nel forum tra i tag PHP te ne saresti accorto subito con l'evidenziazione. Modifica la query così:
PHP:
$query_up = "UPDATE memorianf SET nome_foto='$nfoto' WHERE nome_foto='$nfoto'";
 
Non funziona :(

<?PHP
header("Cache-Control: no-cache");
header("Expires: -1");
$dbhost = 'localhost';
$dbuser = 'dbuser';
$dbpass = 'dbpassword';
$dbname = 'dbname';
$connessione = mysql_connect("localhost", "dbname", "dbpassword") or die("Impossibile connettersi al server host");
mysql_select_db(dbpass, $connessione) or die ("Impossibile selezionare il database.");

$dialogo="";
echo"risposta=".$dialogo;
$tipologia=".jpg";
$foto=$_POST["foto"];
$nfoto=$foto.$tipologia;
$Id_prodotto=$_POST["id_prodotto"];
$Nome_prodotto=$_POST['nome_prodotto'];
$Descrizione_prodotto=$_POST['descrizione_prodotto'];
$Prezzo=$_POST['prezzo'];


$query = "UPDATE prodotti SET nome_prodotto='$Nome_prodotto', descrizione_prodotto='$Descrizione_prodotto', prezzo='$Prezzo' WHERE id_prodotto='$Id_prodotto'";
if(mysql_query($query)){
//echo"$nfoto";
}else{
echo "errore";
}

$query_up = "UPDATE memorianf SET nome_foto='$nfoto' WHERE nome_foto='$nfoto'";
if(mysql_query($query_up)){
echo"nome foto aggiornato</br>";
echo"$nfoto</br>";
}else{
echo "errore";
}


mysql_close($connessione);
?>
 
l'echo dice che funziona ma poi non cambia il dato che c'è nel recordset nome_foto con $nfoto.
La query non dice che deve cambiare il valore che c'è in nome_foto e deve immettere $nfoto?
 
No, un momento, mi sono accorto adesso che la query è sbagliata come struttura logica che c'è dietro. Però anche tu rifletti un po' sul codice che scrivi. La query dice questo:
Aggiorna la tabella memorianf impostando il valore di tutti i campi che hanno valore $nfoto a $nfoto.
È come dire:
Aggiorna la tabella memorianf impostando il valore di tutti i campi che hanno valore 1 a 1.
È ovvio che non aggiornerà niente. O meglio, lo aggiorna ma il valore è lo stesso di prima... ti consiglio veramente di studiare SQL e PHP molto meglio, non sei ancora pronto per sviluppare un'applicazione. Non metterti fretta.
 
questa non ha senso?

$query_up = "UPDATE memorianf SET nome_foto='$nfoto' WHERE id = 1";

grazie alla guida di Eliox bastava un ripasso :)
ora non da errore è questa la logica corretta funziona, ho risolto
 
Ultima modifica:
No, non è autoincrement, a me non serve perchè devo generare di volta in volta un solo parametro nuovo in base alla foto selezionata.
 
Anch'io stesso problema

Ciao a tutti mi sono rimesso a smanettare dopo tempo col php e sono incappato in una query simile:
(ovviamente non sto a mettere la connessione al db)
PHP:
$id_articolo = $_POST["id_articolo"];

$query = "UPDATE prodotti SET nome_foto='$id_articolo' WHERE id_prodotto = $id_articolo";
 
$result = mysql_query($query);

se faccio un echo della stringa della query mi viene:

HTML:
UPDATE prodotti SET nome_foto='23' WHERE id_prodotto = 23
il campo "nome_foto" del record con id_prodotto 23 non si aggiorna...chi mi aiuta? Grazie 1000:)
 
ciao
visto che il "massacratore folle" (leggi alex) è latitante (spero per futili motivi) rispondo io.
la query che hai scritto è sintatticamente corretta, quindi l'errore non è li, verifica la corrispondenza dei nomi della tabella e dei campi e, dei campi, i parametri
 
ciao
visto che il "massacratore folle" (leggi alex) è latitante (spero per futili motivi) rispondo io.
la query che hai scritto è sintatticamente corretta, quindi l'errore non è li, verifica la corrispondenza dei nomi della tabella e dei campi e, dei campi, i parametri

si si grazie mi ero pescato un pezzo di connessione al db :hammer:
 

Discussioni simili