Form caricamento immagine

searedone

Utente Attivo
11 Giu 2010
508
0
0
MHHHHHHH

help non capisco perché non funziona, è iun semplice caricamento di una immagine posto il codice

form
PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"  method="post" enctype="multipart/form-data"> 
  <input type="hidden" value="800000" name="MAX_FILE_SIZE" />
   
 
 <input type="file" name="file_inviato"> 
 <input type="image" src="immagini/salva.gif"  value='salva'>
</form>
PHP:
<?php 

require ('dbc.php');

 $user_uid = $_POST['user_uid'];  
  $nome_file_temporaneo = $_FILES['file_inviato']['tmp_name'];
	$nome_file_vero = $_FILES['file_inviato']['name'];
	$tipo_file = $_FILES['file_inviato']['type'];
	$dati_file = file_get_contents($nome_file_temporaneo);
	$dati_file = addslashes($dati_file);
	

  $sql = "INSERT  INTO users SET
  
  nome_file = '$nome_file_vero', 
				tipo_file = '$tipo_file', 
				dati_file = '$dati_file'
				 
			 user_id=".$_SESSION['user_id']."";	
				 
 
  
  ?>

db:

campo uid , username, ecc ecc, nome_file varchar 255 tipo_file varcar 255 dati_file longblob
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
prima alcune cose:
1. è importante dare il name al submit (vedi 2)
2. mi sembra dall'action del form che il form che la parte php siano nella stessa pagina, quindi il codice che processa il form dovrebbe essere racchiuso tra

PHP:
if(isset($_POST['name_del_submit']){
	//il codice
}
3. da dove vengono?
$user_uid = $_POST['user_uid'];
$_SESSION['user_id']
??
nel form non c'è un campo chiamato user_uid
non vedo l'istruzione session_start(), visto che stai usando una sessione
 

searedone

Utente Attivo
11 Giu 2010
508
0
0
La sessione SESSION START è all'inizio della pagina,
per comodità non ho postato tutto ...

ora pero' ho un dubbio :(

La tabella users è già attiva quindi forse per aggiungere l'immagine all'users non devo usare una insert ma un UPDATE

sto provando così ma mi succede una cosa strana:

se tolgo il WHERE mi carica la foto ma ovviamente a tutti gli users, se metto il WHERE non mi posta nulla ??? mi sapresti dire perché ???

posto il codice

PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"  method="post" enctype="multipart/form-data"> 
  <input type="hidden" value="800000" name="MAX_FILE_SIZE" />
   
 
 <input type="file" name="file_inviato"> 
 <input type="image" src="immagini/salva.gif"  value='salva'>
</form>


<?php 

require ('db_connect.php');

if(isset($_POST['user_uid']));
//I dettagli della categoria sono stati aggiornati
$user_uid = $_POST['user_uid'];
	$nome_file_vero = $_FILES['file_inviato']['name'];
	$tipo_file = $_FILES['file_inviato']['type'];
	$dati_file = file_get_contents($nome_file_temporaneo);
	$dati_file = addslashes($dati_file);
	$nome_file_temporaneo = $_FILES['file_inviato']['tmp_name'];

$sql = "UPDATE users SET nome_file_vero='$nome_file_vero', tipo_file='$tipo_file', dati_file='$dati_file' WHERE uid='$uid' ";
if(@mysql_query($sql)) {
	
	echo '<p>category details updated.</p>';
	
}else{
	echo '<p>Error Updating category details: ' . mysql_error() . '</p>';
}

?>

Premetto che la tabella users il campo id è uid, il campo SESSION start è ad inzio pagina ..... :(
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
cosa vuoi dire con tabella attiva? se il record non esiste devi usare l'insert, se il record già esiste e vuoi modificarlo devi usare l'update (es aggiungere la foto se prima non c'era)
poi, sarò orbo, ma non vedo da dove salta fuori $_POST['user_uid'], e che cosa centra col submit
per caso non intendevi
<input type="image" src="immagini/salva.gif" value='salva'>
mettere il pulsante di submit
<button type="submit" src="immagini/salva.gif" nane="invia" value='salva'>
anche perchè se non ti piace il classico pulsante prova a guardare quest'articolo
http://blog.mrwebmaster.it/2010/03/26/abbelliamo-orrendo-pulsante-submit-reset.html
(e correlati)

in tal caso l'i(isset diventa

PHP:
if(isset($_POST['invia']){
//....
}

p.s.
session_start();
non è un campo, ma un'istruzione php
 

searedone

Utente Attivo
11 Giu 2010
508
0
0
Si scusa hai ragione.

Ho risolto proprio adesso così, ti posto il codice così se serve a qualcuno sa come fare.

PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"  method="post" enctype="multipart/form-data"> 
  <input type="hidden" value="800000" name="MAX_FILE_SIZE" />
   
 
 <input type="file" name="file_inviato"> 

 <input  type="submit" name="update"  value="Update">
</form>


<?php echo $_SESSION['user_uid'];

require ('db_connect.php');

if(isset($_POST['update']));
//I dettagli della categoria sono stati aggiornati
$user_uid = $_POST['uid'];
$nome_file_temporaneo = $_FILES['file_inviato']['tmp_name'];
	$nome_file_vero = $_FILES['file_inviato']['name'];
	$tipo_file = $_FILES['file_inviato']['type'];
	$dati_file = file_get_contents($nome_file_temporaneo);
	$dati_file = addslashes($dati_file);
	

$sql = "UPDATE users SET nome_file_vero='$nome_file_vero', tipo_file='$tipo_file', dati_file='$dati_file' WHERE uid=".$_SESSION['user_uid']." ";
if(@mysql_query($sql)) {
	
	echo '<p>category details updated.</p>';
	
}else{
	echo '<p>Error Updating category details: ' . mysql_error() . '</p>';
}

?>

Ho dovuto aggiungere questo nel WHERE per farlo funzionare WHERE uid=".$_SESSION['user_uid']."
 
Discussioni simili
Autore Titolo Forum Risposte Data
J Javascript Form Caricamento Immagine Javascript 2
heisngberg caricamento form HTML HTML e CSS 13
S Form PHP: Messaggio di conferma che compare al caricamento della pagina PHP 11
A Caricamento foto in db da form Classic ASP 22
L Problemi form Pagina php HTML e CSS 2
Cosina Creare bottone delete in form upload PHP 4
Cosina Creare bottone delete in form upload PHP 1
D Devo far funzionare un form di contatti PHP 4
B form gestione input PHP 2
V PHP form intersecate PHP 0
8 Javascript - PDF Form Javascript 0
J Form inserimento dati in database Ajax 1
E Gestione profilo utente tramite Form PHP 3
R [C#] Form principale si blocca mentre un altro Thread lavora .NET Framework 0
M Problema con controllo form in real time jQuery 6
D Form validazione Javascript 2
R form recovery pass PHP 0
V Symfony e i form PHP 3
M form con checkbox PHP 8
S come aggiustare un form di contatto? HTML e CSS 3
F query e form con select multipla PHP 17
AC1 Form in finestra modale PHP 1
MarcoGrazia Verifica di una stringa o di un nome proveniente da form Snippet PHP 0
A Inserimento dati nel database tramite form + altre operazioni PHP 18
websilvia Contact form using Bootstrap 3.3.4 PHP 8
Alex_70 Button non funziona nella form PHP 2
C Form email php su pagina index.html? PHP 21
W Rinominare Documenti Con Form Asp Classic ASP 9
S Invio email da form PHP 8
L form multipla php sql,errore in inserimento MySQL 0
L inviare i dati di un form ad un database PHP 6
L Collegare un form html ad un database access Javascript 2
L creare oggetti da una classe tramite un form Javascript 0
G Impostare suggerimenti campo text di un form Javascript 2
S Problemi di visualizzazione form contatti sito web HTML e CSS 2
L Insert php sql da una form multipla PHP 6
E form PHP 10
W Form da CDONTS a CDOSYS Classic ASP 7
P Problema concantenazione form Javascript 3
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
G Form in php WordPress 0
K La pagina index, si apre sul form e non al top page Javascript 0
A Aprire la window form Add Connection da codice Visual Basic 4
F [PHP] Form html PHP 2
G FORM HTML E PHP PHP 0
max1974 [HTML] Columns grid on modal form HTML e CSS 0
S [PHP] Recupero nome immagine da Form con input file PHP 3
U PHP bottone per invio mail o ritorno al form PHP 15
O [PHP] inviare dati da form e script ajax PHP 0
A [ASP] Confronto tra dati Form e DB Classic ASP 2

Discussioni simili