Questo è l'errore che dà:
Errore:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where id=7' at line 2
Questo è l'errore che dà:
Errore:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where id=7' at line 2
togli la virgola prima del where.Originariamente inviato da RockerC
Questo è l'errore che dà:
. " note=\"$note\"," <<<<---- togliere la virgola
. "where id=$id
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
Nuovo errore, dopo avere tolto la virgola:
update rubrica set promotore="", nome_azienda="", settore="", città="", indirizzo="", nome_contatto="", telefono="", email="", sede_estero="", azioni="", progressione="", risultato_finale="", note=""where id=7Errore:
quale errore? comunque dando un'occhiata veloce al tuo primo script ci sono anche altre cose non corrette.Originariamente inviato da RockerC
Nuovo errore, dopo avere tolto la virgola:
Pero' dopo le modifiche che hai fatto non mi azzardo a dire quali....![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
L'avevo detto che c'era da impazzire
In ogni caso forse mi son o espresso male quando ho detto nuovo errore.
Volevo dire che , dopo avere tolto la virgola, fatto il refresh della pagina di modifica, ciò che appare è la risposta che ho postato prima ...
Significa che da 'sto ginepraio non se ne esce?
Edit:
il codice della pagina è stato preso pari pari dal libro PHP5 di Massimo Canducci , Edizioni Apogeo , che in Rete viene presentato come grande esperto di linguaggio PHP .... e meno male!![]()
boh! ... nella prima query, quella con SELECT utilizzi mysql_affected_rows invece di mysql_num_rows e poi fai un data_seek senza motivo. Utilizzi mysql_fetch_row e poi fai un foreach chiamando mysql_fetch_field.....Originariamente inviato da RockerC
L'avevo detto che c'era da impazzire
In ogni caso forse mi son o espresso male quando ho detto nuovo errore.
Volevo dire che , dopo avere tolto la virgola, fatto il refresh della pagina di modifica, ciò che appare è la risposta che ho postato prima ...
Significa che da 'sto ginepraio non se ne esce?
Sinceramente ... direi di rivedere un po' tutto lo script e controllando prima se il valore che passi con post esiste, prima di tentare di passarlo alla variabile.
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
Prova
CiaoCodice PHP:$query = sprintf("UPDATE rubrica SET promotore='',
nome_azienda='%s', settore='%s', città='%s', indirizzo='%s',
nome_contatto='%s', telefono='%s', email='%s', sede_estero='%s',
azioni=='%s', progressione='%s', risultato_finale='%s', note='%s'
WHERE id=%s", $promotore,$nome_azienda,$settore,$città,
$indirizzo,$nome_contatto,$telefono,$email,$sede_estero,$azioni,
$progressione,$risultato_finale,$note,$idif
);
if(mysql_query($query)== true)
{
echo "Modificati: ",mysql_affected_rows(), " records";
}
else
{
echo "Errore:" . mysql_error();
}
Modificato la pagina come da tuo suggerimento.
Quando tento di modificare il record sulla riga del id 7 questa è la risposta:
.... e naturalmente la tabella non viene modificataErrore:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=='', progressione='', risultato_finale='', note='' WHERE id=' at line 4
Il record è stato aggiornato
allora ho notato in base alla risposta che vicino in azioni=='%s', ci sono due == invece di uno come in tutti gli altri items.
Ho pertanto cancellato un = e la risposta è:
Waaaaa .... mi viene da piangere!Errore:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5
Ho provato a sostuire WHERE id=%s" con WHERE id=$id" e finalmente ottengo una risposta quasi intelligente:
come al solito non ha modificato alcun record ed in più non mi fa più vedere la risposta che solitamente è generata da questa parte dello script:Modificati: 0 records
if ($AffectedRows!=0)
{
print("<h3>Il record è stato aggiornato</h3>");
print("<h3><a href=\"query.php\">Torna alla lista</a></h3>");
}
mysql_close($db);
}
fai
e controlla se la query è quella che ti aspetti...Codice PHP:echo $query;