aggiornare campi gia presenti in table mysql

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
Ciao a tutti
io uso il seguente form per inserire i dati in una tabella mysql, e funziona benissimo.

vorrei fare in modo che se lo stesso cliente gia inserito, volesse reinserire i dati (nome e cognome)
sostituisca il vecchio nome e cognome, invece mi crea due volte i valori, e mi trovo un cliente con 2 nomi e 2 cognomi.

ho provato con UPDATE cliente SET nome='$_POST[nome]', cognome='$_POST[cognome]', MA assolutamente non va, devo correggerla.
Avevate gia postato un problema cosi, ma quella soluzione non mi funziona.

Sapreste consigliarmi per favore? grazie anticipatamente.




PHP:
 <?php
session_start();
 
  $id_utente = $_SESSION['id'];

  @include 'configa.php';

 $nome = @addslashes($_POST['nome']);
 $cognome = @addslashes($_POST['cognome']); 
 

if(isset($_POST['nome'])) { 
 $query = "INSERT INTO cliente 
(id_utente,nome,cognome) 

VALUES('$id_utente','$nome','$cognome')";


    $res = @mysql_query($query) or die (mysql_error());
    @mysql_close($cn);


}
?>
</font>
</p> 

<BR>
<BR>
<html>
<body>

<table border="0" cellspacing="2" cellpadding="1">

<br>
<tr>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
<td>Nome:</td><td><input type="text" name="nome" size="55" AUTOCOMPLETE="Off" value=""></td>
</tr>
<tr>
<td>Cognome:</td><td><input type="text" name="cognome" size="55" AUTOCOMPLETE="Off" value=""></td>
</tr>
<tr>
<td><p align="right"><input type="submit" type="submit"value="Conferma"style="background-color:yellowgreen"
 
/>


</td>
</tr>
</form>
 
Ultima modifica di un moderatore:

Domenico Merone

Nuovo Utente
16 Ott 2012
8
0
0
Piccole precisazioni

Devo fare un paio di precisazioni:

_______________________________________________

if(isset($_POST['nome'])) {}


questo così com'è non va proprio bene per un paio di motivi.. innanzitutto per i campi di tipo "text" va usata la clausola empty() che ti controlla se il campo è stato riempito, non isset(). Dopo di che se fai un controllo solo sull'input "nome" ti troverai in situazioni in cui sia stato inserito solo il nome e non il cognome e il tuo sistema lo prenderà per buono e inserirà il campo vuoto nel database, quindi io farei un controllo su tutti e due. Ti scrivo il codice corretto:

if(!empty($_POST['nome']) && !empty($_POST['cognome'])) {}


significa: se il campo nome non è vuoto e il campo cognome non è vuoto allora... ecc ecc

fossi in te aggiungerei anche un piccolo avviso del tipo "non hai completato tutti i campi" con un semplice else.

_______________________________________________________________

$query = "INSERT INTO cliente
(id_utente,nome,cognome)

VALUES('$id_utente','$nome','$cognome')";


questa è una semplice query di aggiunta, quindi per fare ciò che tu vuoi non basta.

Per aggiornare il nome devi fare una query che ti ricerca l'utente in questione nel db e che ti aggiorna il nome ed il cognome. Te la scrivo qui.

$query = "UPDATE cliente SET nome='".$_POST['nome']."', cognome='".$_POST['cognome']."' WHERE ID_cliente = '".$id_utente."'";

non so come tu abbia chiamato il campo dell'id utente quindi ho abbozzato un "ID_cliente".

probabilmente la query a te non andava perchè da come l'hai scritta tu vedo che è sbagliata.

Se hai ancora problemi non esitare a chiedere;)
 

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
Ciao e grazie innanzitutto,
funziona perfettamente, ma vorrei chiederti una cosa, non mi aspettavo funzionasse cosi.
pensavo che un UPDATE riempisse i campi anche all inizio quando sono vuoti, invece no,
devo creare due funzioni allora?
una compila i dati e una cambia i dati?
in questo caso è possibile creare un tasto (button) che sia disabilitato se esiston gia i dati inseriti?

nel senso ho due tasti, INSERISCI DATI e MODIFICA DATI,
se il cliente ha gia i dati inseriti non deve cliccare il tasti INSERISCI DATI, ma l altro, quindi si puo disabilitare un tasto, o meglio farlo sparire a seconda dei casi?

grazie infinite
 

Domenico Merone

Nuovo Utente
16 Ott 2012
8
0
0
autenticazione

Ciao e grazie innanzitutto,
funziona perfettamente, ma vorrei chiederti una cosa, non mi aspettavo funzionasse cosi.
pensavo che un UPDATE riempisse i campi anche all inizio quando sono vuoti, invece no,
devo creare due funzioni allora?
una compila i dati e una cambia i dati?
in questo caso è possibile creare un tasto (button) che sia disabilitato se esiston gia i dati inseriti?

nel senso ho due tasti, INSERISCI DATI e MODIFICA DATI,
se il cliente ha gia i dati inseriti non deve cliccare il tasti INSERISCI DATI, ma l altro, quindi si puo disabilitare un tasto, o meglio farlo sparire a seconda dei casi?

grazie infinite



La cosa si risolve con l'autenticazione. Inserisci i dati lo fai apparire quando non è stato eseguito l'accesso, modifica dati lo fai apparire quando l'utente ha eseguito l'accesso, anche perchè se il cliente non esegue l'autenticazione, cosa modifichi? su quale chiave ti appoggi?
 

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
La cosa si risolve con l'autenticazione. Inserisci i dati lo fai apparire quando non è stato eseguito l'accesso, modifica dati lo fai apparire quando l'utente ha eseguito l'accesso, anche perchè se il cliente non esegue l'autenticazione, cosa modifichi? su quale chiave ti appoggi?



AVREI RISOLTO COSI, USO UN VOSTRO VECCHIO ESEMPIO DEL FORUM, VORREI INSERIRE NELLA CONDIZIONE ECHO UN TASTO
CHE MI COLLEGHI ALLA PAGINA DI MODIFICA DATI, MA MI DA ERRORE, HO PROVATO E RIPROVATO MODIFICANDO LA SINTASSI
MA MI DA ERRORE.
inserisco una cosa del tipo: è sbagliata? ho provato in mille modi. grazie

<input type="button" name="modifica" value="location.href='modifica.php'" />


PHP:
<?php
$tempo = "piove";

//Costruisco la condizione
if ($tempo == "piove"){
  echo "QUI VORREI INSERIRE UN TASTO CHE MI COLLEGHI A MODIFICA.PHP";
}
?>
 

Domenico Merone

Nuovo Utente
16 Ott 2012
8
0
0
AVREI RISOLTO COSI, USO UN VOSTRO VECCHIO ESEMPIO DEL FORUM, VORREI INSERIRE NELLA CONDIZIONE ECHO UN TASTO
CHE MI COLLEGHI ALLA PAGINA DI MODIFICA DATI, MA MI DA ERRORE, HO PROVATO E RIPROVATO MODIFICANDO LA SINTASSI
MA MI DA ERRORE.
inserisco una cosa del tipo: è sbagliata? ho provato in mille modi. grazie

<input type="button" name="modifica" value="location.href='modifica.php'" />


PHP:
<?php
$tempo = "piove";

//Costruisco la condizione
if ($tempo == "piove"){
  echo "QUI VORREI INSERIRE UN TASTO CHE MI COLLEGHI A MODIFICA.PHP";
}
?>


beh la sintassi del bottone è alquanto sbagliata. Se l'hai trovato nel forum linkami la pagina che la segnalo agli amministratori

PHP:
<?php

$tempo = "piove";

if ($tempo == "piove"){

  echo '<input type="button" value="Modifica" onClick="location.href='modifica.php'">';
}

?>

ma ti consiglierei di usare il tag <a> modificandolo con i css in modo da sembrare un tasto. Non è opportuno utilizzare bottoni form senza il form
 
Ultima modifica di un moderatore:

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
beh la sintassi del bottone è alquanto sbagliata. Se l'hai trovato nel forum linkami la pagina che la segnalo agli amministratori

PHP:
<?php

$tempo = "piove";

if ($tempo == "piove"){

  echo '<input type="button" value="Modifica" onClick="location.href='modifica.php'">';
}

?>

ma ti consiglierei di usare il tag <a> modificandolo con i css in modo da sembrare un tasto. Non è opportuno utilizzare bottoni form senza il form

grzie Domenco, stasera provo, ma con i css non credo di averlo mai visto, faccio una ricerca per un tasto css, altrimenti uso il tuo tasto citato sopra. Grazie tantissimo, ciao
 

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
grazie Domenico, ma se volessi aggiungergi una scritta prima del tasto, tipo sotto?


PHP:
<?php 

$tempo = "piove"; 

if ($tempo == "piove"){ 


 QUI PUOI MODIGFICARE I TUOI DATI CLICCA IL TASTO:


  echo '<input type="button" value="Modifica" onClick="location.href='modifica.php'">'; 

} 

?>
 

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
non riesco proprio a farlo funzionare, anche senza il testo che vorrei aggiungere, mi da errore di virgole o punto e virgola.
grazie per l aiuto
 

iperboreo

Utente Attivo
21 Giu 2012
126
0
16
niente, avrei risolto con un link anziche un tasto, non funzionava,

solo un ultima domanda se mi è concesso,
ho il tasto di modifica dati che esegue il cambio nel database, (un normale tasto submit)
voglio che quando confermo i dati e lui me li sostituisce nel database facesse un redirect ad una pagina.

come fare? stesso problema di prima?

GRAZIE ANCORA E COMUNQUE
 
Discussioni simili
Autore Titolo Forum Risposte Data
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
M Aggiornare simultaneamente i campi di due tabelle collegate con id PHP 4
L aggiornare 2 campi di una tabella insieme PHP 6
P [PHP] Intercettare ed aggiornare campi di un database PHP 5
Q Problema su come far aggiornare i campi su un database Mysql PHP 17
L [PHP] Sommare campi e aggiornare tabella PHP 14
U aggiornare campi di un database Classic ASP 5
S Aggiornare percorso file collegati MS Access 0
otto9due Inserire o aggiornare tabella my sql controllando una coppia di valori PHP 7
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
M Aggiornare stesso campo in due tabelle PHP 0
Alex_70 Aggiornare campo da un altro campo PHP 16
Leshabituelles Non riesco ad aggiornare PHP PHP 0
M [Javascript] Aggiornare like totali dopo click Javascript 0
S aggiornare valore di un elemento xml con php PHP 8
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
B [Javascript] Cambiare classe ed aggiornare relativi eventi Javascript 3
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
WebDr [ASP] Aggiornare una pagina in un div da un altro div su pagina diversa Classic ASP 3
C Aggiornare App Html5 HTML e CSS 2
D [Javascript] aggiornare numero caratteri se campo già popolato Javascript 5
S [Javascript] Aggiornare solo un DIV una sola volta con un click di un bottone Javascript 9
Metazoo Recuperare variabile php da javascript senza aggiornare pagina PHP 5
Magenta [WordPress] Dati ftp per aggiornare in locale WordPress 10
giancadeejay Aggiornare tabella db con php PHP 10
giancadeejay [PHP] Aggiornare un valore del database tramite form PHP 26
giancadeejay [PHP] Aggiornare DB tramite UPLOAD file .csv PHP 39
F Aggiornare marker su mappa google con una funzione ajax richiamata al cambio di una select Ajax 2
N eseguire pagina php senza aggiornare la pagina Ajax 3
M Aggiornare Plesk e PHP su VPS Linux OVH Server Dedicati e VPS 3
P Aggiornare Tabella con form ma senza Mysql HTML e CSS 0
P Aggiornare tabella tramite form PHP 17
garimpeiro Errore di sintassi si tenta di aggiornare file in formato dbf Programmazione 2
L Script per aggiornare pagina html Javascript 2
G Aggiornare immagine caricata nel DB Classic ASP 1
K mysql aggiornare campo Database 4
Marco_88 Aggiornare elemento DOM jQuery 9
J Aggiornare 2 tabelle PHP 3
R Aggiornare WP e riuscire poi a tornare indietro. WordPress 24
I come aggiornare il codice jQuery 1
P aggiornare div con un clic senza reload Ajax 2
M Aggiornare grafico con i dati inseriti in tabella PHP 0
A aggiornare pagina1 da link di pag2 Javascript 1
M Aggiornare valori in mysql (classifica) PHP 8

Discussioni simili