[PHP] Aggiornare un valore del database tramite form

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Ciao a tutti,
Ho la necessita' di aggiornare il valore 'dato50' del mio database prendendo come riferimento il valore 'dato8'.
dato8 fa da ID insomma...
Ecco il mio form:
index.php
Codice:
<form action="aggiorna_dato.php" method="post">



DATO8 :&nbsp&nbsp<input type="text" name="dato8" /><br><hr>



DATO50:&nbsp&nbsp<input type="text" name="dato50" /><br><hr>



 

<input type="submit" value="SALVA DATI" />

</form>

E qui la pagina php che dovrebbe aggiornare :
aggiorna_dato.php
Codice:
<?php
/*
  blocco dei parametri di connessione
*/
// nome di host
$host = "localhost";
// nome del database
$db = "my_db";
// username dell'utente in connessione
$user = "pippo";
// password dell'utente
$password = "";

/*
  blocco try/catch di gestione delle eccezioni
*/
try {
  // stringa di connessione al DBMS
  $connessione = new PDO("mysql:host=$host;dbname=$db", $user, $password);
  // imposto l'attributo per il report degli errori
  $connessione->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  // istruzione per l'aggiornamento
  $aggiorna_dati = $connessione->exec("UPDATE completo SET dato50= 'DATO8' WHERE id =50 ");
  // chiusura della connessione
  $connessione = null;
}
catch(PDOException $e)
{
  // notifica in caso di errore nel tentativo di connessione
  echo $e->getMessage();
}
?>

Non capisco dove sbaglio?
In pratica,tramite il form,inserendo il DATO8 che fara' da id ....deve andare ad aggiornare ...(cancellando e aggiornando il vecchio dato50)

Grazie a tutti in anticipo
 

Eduadie

Utente Attivo
22 Mar 2013
58
7
8
www.mrrobotbet.altervista.org
Ciao a tutti,
Ho la necessita' di aggiornare il valore 'dato50' del mio database prendendo come riferimento il valore 'dato8'.
dato8 fa da ID insomma...
Ecco il mio form:
index.php
Codice:
<form action="aggiorna_dato.php" method="post">



DATO8 :&nbsp&nbsp<input type="text" name="dato8" /><br><hr>



DATO50:&nbsp&nbsp<input type="text" name="dato50" /><br><hr>



 

<input type="submit" value="SALVA DATI" />

</form>

E qui la pagina php che dovrebbe aggiornare :
aggiorna_dato.php
Codice:
<?php
/*
  blocco dei parametri di connessione
*/
// nome di host
$host = "localhost";
// nome del database
$db = "my_db";
// username dell'utente in connessione
$user = "pippo";
// password dell'utente
$password = "";

/*
  blocco try/catch di gestione delle eccezioni
*/
try {
  // stringa di connessione al DBMS
  $connessione = new PDO("mysql:host=$host;dbname=$db", $user, $password);
  // imposto l'attributo per il report degli errori
  $connessione->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  // istruzione per l'aggiornamento
  $aggiorna_dati = $connessione->exec("UPDATE completo SET dato50= 'DATO8' WHERE id =50 ");
  // chiusura della connessione
  $connessione = null;
}
catch(PDOException $e)
{
  // notifica in caso di errore nel tentativo di connessione
  echo $e->getMessage();
}
?>

Non capisco dove sbaglio?
In pratica,tramite il form,inserendo il DATO8 che fara' da id ....deve andare ad aggiornare ...(cancellando e aggiornando il vecchio dato50)

Grazie a tutti in anticipo

Scusami ma tu usi il metodo POST ma nel file aggiorna_dato.php non li recuperi da nessuna parte questi valori.

Devi recuperarli tramite $dato50 = $_POST["dato50"] e dato8 = $_POST["dato8"].

Fatto ciò la query diventa:

UPDATE completo SET dato8 = '$dato8' WHERE id = '$dato50'
 

marino51

Utente Attivo
28 Feb 2013
3.025
174
63
Lombardia
se l'aggiornamento del "DATO8" dipende da "DATO50" già presente nel db, a cui si applica una formula,
considerati i 6000 record, penso possa suggerirti di usare una query, eliminando il lavoro di inserimento dei valori
posta qualche info in più, se ti interessa questa via
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Ciao Marino51 e ciao a tutti
Nel mio database mysql ho una tabella che gestisce tutto ed e' gia' popolata.
52 colonne denominate dato1,dato2,dato3 etc,etc
circa 6000 righe
Ora , tramite il form postato,inserendo come riferimento il dato8 e attribuendo a dato50 un nuovo valore, invio
al database e vorrei l'aggiornamento del dato50 sulla riga che riguarda il dato8 inserito nel form.
Non so come scriverlo nello script php....
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Cosi non aggiorna il dato..non capisco...
PHP:
<?php
include('../../struttura/header.php');
?>
<center>
<link href="stilefoglio.css" rel="stylesheet" type="text/css">
<?php
$con = mysql_connect("localhost","user","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$dato50 = $_POST["dato50"] e dato8 = $_POST["dato8"]
$sql="UPDATE completo SET dato8 = '$dato8' WHERE id = '$dato50'
VALUES
('$_POST[dato8]','$_POST[dato50]')";
if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "DATO INSERITO CORRETTAMENTE";
mysql_close($con)
?>
Scusami ma sono alle prime armi
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
correggi in
PHP:
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
$sql="UPDATE completo SET dato8 = '$dato8' WHERE id = '$dato50'";
//....
considera poi che se dato50 un numero intero (generlamente gli id sono numeri interi) non ci vogliono gli apici
PHP:
$sql="UPDATE completo SET dato8 = '$dato'8 WHERE id = $dato50";
 

Eduadie

Utente Attivo
22 Mar 2013
58
7
8
www.mrrobotbet.altervista.org
Cosi non aggiorna il dato..non capisco...
PHP:
<?php
include('../../struttura/header.php');
?>
<center>
<link href="stilefoglio.css" rel="stylesheet" type="text/css">
<?php
$con = mysql_connect("localhost","user","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$dato50 = $_POST["dato50"] e dato8 = $_POST["dato8"]
$sql="UPDATE completo SET dato8 = '$dato8' WHERE id = '$dato50'
VALUES
('$_POST[dato8]','$_POST[dato50]')";
if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "DATO INSERITO CORRETTAMENTE";
mysql_close($con)
?>
Scusami ma sono alle prime armi

Secondo me non si tratta di essere alle prime armi.
Non prenderla a male ma come puoi programmare "alle prime armi" se commetti certi errori...
Tu non stai facendo altro che un copia e incolla senza capire minimamente quello che stai facendo perchè copiare una riga del genere $dato50 = $_POST["dato50"] e dato8 = $_POST["dato8"] significa non conoscere proprio nulla.
Ma io lo dico per te, senza offenderti. Leggiti prima un paio di guide/libri/dispense vedrai che risolverai da solo tutti i tuoi quesiti.
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
ciao
correggi in
PHP:
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
$sql="UPDATE completo SET dato8 = '$dato8' WHERE id = '$dato50'";
//....
considera poi che se dato50 un numero intero (generlamente gli id sono numeri interi) non ci vogliono gli apici
PHP:
$sql="UPDATE completo SET dato8 = '$dato'8 WHERE id = $dato50";
Non aggiorna Borgo..
Codice:
<?php
$con = mysql_connect("localhost","user","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$dato50 = $_POST["dato50"];
$dato8 = $_POST["dato8"];
 $sql="UPDATE completo SET DATO8 = '$dato'8 WHERE id = '$dato50'";


if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "DATO INSERITO CORRETTAMENTE";
mysql_close($con)
?>
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Secondo me non si tratta di essere alle prime armi.
Non prenderla a male ma come puoi programmare "alle prime armi" se commetti certi errori...
Tu non stai facendo altro che un copia e incolla senza capire minimamente quello che stai facendo perchè copiare una riga del genere $dato50 = $_POST["dato50"] e dato8 = $_POST["dato8"] significa non conoscere proprio nulla.
Ma io lo dico per te, senza offenderti. Leggiti prima un paio di guide/libri/dispense vedrai che risolverai da solo tutti i tuoi quesiti.
Non me la prendo...hai ragione..
Penso solo che se non ti va di dare una mano sul forum puoi decidere di non farlo senza ostentare il tuo sapere.
Grazie comunque..
 

Eduadie

Utente Attivo
22 Mar 2013
58
7
8
www.mrrobotbet.altervista.org
Non me la prendo...hai ragione..
Penso solo che se non ti va di dare una mano sul forum puoi decidere di non farlo senza ostentare il tuo sapere.
Grazie comunque..

Se io controllo ogni tanto questo forum è per aiutare quando posso.
Il problema è che comunque anche chi richiede aiuto deve mostrare un minimo di conoscenza sull'argomento.
Non si può pretendere che altri risolvano problemi senza che chi chiede non sappia niente.
"Caio che non ha mai programmato prende un codice da internet e chiede aiuto perchè ha un errore che non sa risolvere" -> "Caio sta chiedendo di fare a qualcuno quello che gli serve e non sa minimamente come fare"
 

marino51

Utente Attivo
28 Feb 2013
3.025
174
63
Lombardia
Non me la prendo...hai ragione..
Penso solo che se non ti va di dare una mano sul forum puoi decidere di non farlo senza ostentare il tuo sapere.
Grazie comunque..
off topic ?

devi avere pazienza, ma,
va tutto bene se stai facendo un esercizio di comprensione
va altrettanto bene se stai facendo un gioco
va meno bene se ciò che fai è destinato ad un'azienda o ad un ente pubblico
e noi non lo sappiamo, chi suggerisce soluzioni opta per il terzo caso cercando di intravedere tutte le possibilità

per farmi capire, vorrei tu potessi vedere una "Comunicazione mensile al Pensionato", redatta dall'INPS ed antecedente il gennaio 2014,
ebbene, nella comunicazione NON è disponibile nessun "VALORE LORDO", sono presenti le voci "+" e "-" ed un "VALORE NETTO"
già ci si pone la domanda, ma chi è il "WEBETE" che ha sviluppato il software e chi lo ha approvato senza il valore lordo ?
il peggio avviene nel mese di agosto quando, in concomitanza del rimborso irpef,
il lordo ricalcolato differisce in maniera significativa (a danno del pensionato) rispetto ai mesi dello stesso anno

nel lavoro di programmazione occorre distinguere il diletto dal professionale, quest'ultimo richiede perizia ed estrema attenzione

rivolgersi ad un professionista, retribuito, spesso costa meno


@Borgo,
PHP:
$sql="UPDATE completo SET dato8 = '$dato8' WHERE id = $dato50";
nel db ci sono 6000 righe, suppongo che, con la clausola usata, vengano aggiornate molte righe contemporaneamente
altrimenti sarebbe dispendioso inserire 6000 valori con il metodo "form"

ma ... mi astengo
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
intanto non fate discussioni inutili.
poi cosa è quell' 8 nella query, hai messo in mezzo l'apice?
$sql="UPDATE completo SET DATO8 = '$dato'8 WHERE id = '$dato50'";
PHP:
$sql="UPDATE completo SET DATO8 = '$dato8' WHERE id = '$dato50'";
poi un dubbio, cosa hai dentro $dato50? posta un esempio
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
ciao
intanto non fate discussioni inutili.
poi cosa è quell' 8 nella query, hai messo in mezzo l'apice?
$sql="UPDATE completo SET DATO8 = '$dato'8 WHERE id = '$dato50'";
PHP:
$sql="UPDATE completo SET DATO8 = '$dato8' WHERE id = '$dato50'";
poi un dubbio, cosa hai dentro $dato50? posta un esempio
L'esempio puo' essere:
Codice:
              TABELLA
id,        DATO1,       DATO2,....,   DATO8, ...........           DATO50
1     1             R3        0        DGF6387                         IN ALTO
2     1             R5        0        DGF6789                         IN BASSO
3     1             R7        0        DFG5555                        AL CENTRO
Se con il mio form inserisco un dato della colonna 8 ,e uno della colonna 50 , l'invio mi deve aggiornare
la nuova posizione della colonna 50 ma solo del dato della colonna 8 che ho inserito nel form
 
Discussioni simili
Autore Titolo Forum Risposte Data
S aggiornare valore di un elemento xml con php PHP 8
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
Leshabituelles Non riesco ad aggiornare PHP PHP 0
P [PHP] Intercettare ed aggiornare campi di un database PHP 5
C [PHP] scrivere o aggiornare record in tabella PHP 7
T Aggiornare una tabella db richiamando da file php PHP 3
M [Javascript] [PHP] aggiornare pagina ogni ora Javascript 2
S Aggiornare una tabella db richiamando da file php PHP 3
S [PHP]Aggiornare pagina in maniera trasparente... PHP 3
M [PHP] Aggiornare i dati dei record selezionati PHP 3
X come aggiornare codice php? PHP 5
ste80 [PHP] cancellare/aggiornare record DB PHP 24
Metazoo Recuperare variabile php da javascript senza aggiornare pagina PHP 5
giancadeejay Aggiornare tabella db con php PHP 10
giancadeejay [PHP] Aggiornare DB tramite UPLOAD file .csv PHP 39
L [PHP] Sommare campi e aggiornare tabella PHP 14
N eseguire pagina php senza aggiornare la pagina Ajax 3
M Aggiornare Plesk e PHP su VPS Linux OVH Server Dedicati e VPS 3
M Aggiornare dato sul db con php Ajax 8
M AIUTO--> Devo aggiornare il PHP Linux e Software 0
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4
M Problemi con la stampa dei valori in php PHP 1
W [Cerco collaborazioni] Sviluppatore Web (PHP) Offerte e Richieste di Lavoro e/o Collaborazione 0
D passare valori da database sql a php PHP 1
L Ricezione dei dati su file php da modulo html PHP 6
E Inviare variabile a PHP da ciclo in JS Javascript 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
F menù select dinamico da db in php PHP 3
L Problemi form Pagina php HTML e CSS 3
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
F Il codice php è giusto? PHP 2
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1

Discussioni simili