• Home
  • Forum
  • Fare Web
  • PHP

PHP Update immagine di un utente

  • Creatore Discussione Creatore Discussione Nickname
  • Data di inizio Data di inizio 9 Nov 2013
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 11 Nov 2013
  • #21
criric ha scritto:
allora qui manca qualcosa
PHP:
$connect = new mysqli("localhost", "root", "password", "database");
o forse non hai abilitata l'estensione mysqli ma mi pare strano
Clicca per allargare...

Ora da questo errore
Errore query :Unknown column 'Luca' in 'where clause
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 11 Nov 2013
  • #22
se in $_SESSION['utente'] c'è il nome e non l'id devi cambiare la query cosi
PHP:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE nome = '" . $_SESSION['idUtente'] . "'";
basta che non hai piu utenti con nome luca altrimenti cambi la foto a tutti, per questo si consiglia sempre di usare un id univoco
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 11 Nov 2013
  • #23
criric ha scritto:
se in $_SESSION['utente'] c'è il nome e non l'id devi cambiare la query cosi
PHP:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE nome = '" . $_SESSION['idUtente'] . "'";
basta che non hai piu utenti con nome luca altrimenti cambi la foto a tutti, per questo si consiglia sempre di usare un id univoco
Clicca per allargare...

Allora, precisamente uso l'username che è univoco quindi dovrebbe andare bene lo stesso.
Ora non dà più errori solo che, la foto nella cartella viene sempre caricata correttamente, ma nel database compare solo "1" e inoltre toglie le foto a tutti gli altri utenti .-. Anzi precisamente invece della foto mette "0".
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 11 Nov 2013
  • #24
prova stampare la query e vedi cosa c'è di sbagliato
PHP:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE nome = '" . $_SESSION['idUtente'] . "'";  
echo $query;
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 11 Nov 2013
  • #25
criric ha scritto:
prova stampare la query e vedi cosa c'è di sbagliato
PHP:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE nome = '" . $_SESSION['idUtente'] . "'";  
echo $query;
Clicca per allargare...

Compare questo
UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 12 Nov 2013
  • #26
Compare questo
UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca
Clicca per allargare...
Copiando hai dimenticato l'ultimo apice?
Allora, precisamente uso l'username che è univoco quindi dovrebbe andare bene lo stesso.
Clicca per allargare...
E l'username è contenuto nel campo nome?
Edit: ok ho visto che hai cambiato la query inserendo username al posto di nome.

Visto che hai modificato inserendo username, non è che hai toccato anche la parte finale della query dimenticandoti l'ultimo apice?
La query dovrebbe essere questa:
Codice:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE username = '" . $_SESSION['idUtente'] . "'";
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 12 Nov 2013
  • #27
Longo8 ha scritto:
Copiando hai dimenticato l'ultimo apice?

E l'username è contenuto nel campo nome?
Edit: ok ho visto che hai cambiato la query inserendo username al posto di nome.

Visto che hai modificato inserendo username, non è che hai toccato anche la parte finale della query dimenticandoti l'ultimo apice?
La query dovrebbe essere questa:
Codice:
$query = "UPDATE utenti SET foto = '$nomefile' WHERE username = '" . $_SESSION['idUtente'] . "'";
Clicca per allargare...

No non mi sembra, controlla pure se vuoi ma non mi sembra
PHP:
if (isset($_FILES["foto"]["name"]) && !empty($_FILES["foto"]["name"])) {
        $nomefile = strtolower($_FILES["foto"]["name"]);
        if (is_uploaded_file($_FILES["foto"]["tmp_name"])) {
            if (move_uploaded_file($_FILES["foto"]["tmp_name"], "uploadimg/$nomefile")) {
                $connect = new mysqli("", "", "", "");
                $query = "UPDATE utenti SET foto = '$nomefile' WHERE username = '" . $_SESSION['utente'] . "'";  
echo $query; 
                if (!$connect->query($query)) {
       echo "Errore query :" . $connect->error;
}  
                $connect->close();
            }
        }
    }
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2013
  • #28
I dati arrivano correttamente.
E la query è esatta. Quale è l'errore che ti viene fuori?
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 13 Nov 2013
  • #29
Longo8 ha scritto:
I dati arrivano correttamente.
E la query è esatta. Quale è l'errore che ti viene fuori?
Clicca per allargare...

Eh quello che ho scritto, ovvero

UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca

Che poi in realtà non è un errore, però le immagini non vengono associate all'utente nella tabella, e al posto della foto mette 1 e toglie la foto a tutti gli altri utenti mettendo 0.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2013
  • #30
Molto strano.
UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca
Clicca per allargare...
Questo non è un errore ma è il risultato del codice:
PHP:
echo $query;
Anche se in realtà dovrebbe essere:
UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca'
E' per questo che dicevo dell'apice finale che mancava.
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 13 Nov 2013
  • #31
Longo8 ha scritto:
Molto strano.

Questo non è un errore ma è il risultato del codice:
PHP:
echo $query;
Anche se in realtà dovrebbe essere:
UPDATE utenti SET foto = '250644_315166391908040_2016804073_n.jpg' WHERE username = 'Luca'
E' per questo che dicevo dell'apice finale che mancava.
Clicca per allargare...

Si infatti l'avevo notato anche io però come hai visto non è quello il problema.
Vi prego aiutatemi a risolvere questa cosa perché è davvero urgente
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 16 Nov 2013
  • #32
Aiutatemi per favore =(
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 16 Nov 2013
  • #33
riposta lo script completo compreso il form e metti a iniziopagina
PHP:
var_dump($_SESSION);
e posta
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 17 Nov 2013
  • #34
criric ha scritto:
riposta lo script completo compreso il form e metti a iniziopagina
PHP:
var_dump($_SESSION);
e posta
Clicca per allargare...

Grazie per la pazienza e scusatemi

Allora, questo è il form:

HTML:
<form id="formmodifica" action='update2.php' method='POST' enctype='multipart/form-data'>
<table border="0" align="center">

<tr><td width="113" align="right" id="gestione" for="foto">Foto</td> <td width="239" align="center"><input type="file" name="foto" enctype='multipart/form-data' id="foto" /></td></tr>


<tr>
<td colspan="2" align="center">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="center"><span style="color: #F00; font-weight: bold;">Conferma le tue modifiche inserendo:<br />Il username e Password</span></td>
</tr>
<tr><td colspan="2" align="center">&nbsp;</td></tr>
<tr><td align="right">Username:</td><td><input type='username' id='username2' name='username'></td></tr>
<tr><td align="right">Vecchia Password:</td><td><input type='password' id='password2' name='password'></td></tr>
</table>
<br />
<table border="0" align="center">
<tr>
<td><input type='submit' id='submitM' value='Modifica' name='submit'></td>
</tr>
</table>
</form>

E questo è lo script completo:

PHP:
<?php

	ob_start();
	include 'config.php';
	connect();
	session_start();
	
?>

<?php
var_dump($_SESSION);  

if (isset($_POST['submit'])){
	
$email = addslashes(trim($_POST['email']));
$indirizzo = addslashes(trim($_POST['indirizzo']));
$telefono = addslashes(trim($_POST['telefono']));
$cellulare = addslashes(trim($_POST['cellulare']));	
$fax = addslashes(trim($_POST['fax']));
$foto = addslashes(trim($_POST['foto']));
$foto = mysql_real_escape_string($_FILES["foto"]["name"]);

$password = addslashes(trim($_POST['password']));
$password_cript = md5($password);



if (isset($_FILES["foto"]["name"]) && !empty($_FILES["foto"]["name"])) {
        $nomefile = strtolower($_FILES["foto"]["name"]);
        if (is_uploaded_file($_FILES["foto"]["tmp_name"])) {
            if (move_uploaded_file($_FILES["foto"]["tmp_name"], "uploadimg/$nomefile")) {
                $connect = new mysqli("", "", "", "");
                $query = "UPDATE utenti SET foto = '$nomefile' WHERE username = '" . $_SESSION['utente'] . "'";  
echo $query; 
                if (!$connect->query($query)) {
       echo "Errore query :" . $connect->error;
}  
                $connect->close();
            }
        }
    }
	
if ($password){
	
$exists = mysql_query ("SELECT * FROM utenti WHERE password = '$password_cript'") or die ("Impossibile completare la richiesta");
if (mysql_num_rows($exists) != 0){
		

mysql_query ("UPDATE utenti SET foto='$foto' AND password = '$password_cript'") or die ("Caricamento dei dati nel database fallito.");
echo "I dati sono stati modificati correttamente.</br>Per visualizzare le modifiche rieffettuare l'accesso!";
}else echo "Username o Password sbagliata, inserire l'username e la password che si usa per accedere nell'area partner.";	
}
 else echo "Devi inserire l'username e la password per confermare la modifica.";

}
?>


Con var_dump compare questo
Codice:
array(14) { ["id"]=> &string(2) "34" ["utente"]=> &string(7) "Luca" ["email2"]=> &string(21) "luca@live.it" ["nome2"]=> &string(8) "Luca" ["cognome2"]=> &string(8) "Prova" ["indirizzo2"]=> &string(14) "via prova n.12" ["telefono2"]=> &string(10) "12345" ["cellulare2"]=> &string(10) "6789" ["fax2"]=> &string(10) "10111213" ["foto2"]=> &string(14) "primafoto.JPG" } UPDATE utenti SET foto = 'fotoprova.jpg' WHERE username = 'Luca'
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 17 Nov 2013
  • #35
è questa che ti modifica tutti irecord
PHP:
mysql_query ("UPDATE utenti SET foto='$foto' AND password = '$password_cript'") or die ("Caricamento dei dati nel database fallito.");
e ti mette 0 perche non si recupera cosi il nome della foto
PHP:
$foto = addslashes(trim($_POST['foto']));
tutta la parte da qui
PHP:
if ($password){
in poi al puoi cestinare
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 17 Nov 2013
  • #36
criric ha scritto:
è questa che ti modifica tutti irecord
PHP:
mysql_query ("UPDATE utenti SET foto='$foto' AND password = '$password_cript'") or die ("Caricamento dei dati nel database fallito.");
e ti mette 0 perche non si recupera cosi il nome della foto
PHP:
$foto = addslashes(trim($_POST['foto']));
tutta la parte da qui
PHP:
if ($password){
in poi al puoi cestinare
Clicca per allargare...

Perfetto !! Funziona benissimo =) Grazie mille
E se io voglio che l'utente possa semplicemente togliere la foto ?
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 17 Nov 2013
  • #37
Basta inserire un button cancella che ti fa partire una query:
PHP:
mysql_query ("UPDATE utenti SET foto='' WHERE username = '" . $_SESSION['utente'] . "'") or die ("Eliminazione immagine fallita.");
Ovviamente poi se la foto non c'è fai visualizzare quella di default.
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 17 Nov 2013
  • #38
Longo8 ha scritto:
Basta inserire un button cancella che ti fa partire una query:
PHP:
mysql_query ("UPDATE utenti SET foto='' WHERE username = '" . $_SESSION['utente'] . "'") or die ("Eliminazione immagine fallita.");
Ovviamente poi se la foto non c'è fai visualizzare quella di default.
Clicca per allargare...

Funziona perfettamente, solo quattro cose, molto importanti però:

• In questo modo la foto viene cancellata dalla tabella utenti, ma non dalla cartella uploadimg, come faccio invece a fare in modo che si cancellino entrambe le cose?

• Una cosa stupida, come faccio in modo che viene visualizzato un messaggio quando la foto viene cancellata ? Sembrerà strano ma non ci riesco .-.

• Quando la foto viene caricata, quella vecchia rimane, io vorrei invece che si cancellasse la vecchia e rimanesse solo quella nuova, come faccio, unisco i due script ?

• Come faccio a impostare dei "limiti" per la foto ? Ovvero larghezza, altezza, peso, formato ecc. ?

Grazie mille a tutti mi state aiutando moltissimo =)
 
Ultima modifica: 17 Nov 2013

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 18 Nov 2013
  • #39
• In questo modo la foto viene cancellata dalla tabella utenti, ma non dalla cartella uploadimg, come faccio invece a fare in modo che si cancellino entrambe le cose?
Clicca per allargare...
Grazie alla funzione unlink.
• Una cosa stupida, come faccio in modo che viene visualizzato un messaggio quando la foto viene cancellata ? Sembrerà strano ma non ci riesco .-.
Clicca per allargare...
Puoi inserire un messaggio in una variabile che la puoi passare tramite metodo get e quando torni alla pagina precedente lo visualizzi.
• Quando la foto viene caricata, quella vecchia rimane, io vorrei invece che si cancellasse la vecchia e rimanesse solo quella nuova, come faccio, unisco i due script ?
Clicca per allargare...
Basta caricare la foto con lo stesso nome e quella precedente viene sovrascritta. Quindi magari nomina la foto con l'username dell'utente.
• Come faccio a impostare dei "limiti" per la foto ? Ovvero larghezza, altezza, peso, formato ecc. ?
Clicca per allargare...
Prova a dare uno sguardo agli esempi pubblicati nel manuale.
 
N

Nickname

Utente Attivo
18 Set 2013
122
0
0
  • 18 Nov 2013
  • #40
Longo8 ha scritto:
Grazie alla funzione unlink.

Puoi inserire un messaggio in una variabile che la puoi passare tramite metodo get e quando torni alla pagina precedente lo visualizzi.

Basta caricare la foto con lo stesso nome e quella precedente viene sovrascritta. Quindi magari nomina la foto con l'username dell'utente.

Prova a dare uno sguardo agli esempi pubblicati nel manuale.
Clicca per allargare...

Aallora.. esaminiamo un problema alla volta altrimenti non capiamo più niente

La funzione unlink la conosco ma come faccio ad utilizzarla in questo caso ?
Dovrei fare una cosa del genere ?

PHP:
unlink("uploadimg/$nomefile");
 
Ultima modifica: 18 Nov 2013
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

Update dinamico informazioni scritte in una pagina php
  • elpirata
  • 12 Ago 2020
  • jQuery
Risposte
11
Visite
6K
jQuery 13 Ago 2020
Tommy03
L
update tabelle in php mysql [risolto]
  • luigithen
  • 31 Mar 2020
  • PHP
Risposte
6
Visite
2K
PHP 31 Mar 2020
luigithen
L
M
[PHP] Query UPDATE che non mi aggiorna campi seconda tabella
  • Max61
  • 13 Giu 2019
  • PHP
Risposte
3
Visite
2K
PHP 14 Giu 2019
Max61
M
P
[PHP] INSERT e UPDATE
  • prate007
  • 7 Apr 2019
  • PHP
Risposte
1
Visite
2K
PHP 8 Apr 2019
marino51
[PHP] query update e select insieme ma frazionando l'arrray
  • Monital
  • 30 Nov 2018
  • PHP
Risposte
12
Visite
3K
PHP 3 Dic 2018
marino51
D
[PHP] Update non trasferisce condizione where
  • darione78
  • 22 Giu 2018
  • PHP
Risposte
1
Visite
1K
PHP 23 Giu 2018
marino51
L
[PHP] Errore UPDATE su tabella DB
  • luigi.paciolla
  • 13 Dic 2017
  • PHP
  • 2
Risposte
22
Visite
4K
PHP 16 Dic 2017
borgo italia
[PHP] istruzione UPDATE SQL
  • giancadeejay
  • 19 Mag 2017
  • PHP
Risposte
2
Visite
1K
PHP 19 Mag 2017
giancadeejay
[PHP] UPDATE DATO , SE ESISTE IN DB ..
  • giancadeejay
  • 25 Apr 2017
  • PHP
Risposte
14
Visite
2K
PHP 27 Apr 2017
giancadeejay
[PHP] Update tabella da file csv
  • giancadeejay
  • 5 Feb 2017
  • PHP
Risposte
3
Visite
2K
PHP 6 Feb 2017
borgo italia
[PHP] SELECT, UPDATE VERIFICARNE IL RISULTATO
  • webmachine
  • 9 Ago 2016
  • PHP
Risposte
2
Visite
1K
PHP 10 Ago 2016
webmachine
[PHP] Update in search.
  • cris8380
  • 21 Giu 2016
  • PHP
Risposte
16
Visite
3K
PHP 23 Giu 2016
borgo italia
R
Update PHP dalla 5.3.3 alla 5.3.4
  • Ranma
  • 12 Ott 2014
  • PHP
Risposte
0
Visite
1K
PHP 12 Ott 2014
Ranma
R
Errore sintassi SQL "UPDATE" in file PHP
  • Komix
  • 23 Mar 2012
  • PHP
Risposte
10
Visite
4K
PHP 24 Mar 2012
alessandro1997
G
[PHP/MySQL] Pagina di UPDATE
  • gracito
  • 22 Feb 2011
  • PHP
Risposte
2
Visite
2K
PHP 22 Feb 2011
gracito
G
D
[PHP-MySql] Update che non mi funziona
  • Dian
  • 4 Set 2010
  • PHP
Risposte
2
Visite
3K
PHP 6 Set 2010
Eliox
H
Need Help with PHP Database Connection Issues
  • hellmmithha
  • 19 Dic 2024
  • PHP
Risposte
1
Visite
793
PHP 21 Mar 2025
therope
T
F
Cerco Hosting con VECCHIE versioni di php
  • frk
  • 4 Mar 2024
  • Hosting
Risposte
0
Visite
2K
Hosting 4 Mar 2024
frk
F
Captcha php
  • Cosina
  • 21 Gen 2024
  • PHP
Risposte
1
Visite
2K
PHP 22 Gen 2024
WmbertSea
S
passare un valore da un form a un file .php con metodo post
  • smack2005
  • 15 Nov 2023
  • PHP
Risposte
4
Visite
2K
PHP 23 Nov 2023
zorro
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?