Newsgroup: it.comp.www.php
Titolo: query di aggiornamento

Salve a tutti,
avreste qualche buon link dove poter studiare come si fa una query di
aggiornamento
in PHP su MySQL?
Io l'ho già scritta, ma suppongo che ci siano degli errori perchè non
aggiorna nulla.
In piu se premo sul pulsante "invia", che manda la richiesta di
aggiornamento al db,
i dati rimangono invariati; se invece clicco su "enter" (sulla tastiera) il
campo della
tabella mi diventa vuoto.
Ringrazio anticipatamente tutti
Profanus

 aggiornamento in PHP su MySQL?
http://www.mysql.com
-- 
I'am what I'am, I do what I can

 
http://www.mysql.com
ti chiedo scusa per non essermi spiegato bene:
non è che non so scrivere la query in SQL, è il mio script che è errato
credo.
Lo vedi qui di seguito:
<?php
$dbhost = "localhost";
$dbname = "xxxx";
$dbuid = "xxxxx";
$dbpasswd = "xxxx";
$db = mysql_connect($dbhost , $dbuid , $dbpasswd)
or die("non posso connettermi!");
mysql_select_db($dbname, $db) or die("non trovo alcun db!");
function editrecord()
{
 $query_update = mysql_query("UPDATE members SET  job='$job' WHERE uid =
'$userid");
}
$query_select = mysql_query("SELECT uid, name, job FROM members ORDER BY
uid")
    or die("Query non valida: " . mysql_error());
echo "<table border=1 color=black width=300><tr>";
 while (list($userid, $nome, $lavoro) = mysql_fetch_row($query_select))
{
     echo "<td>$userid</td><td><form method=get action=\"$PHP_SELF\"><INPUT
TYPE=\"HIDDEN\" NAME=\"action\" VALUE=\"editrecord\">$nome<input
type=\"text\" name=\"job\" size=\"13\" value=\"$lavoro\"><input
type=\"submit\" value=\"Invia\" name=\"input\"></form></td></tr><tr>";
}
echo "</table>";
?>
O tu hai una funzione piu logica e migliore per gestire l'update?
Grazie Setec
Profanus

 O tu hai una funzione piu logica e migliore per gestire l'update?
A parte l'utilizzo di variabili globali, l'echo del codice HTML con
escape, non sai programmare in PHP. Non sai come funziona un form, ne
come funziona il protocollo HTTP.
Ti suggerisco un buon libro di PHP e di scaricarti il manuale del PHP
dal sito web ufficiale.
<INPUT TYPE=\"HIDDEN\" NAME=\"action\" VALUE=\"editrecord\">
Questo non significa che PHP chiamera' la funzione "editrecord".


 }
manca un apostrofo dopo $userid alla fine della query!

 dal sito web ufficiale.
ce li ho entrambi e pian piano me li sto leggendo. E' solo che mi piace
sperimentare anche. Oh, poi il mio nick la dice lunga
Profanus

 }
dopo $userid manca un apice di chiusura --> '
ciao
Alesi_27

 ha scritto nel messaggio
news:APfgb.234980$R32.7...@news2.tin.it...

si ho visto e modificato ma...ovviamente non funziona :(
sono sicuro che quello che sbaglio è la chiamata alla funzione dal form.
Tu come faresti?
Profanus

 Tu come faresti?
Questo e' il codice corretto:
<?php
$dbhost = "localhost";
$dbname = "xxxx";
$dbuid = "xxxxx";
$dbpasswd = "xxxx";
$db = mysql_connect($dbhost , $dbuid , $dbpasswd)
or die("non posso connettermi!");
mysql_select_db($dbname, $db) or die("non trovo alcun db!");
function editrecord()
{
 $query_update = mysql_query("UPDATE members SET  job='$job' WHERE uid =
'$userid'");
}
if ($action == "editrecord")
{
	editrecord ();
}
$query_select = mysql_query("SELECT uid, name, job FROM members ORDER BY
uid'")
    or die("Query non valida: " . mysql_error());
echo "<table border=1 color=black width=300><tr>";
 while (list($userid, $nome, $lavoro) = mysql_fetch_row($query_select))
{
     echo "<td>$userid</td><td><form method=get
action=\"$PHP_SELF\"><INPUT
TYPE=\"HIDDEN\" NAME=\"action\" VALUE=\"editrecord\">$nome<input
type=\"text\" name=\"job\" size=\"13\" value=\"$lavoro\"><input
type=\"submit\" value=\"Invia\" name=\"input\"></form></td></tr><tr>";
}
echo "</table>";
?>
-- 


 type=\"text\" name=\"job\" size=\"13\" value=\"$lavoro\"><input
(2,3,4)
type=\"text\" name=\"job\" size=\"13\" value=\"$_GET[job]\"><input
(non ho testato, nessuna garanzia)


Ho solo apportato la minima modifica per farglielo andare, piu' che i
link che hai mandato (utilizzimi tra l'altro) Profanus ha bisogno di un
corso.


 corso.
Non c'e' l'avevo con te... ;-)
Cmq. sono della idea di postare solo codice ben fatto. Potrebbe 
causare confusione proprio al profano se imbarca altri problemi.

 causare confusione proprio al profano se imbarca altri problemi.
Prima di tutto grazie a tutti per le risposte.
Jurgen non avresti un link da suggerirmi per studiarmi un po'
meglio PHP &Co.?
Il sito ufficiale del PHP è una risorsa grandiosa ma sembra
piu per chi ha già le idee chiare. Almeno questo è quello che credo.
Grazie in anticipo
Profanus