[PHP] Update in search.

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
Salve amici del forum posso sapere dove sbaglio per favore mi da errore all'aggiornamento dei dati


$strSearch = $_POST["search_term"];
$objConnect = mysql_connect("localhost","","") or die("Error Connect to Database");
$objDB = mysql_select_db("");
$strSQL = "SELECT * FROM Profilo WHERE Tessera = $strSearch";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$objQuery = mysql_query($strSQL);

?>
//QUI INVECE AGGIORNO

<?php


$query = "UPDATE Profilo SET Tessera='{$_POST['Tessera']}', Nome='{$_POST['Nome']}', Cognome='{$_POST['Cognome']}', Codice_fiscale='{$_POST['Codice_fiscale']}', Data_di_nascita='{$_POST['Data_di_nascita']}',Comune='{$_POST['Comune']}', Indirizzo='{$_POST['Indirizzo']}' ";

if (mysql_query ($query, $connessione))
echo ("Modifica dei dati avvenuta correttamente!");
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
scusa il ritardo, ma ho visto il post solo oggi.
comunque hai risolto?
se non hai risolto intanto posta l'errore che ti da poi un paio di cose
da dove salta fuori quella variabile $connessione nella query di update?
devi aggiornare un particolare record o tutti? se solo uno manca il WHERE per dirgli quale
ultimo passa alle nuove istruziono php mysqli, le vecchie mysql sono deprecate
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
Grazie per la tua risposta, tranquillo, rispetto le regole del forum,
ho creato un altro script chè il seguente ma neanche questo funziona te lo posto
l'altro script di cui sopra non prenderlo piu in considerazione:

PHP:
<?php
 if(isset($_POST['update'])) {
 $dbhost = 'localhost';
 $dbuser = 'mia user';
 $dbpass = 'mia password';
 
 $conn = mysql_connect($dbhost, $dbuser, $dbpass);
 
 if(! $conn ) {
 die('Could not connect: ' . mysql_error());
 }
 
 $Tessera = $_POST['Tessera']; 
 $Codice_agenzia = $_POST['Codice_agenzia']; 
 $Agenzia = $_POST['Agenzia'];
 $Cognome = $_POST['Cognome'];
 $Nome = $_POST['Nome']; 
 $Cap = $_POST['Cap'];
 $Codice_fiscale = $_POST['Codice_fiscale'];
 $Codice_cliente = $_POST['Codice_cliente'];
 $Indirizzo = $_POST['Indirizzo']; 
 $Sesso = $_POST['Sesso'];
 $Comune = $_POST['Comune'];
 $Data_di_nascita = $_POST['Data_di_nascita'];
 $Indirizzo_email = $_POST['Indirizzo_email'];
 $Telefono = $_POST['Telefono'];
 $Username = $_POST['Username'];
 $Password = $_POST['Password']; 
 $Comune_di_nascita = $_POST['Comune_di_nascita']; 
 
$sql = "UPDATE Profilo ". "SET Tessera = $Tessera , Codice_agenzia = $Codice_agenzia , Agenzia = $Agenzia , Cognome = $Cognome ,Nome = $Nome , Codice_fiscale = $Codice_fiscale , Codice_cliente = $Codice_cliente , Indirizzo = $Indirizzo , Sesso = $Sesso , Comune = $Comune , Data_di_nascita = $Data_di_nascita , Indirizzo_email = $Indirizzo_email , Telefono = $Telefono , Username = $Username , Password = $Password ". "WHERE Tessera = $Tessera" ;

 mysql_select_db('mio_db');
 $retval = mysql_query( $sql, $conn );
 
 if(! $retval ) {
 die('Could not update data: ' . mysql_error());
 }
 echo "Aggiornamento avvenuto correttamente\n";
 
 mysql_close($conn);
 }else {
 ?>
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
ho provato ad aggiungere un'altra parentesi e ora si connette ma alla fine dell'aggiornamento di dice:
COULD NOT UPDATE:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova a fare queste correzioni, leggi i commenti
PHP:
<?php
if(isset($_POST['update'])) {
     $dbhost = 'localhost';
     $dbuser = 'mia user';
     $dbpass = 'mia password';
     $conn = mysql_connect($dbhost, $dbuser, $dbpass) OR die('Could not connect: ' . mysql_error());
     //metti qui la selzione db
     mysql_select_db('mio_db') OR die('non trovato: ' . mysql_error());
    //ti conviene mettere dei controlli sui dati che ti provengono dal form
     $Tessera = $_POST['Tessera'];
     $Codice_agenzia = $_POST['Codice_agenzia'];
    //....non riscrivo tutti i $_POST ...
     $Comune_di_nascita = $_POST['Comune_di_nascita'];
     //gli apici sulle stringhe e a che ti serviva cuel concatenamento?
    //poi sarebbe meglio che il WHERE fosse eseguito sull'id del record
     $sql = "UPDATE Profilo SET Tessera = '$Tessera' , Codice_agenzia = '$Codice_agenzia' , Agenzia = '$Agenzia' , Cognome = '$Cognome' ,Nome = '$Nome' , Codice_fiscale = '$Codice_fiscale' , Codice_cliente = '$Codice_cliente' , Indirizzo = '$Indirizzo' , Sesso = '$Sesso' , Comune = '$Comune' , Data_di_nascita = '$Data_di_nascita' , Indirizzo_email = '$Indirizzo_email' , Telefono = '$Telefono' , Username = '$Username ', Password = '$Password' ". "WHERE Tessera = '$Tessera'" ;
     //qui metti un var_dump per vedere se la querystringa si forma come dovrebbe
    //o se manca qualcosa
     var_dump($sql);//poi lo togli
     $retval = mysql_query( $sql);//togli la $conn non serve
     if(! $retval ) {
         die('Could not update data: ' . mysql_error());
     }
     echo "Aggiornamento avvenuto correttamente\n";
     mysql_close($conn);
}else {//dopo immagino che ci sia il form
?>
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
else } l'ho eliminato perche il form si trova in un altro file

ma non ho capito come fare queste manovre cio provato ma forse nn so fare io!!! o_Oo_Oo_Oo_O:(:(:(
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
allora se il var_dump non ti riporta nulla vuol dire che probabilmente nessuna di quelle isturzioni viene eseguita.
da quello che hai detto hai diviso la pagina (metto i nomi a caso)
form.php dove hai il form di inserimento dati che punta alla pagina modifica.php
giusto?
per prima cosa allora togli l'if iniziale
if(isset($_POST['update'])) {
e la sua graffa di chiusura poi poi verificha esattamente che il form punti alla modifica.php (dove ti converra mettere un lik di ritorno al form o dove vuoi tu)
fatto questo verifica sempre conun var_dump che i dati siano inviati es
Codice:
<?php
//le righe da <pre> a </pre> poi le togli
//il <pre> sereve a organizzare meglio la visualizzazione del var_dump
echo "<pre>";
var_dump($_POST);
echo "</pre>";
$dbhost = 'localhost';
$dbuser = 'mia user';
$dbpass = 'mia password';
//ecc... tutto il reso di script
?>
e verifica che i dati vengano trasmessi e che anche tutti i nomi deli input, campi della tabella corrispondano esattamente
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
Ciao, ecco cosa mi stampa

array (0) {
}
Aggiornamento avvenuto con successo!
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
SI infatti il form è in un altro file
ti posto tutto il codice completo che ho modificato ancora per l'ennesima volta
PHP:
<?php
echo "<pre>";
var_dump($_POST);
echo "</pre>";
$servername = "localhost";
$username = "";
$password = "";
$dbname = "";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
   
    }

 $Tessera = addslashes($_POST['Tessera']); 
 $Codice_agenzia = addslashes($_POST['Codice_agenzia']); 
 $Agenzia = addslashes($_POST['Agenzia']);
 $Cognome = addslashes($_POST['Cognome']);
 $Nome = addslashes($_POST['Nome']); 
 $Cap = addslashes($_POST['Cap']);
 $Codice_fiscale = addslashes($_POST['Codice_fiscale']);
 $Codice_cliente = addslashes($_POST['Codice_cliente']);
 $Indirizzo = addslashes($_POST['Indirizzo']); 
 $Sesso = addslashes($_POST['Sesso']);
 $Comune = addslashes($_POST['Comune']);
 $Data_di_nascita = addslashes($_POST['Data_di_nascita']);
 $Indirizzo_email = addslashes($_POST['Indirizzo_email']);
 $Telefono = addslashes($_POST['Telefono']);
 $Username = addslashes($_POST['Username']);
 $Password = addslashes($_POST['Password']); 
 $Comune_di_nascita = addslashes($_POST['Comune_di_nascita']); 



$sql = "UPDATE Profilo ". "SET  Tessera = '$Tessera' , Codice_agenzia = '$Codice_agenzia' , Agenzia = '$Agenzia' , Cognome = '$Cognome' ,Nome = '$Nome' , Codice_fiscale = '$Codice_fiscale' , Codice_cliente = '$Codice_cliente' , Indirizzo = '$Indirizzo' , Sesso = '$Sesso' , Comune = '$Comune' , Data_di_nascita = '$Data_di_nascita' , Indirizzo_email = '$Indirizzo_email' , Telefono = '$Telefono' , Username = '$Username' , Password = '$Password' ". "WHERE Tessera = '$Tessera' " ;

if ($conn->query($sql) === TRUE) {
    echo "Aggiornamento avvenuto con successo!";
} else {
    echo "Error updating record: " . $conn->error;
}

$conn->close();
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
vista così (ma poi la guardo meglio) non mi sembra di vedere errori, il var_dump del POST ti restituisce qualcosa?
poi un piccolo dubbio vedo che giustamente usi mysqli: hai abilitato mysqli su php.ini?
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
40
no ho ancora mysql

e mi restituisce questo

Ciao, ecco cosa mi stampa

array (0) {
}
Aggiornamento avvenuto con successo!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
hai un errore di trasmissione dei dati se fosse corretto il var_dump dovrebbe restituirti
esempio
array(18) {//se hai riempito tutti i campi di input o il numero di quanti ne hai riempiti
["Tessera"]=>
string(2) "aa256bbhy"
["Codice_agenzia"]=>
string(2) "cia"
//i nomi e i valori di tutti gli altri input
["invia"]=>//e il nome e valore del submit
string(5) "Invia"
}
verifica l'esatta corrispondenza del/dei nome/i che hai nei vari campi di input e i nomi che hai scritto nei vari $_POST
 
Discussioni simili
Autore Titolo Forum Risposte Data
elpirata Update dinamico informazioni scritte in una pagina php jQuery 11
L update tabelle in php mysql [risolto] PHP 6
M [PHP] Query UPDATE che non mi aggiorna campi seconda tabella PHP 3
P [PHP] INSERT e UPDATE PHP 1
Monital [PHP] query update e select insieme ma frazionando l'arrray PHP 12
D [PHP] Update non trasferisce condizione where PHP 1
L [PHP] Errore UPDATE su tabella DB PHP 22
giancadeejay [PHP] istruzione UPDATE SQL PHP 2
giancadeejay [PHP] UPDATE DATO , SE ESISTE IN DB .. PHP 14
giancadeejay [PHP] Update tabella da file csv PHP 3
webmachine [PHP] SELECT, UPDATE VERIFICARNE IL RISULTATO PHP 2
R Update PHP dalla 5.3.3 alla 5.3.4 PHP 0
N PHP Update immagine di un utente PHP 56
Komix Errore sintassi SQL "UPDATE" in file PHP PHP 10
G [PHP/MySQL] Pagina di UPDATE PHP 2
D [PHP-MySql] Update che non mi funziona PHP 2
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4

Discussioni simili