• Home
  • Forum
  • Fare Web
  • PHP

Inserire un'immagine avatar nel profilo per avere ogni utente la sua pagina

  • Creatore Discussione Creatore Discussione paperinik4
  • Data di inizio Data di inizio 12 Nov 2012
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #21
Ciao

Ti riferisci all'immagine fissa ???
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #22
Ciao

Ciao Longo,

Allora ho verificato, e le immagini vengono memorizzate nel db o meglio i link. perchè le immagini mi hanno sconsigliato di memorizzarle nel db sennò diventa troppo pesante. Rimane permanente l'errore:

"Warning: strtoupper() expects parameter 1 to be string, array given in /volume1/web/utenti/provalogin/paginaris.php on line 26 "

La riga 26 di paginaris.php è la seguente:

PHP:
$array =  strtoupper($_SESSION['nome'] );     //che mi da il nome in maiuscolo inisieme a benvenuto

Ti posto i due file dell'immagine, tante volte riuscissi a trovare qualche errore che a me sufgge, e se per caso ti venisse in mente come unirli ben venga.

index.php:

PHP:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.js" type="text/javascript"></script>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js'></script>
<script src='http://memai.altervista.org/js/jquerymin.js'></script><script 
<script>
function togli(x)
{
	$('#'+x).toggle();
	var immagine = document.getElementById('hidden'+x).value;
	$.get('togli.php',{img:immagine},function(done){$('#cancella_img').html(done)});
}


function carica()
{
	$.post('insert_immages.php',{fine:'yes'},function(done){$('body').html(done)});
}

</script>
<?php
require_once("connetti.php");
require_once("paginaris.php");
if(isset($_SESSION['nome'])) {


#se non esistono delle cartelle le creo
if(!file_exists('img_temp'))
{
	mkdir('img_temp/',0777);
}
if(!file_exists('immagini'))
{
	mkdir('immagini/',0777);
}
if($_POST['sub'])
{
	#Inizializzo la cartella dove andranno a finire le imamgini
	$dir = 'img_temp/';
	#ricevo i dati delle immagini
	#$nome per il nome del file, es: pippo.jpeg
	$nome = $_FILES['file']['name'];
	#$nome_temporaneo invece per il nome temporaneo che
	#il server crea per l'immagine pippo.jpeg
	$nome_temporaneo = $_FILES['file']['tmp_name'];
	
	#Inizializzo una variabile a cui dò un valore intero pari a 0
	#semplicemente per far girare il codice while e leggere l'array
	$n=0;
	#finche n sarà minore delle immagini caricate, il ciclo continuer�
	while($n<count($nome))
	{
		#trovo le informazioni , come: l'altezza, la larghezza e il sorgente delle immagini
		#creando una lista e usando poi getimagesize() per prelevare le informazioni
		list($larghezza,$altezza,$sorgente,$attributo) = getimagesize($nome_temporaneo[$n]);
		#creo uno switch in base al sorgente e per ogni caso  effettuer� un preciso evento
		switch($sorgente)
		{
			case IMAGETYPE_GIF:
			#creo le immagini
			$immagine = imagecreatefromgif($nome_temporaneo[$n]);
			imagegif($immagine, $dir.$nome[$n]);
			break;
			
			case IMAGETYPE_JPEG:
			$immagine = imagecreatefromjpeg($nome_temporaneo[$n]);
			imagejpeg($immagine, $dir.$nome[$n]);
			break;
			
			case IMAGETYPE_PNG:
			$immagine = imagecreatefrompng($nome_temporaneo[$n]);
			imagepng($immagine, $dir.$nome[$n]);
			break;
			
			case IMAGETYPE_BMP:
			$immagine = imagecreatefrombmp($nome_temporaneo[$n]);
			imagebmp($immagine, $dir.$nome[$n]);
			break;
		}
		
		#Creo il div dove gli assegno l'id per identificare  con JQuery le imamgini appena caricate
		?>	<div id='<?php echo $n?>'>
				<img src='<?php echo $dir.$nome[$n]?>' style='width:100px; height:100px'>
				<input  id='hidden<?php echo $n ?>' type='hidden' value='<?php echo $dir.$nome[$n] ?>'/>
				<div onclick='togli("<?php echo $n ?>")'>Togli</div>
			</div>
			<div id='rimetti<?php echo $n ?>'  onclick='rimetti("<?php echo $n ?>")' style='display:none'>Rimetti</div>
		<?php
		$n++; #aumento la variabile inizializzata per il funzionamento dello while
	}
	?>
		<div id='cancella_img'></div>
		<input type='submit' value='carica' onclick='carica();void 0'/>
	<?php
	exit;
}
?>
<form action='' method='POST' enctype='multipart/form-data'>
	<input type='file' name='file[]' multiple size ="60"/>
	<input type='submit'  name='sub' value='Carica'/>
</form>
<?php
	
}
?>

Qua mi da un triangolino giallo non so il perchè. Me l'ha dato sempre:

PHP:
		list($larghezza,$altezza,$sorgente,$attributo) = getimagesize($nome_temporaneo[$n]); //triangolino giallo e sicuramente non me la fa eseguire

E questo è inser_immages.php:

PHP:
<?php
require_once("connetti.php");
require_once("paginaris.php");
if(isset($_SESSION['nome'])) {
    
if(isset($_POST['fine']))
{
	#Inserisci questa funzioncina per leggere tutti i file contenuti nella cartella immagini
	#che poi verranno inseriti nel db tramite una query grazie ad un for
	function illustrazioni($cartella){
		$foto=Array();
		if(file_exists($cartella)){
			$directory = opendir($cartella);
			while (false !== ($file = readdir($directory))) { 
				if(is_file($cartella.$file)){
					array_push($foto,$file);
				}
			}
			$handle = closedir($directory);
		}
		sort($foto);
		return $foto;
	}
	$foto_t=array();
	$foto_t=illustrazioni("img_temp/");
	$conta = count($foto_t);
	for ($x=0; $x<$conta; $x++)
	{	
		$immagine_t = "img_temp/$foto_t[$x]";
		$immagine = "immagini/$foto_t[$x]";
		echo "<img src='".$immagine_t."' width='100px' height='100px'> "; 
		#questa variabile contiene il valore dell'url  finale che si inserirà alla fine
		#Sposto i file nella cartella temporanea in quella fissa
		copy($immagine_t,'immagini/'.$foto_t[$x]) or die('non si sposta la foto');
		##infine elimino il file nella directory temporanea
		unlink($immagine_t);
               
		$insert_query = "INSERT INTO immagine(immagine) VALUES('".$immagine."')";
		mysql_query($insert_query);
               
	}
	echo "Le immagini sono state inserite nel database con successo!";
}
mysql_close();
}
?>

Qua mi da un altro triangolino giallo, credo che sia un errore di sintassi:

PHP:
$handle = closedir($directory); //triangolino giallo (che sicuramente non mi fa eseguire la riga)

Se le tieni separati, funzionano magnificamenete, se provi ad unire il tutto succede un casino. In ultimo ti vorrei far notare che ho messo ad entrambi i file le seguenti righe:

PHP:
require_once("connetti.php");      //richiamo della connessione al db
require_once("paginaris.php");    //richiamo alla pagina protetta solo chi si logga la può vedere
if(isset($_SESSION['nome'])) {   //richiamo della sessione (forse sbaglio ???? Boh non saprei)

Ovviamente l'ultima parentesi graff si chiude a fine codice di entrambi. Grazie. Spero di risolvere insiema te il problema.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #23
Si. Perché questa domanda?
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #24
Ciao

Longo8 ha scritto:
Si. Perché questa domanda?
Clicca per allargare...

Mi era venuto il dubbio, ma quindi non la debbo fare con una query per l'immagine da visualizzare fissa
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #25
Si nel campo SRC devi inserire il link che è nel database quindi ti serve una query.
Mi dici il tuo "nome" sul sito?
Ti ha sempre dato questo errore?
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #26
Ciao

Longo8 ha scritto:
Si nel campo SRC devi inserire il link che è nel database quindi ti serve una query.
Mi dici il tuo "nome" sul sito?
Ti ha sempre dato questo errore?
Clicca per allargare...

Io mi chiamo Fabio, piacere. Il mio contatto skype è: mousesenzapalle2007 (se tante volte mi vuoi aggiunre per avere un contatto diretto). Io sono registrato sul mio sito come paperinik4 che viene trasformato dalla sessione in Fabio tutto maiuscolo. Quell'errore me lo da solo quand ho inserito queste righe:

PHP:
require_once("connetti.php");
require_once("paginaris.php");
if(isset($_SESSION['nome'])) {

Sui file inser_immages e index. Non ci puoi arrivare da esterno sul mio sito, in quanto lavoro tutto sul synology (nas). Tu hai skype per caso ???
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #27
Il secondo triangolino giallo c'è perché non bisogna assegnare closedir() a una variabile. Quindi togli "$handle=".
Poi sicuro che in paginaris hai la sessione aperta? Non ti vede la $_SESSION['nome']..fai delle prove e stampala a video o controlla il contenuto con un var_dump().
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #28
Ciao

Allora,

Per quanto riguarda la sessione, sono sicuro che è aperta perchè sennò non mi farebbe entrare o sbaglio ????

deboo corregere in questa maniera ??

da così:

PHP:
$handle = closedir($directory);

A così:

PHP:
closedir($directory);

Ho o detto na cavolata ???? Il primo triangolino è ito. Correzione effettuata corretamenter. grazie.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #29
Si ti permette l'accesso ma non si sa che succede, almeno non lo so io visto che non hai pubblicato il contenuto di paginaris.
Il var dump fallo subito dopo questo:
PHP:
require_once("paginaris.php");
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #30
Ciao

Ti posto la paginaris, in tanto metto anche il var_dum dove mi hai consigliato.

PHP:
link rel="stylesheet" type="text/css" href="coloredisfondo.css">
 
    <?php

    require_once("connetti.php");
    session_start();
if(isset($_COOKIE["ultimoaccesso"])) {
    $valore_cookie = date("d/m/Y - H:i:s");
    setcookie ("ultimoaccesso", $valore_cookie, time() + 365 *24*3600);
    $ultimo_cookie = $_COOKIE["ultimoaccesso"];
    $me= "Il tuo ultimo accesso è stato il:  $ultimo_cookie";
} else {
    $valore_cookie = date("d/m/Y - H:i:s");
    setcookie ("ultimoaccesso", $valore_cookie, time() + 365 *24*3600);
    $me= "Non ti sei mai collegato a questa pagina";
}


if(isset($_SESSION['nome'])) {

$array = mysql_query("SELECT * FROM utenti WHERE id=" . $_SESSION['id']);  

$array=mysql_fetch_array($array);  
    
$array =  strtoupper($_SESSION['nome'] );     
// if(isset($_SESSION['nome']))  {   

    echo "<div class=\"messaggio\"><h1>";

    
echo "BENVENUTO ".$array."<br />";
    
    echo $me;

      echo "</div> </h1>";

}else{
    header("Location:failed.php");      
    exit();   
 
//}

}
 ?> 
 
<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>benvenuto</title>

<body>
 
    
<center> <br> <br> <br>

 
 <input type="button" onClick="location.href='index.php';" style='padding:5px' value="Modifica" />
 <input type="button" onClick="location.href='logout.php';" style='padding:5px' value="Cancella" />
 <input type="button" onClick="location.href='logout.php';" style='padding:5px' value="Salva" />
 <input type="button" onClick="location.href='logout.php';" style='padding:5px' value="Logout" /> 
 
   
</center>
 </body>
</html>


Questo è il risultato del var_dump messo sulla paginaris.php --> va_dump($SESSION);

Risultato:

PHP:
array(2) { ["id"]=> &string(1) "1" ["nome"]=> &string(5) "fabio" }
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #31
Ciao

Qui ti inserisco un'immagine di quello che accade. Ho messo un var_dump anche sul file: insert_immages.php

E questo è il risultato.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #32
Ok quindi abbiamo capito che per qualche strano motivo $_SESSION['nome'] è diventato un array contenente alla chiave 0 il nome. Vedi dove viene modificato.
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 13 Nov 2012
  • #33
ciao

Ciao,

Facile che siano tutti quei richiami che ho fatto. Parlo di require ecc. Come se ad ogni azione ci sia un refresh. Hoo notato che a ogni click, si aggiornava l'orario dell'ultimo accesso avvenuto. Volevo saper una cosa, é possibile unire il tutto in una pagina sola o é na stronzata ????
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 13 Nov 2012
  • #34
Si teoricamente è possibile..ma la pagina connetti.php la lascerei a parte.
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 14 Nov 2012
  • #35
Ciao Longo, buongiorno,


Scusami se non ti ho risposto subito, ma ad una certa ora psengo il pc. Si infatti tranne connetti, perchè è il richiamo della connessione al db. Senti mi puoi dare una mano ad unificare il tutto ??? Perchè io c'ho provato, ma con risultati negativissimi. E la soluzione che avevo trovato, ho notato che praticamente la pagina ri riaggiornava come se fosse ricaricata di continuo. Forse lo sbaglio è proprio perchè richiamo sempre la pagina connetti.php ??? Oppure quella è giusta ??? Boh ???
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 14 Nov 2012
  • #36
Molte volte non conviene unire tutto. Bisogna vedere se in questo caso conviene. Cosa fanno le pagine che vorresti unire? E quali sono i nomi?
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 14 Nov 2012
  • #37
Ciao

Ciao Longo,

Scusami, ma mi osno liberato solo ora dalla cucina. Ho dovuto preparare il pranzo. Allorro i file si chiamano:

1) paginaris.php

2) index.php (che richiama la funzione di visualizzazione immagine e la sua memorizzazione nel db)

3) insert_immages (richiama la funzione per l'upload immagine quindi con tasto sfoglia e carica)

Sono queste le pagine che vorrei unire. Ovviamente se conviene. Perchè pensavo che se unissi le pagine forse non mi darebbe più quell'errore. E poi non dovrei m,ettere a tutte le pagine il richiamo "if(isset($_SESSION['nome'])) {" Tu che ne pensi ???
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 14 Nov 2012
  • #38
Cioè nella index tu ricevi l'immagine e salvi l'indirizzo nel db?
Di solito io non consiglio unire le pagine di caricamento e quella che riceve ciò che è stato caricato per inserirlo nel db.
La paginaris che fa?
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 14 Nov 2012
  • #39
Ciao

Si, confermo, la index ti da la possibilità di sfogliare la cartella, poi selezionare l'immagine che vuoi e dopo di che la carichi. Una volta caricata l'immagine, viene salvata il link nel db. La paginaris.php in pratica è una pagina riservata, che si applica o meglio che entra in funzione quando l'utente è loggato. Se non sei loggato o provi a digitare sulla barra degli indirizzi del browser, vieni automaticamente mandato in una pagina chiamata failed.php, che ti genera un errore. Inoltre, stavo sperimentando una query per il richiamo delle immagini ed è la seguente:

PHP:
//Inizio select per vedere l'immagine propria

$sql="select immagine from immagine where id=".$_GET['id'];
$result=mysql_query($sql);
$riga=mysql_fetch_row($result);
$filename=basename($riga[0]);
print "<img src='immagini/".$filename."'><br>".$filename;

Questa query funziona, l'ho inserita nella paginaris in fondo verso la fine, però se entro come utente2 vedo ugualmente la stessa immagine dell'utente. Rettifico, c'erano solo le immagini dell'utente (ossia di paperinik) ecco perchè vedevo sempre le stesse immagini ihiihihii che rinco che so.
 
Ultima modifica: 14 Nov 2012
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 14 Nov 2012
  • #40
Ciao

Scusate,

Stavo cercando di modificare l'immagine iniziale di un avatar, volevo sapere se questo tipo di script poteva andare bene e se c'è qualche correzione da fare:

PHP:
  $foto = $_GET['foto'];
echo "<h1> Modifica immagine in corso $foto ... </h1>";

//$qry="UPDATE utenti  SET attivo='1' WHERE email='"$email'"';

$insert_query = "UPDATE immagine SET immagine ='immagine' WHERE id='$id'";


if (mysql_query($insert_query)) {
    echo "... Immagine modificata correttamente";
    header("Refresh: 3;URL=paginaris.php.php"); 
    
   // header("Refresh: 3;URL=login.php"); 
    header("Refresh: 3;URL=login.php"); 
} else {
    echo "Errore: immagine non modificata correttamente";
}
	
}


Sopratutto questa query qua,m, che non mi convince molto:

PHP:
$insert_query = "UPDATE immagine SET immagine ='immagine' WHERE id='$id'";


Spero di ricevere come al solito un'aiutone. Grazie anche a Longo.
 
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

inserire immagine di sfondo in canvas
  • gara1
  • 24 Gen 2023
  • Javascript
Risposte
0
Visite
2K
Javascript 24 Gen 2023
gara1
B
INSERIRE DATI CON IMMAGINE DA FORM IN MYSQL
  • blasco46
  • 6 Dic 2016
  • MySQL
Risposte
7
Visite
5K
MySQL 7 Dic 2016
Eduadie
E
A
Inserire testo dinamico su immagine centrato e a capo
  • Alberto.b
  • 4 Mag 2015
  • PHP
Risposte
1
Visite
2K
PHP 11 Mag 2015
filomeni
A
Inserire testo dinamico su immagine centrato e a capo
  • Alberto.b
  • 4 Mag 2015
  • PHP
Risposte
0
Visite
1K
PHP 4 Mag 2015
Alberto.b
A
M
Inserire automaticamente il nome di un'immagine in una variabile di tipo stringa
  • marcellino247
  • 4 Mag 2015
  • Sviluppo app per Android
Risposte
1
Visite
2K
Sviluppo app per Android 5 Mag 2015
michelep
L
Inserire Script Jquery in immagine html con zone cliccabili
  • libero4ever
  • 30 Mar 2015
  • jQuery
Risposte
1
Visite
2K
jQuery 31 Mar 2015
libero4ever
L
M
Form - inserire titolo, descrizione ed IMMAGINE
  • Marco Bonanno
  • 5 Mar 2015
  • PHP
Risposte
2
Visite
2K
PHP 7 Mar 2015
Marco Bonanno
M
M
Inserire votazione sotto ciascuna immagine
  • mandroid
  • 10 Apr 2014
  • PHP
Risposte
9
Visite
2K
PHP 22 Apr 2014
mandroid
M
[Joomla 1.5.26] Inserire un'immagine in un articolo
  • felino
  • 4 Mar 2014
  • Joomla
Risposte
1
Visite
1K
Joomla 5 Mar 2014
felino
E
Inserire Immagine all'avvio dell'App
  • elcapron
  • 11 Lug 2013
  • Sviluppo app per Android
Risposte
0
Visite
2K
Sviluppo app per Android 11 Lug 2013
elcapron
E
G
Inserire un immagine di sfondo con un disegno base
  • Giovannino60
  • 17 Feb 2013
  • Photoshop
Risposte
1
Visite
2K
Photoshop 19 Feb 2013
andre9004
S
upload immagine multiple da inserire
  • searedone
  • 11 Ago 2011
  • PHP
Risposte
8
Visite
2K
PHP 12 Ago 2011
searedone
S
G
inserire watermark su immagine in upload
  • giorda86
  • 29 Dic 2010
  • PHP
Risposte
2
Visite
2K
PHP 29 Dic 2010
giorda86
G
T
inserire un fotogramma/immagine prima che il video parte
  • temand
  • 24 Apr 2010
  • Flash
Risposte
0
Visite
2K
Flash 24 Apr 2010
temand
T
N
Prendere immagine da web e inserire su proprio sito
  • natasha.miglia
  • 5 Apr 2010
  • PHP
Risposte
2
Visite
1K
PHP 7 Apr 2010
MarcoGrazia
L
Inserire un immagine e allegare un file con CDO
  • leftist73
  • 20 Gen 2010
  • Classic ASP
Risposte
1
Visite
3K
Classic ASP 20 Gen 2010
Majinbu
M
inserire immagine nell'editor tinymce
  • SolidSnake4
  • 16 Dic 2009
  • Javascript
Risposte
0
Visite
2K
Javascript 16 Dic 2009
SolidSnake4
I
inserire immagine di fondo
  • intimoviro
  • 5 Nov 2009
  • HTML e CSS
Risposte
9
Visite
2K
HTML e CSS 5 Nov 2009
borgo italia
M
[ASP.NET/C#]Inserire percorso immagine in un database access
  • MaNDraKe32
  • 16 Ott 2009
  • ASP.NET
Risposte
1
Visite
4K
ASP.NET 26 Ott 2009
Vins
V
I
inserire testo su immagine
  • intimoviro
  • 11 Set 2009
  • HTML e CSS
Risposte
7
Visite
9K
HTML e CSS 13 Set 2009
lukeonweb
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?