Newsgroup: it.comp.www.php
Titolo: problema $_POST da form

Vi posto il seguente codice suggeritomi in un precedente post sul news, non
capisco perchè non funziona.
Scusate la sicura banalità.
<?php
$count = count($_POST['upload']);
for ($i = 0; $i < $count; $i++){
print 'count'.$i;
}
?>
<form action="canc.php" enctype="multipart/form-data" method="post">
<table width="100%"  border="0">
  <tr>
    <td>Foto1: </td>
    <td><input type="file" name="upload[]" /></td>
  </tr>
  <tr>
    <td>Foto2: </td>
    <td><input type="file" name="upload[]" /></td>
  </tr>
  <tr>
    <td>Foto3: </td>
    <td><input type="file" name="upload[]" /></td>
  </tr>
</table>
<p>
 <input type="hidden" name="MAX_FILE_SIZE" value="51200" />
 <input type="hidden" name="tabella" value="ins" />
 <input name="" type="submit" value="Conferma" />
    <input name="submit" type="reset" value="Reimposta" />
</p>
</form>

"Cristian" <nonesiste@cc-it..com> ha scritto nel messaggio
news:ce1cqe$g03$1...@newsreader.mailgate.org...

usa al posto di _POST _FILE


Forse intendevi $_FILES...giusto?
Comunque avevo già provato e come risultato di $count mi dava 5.
Altra cosa io vorrei dare la possibilità di inserire da 1 a 3 foto lasciando
tale lo script per questo volevo contare quanti campi upload erano stati
riempiti e poi eseguire la query.
..spero di essermi spiegato bene.

Nessuno sa proprio come risolvere? Scusate ma non riesco proprio a capire.

 capire.
<form method="post" enctype="multipart/form-data" action="<?php print
($_SERVER['PHP_SELF']); ?>">
<input type="file" name="immagine[]" /><br />
<input type="file" name="immagine[]" /><br />
<input type="file" name="immagine[]" /><br />
<input type="submit" />
</form>
<pre>
<?php 
if (isset ($_FILES['immagine'])) {
	print_r ($_FILES['immagine']);
}
?>
</pre>
Capito?
-- 
I am what I am, I do what I can
L'uomo, conscio di sbagliare, persevera.

Il mio problema comunque rimane, perchè $count è = a 5 e non al numero dei
file che invio?
<?php
$count = count($_FILES['upload']);
print $count;
}
Mi pare fosse questo quello che avevo chiesto subito, forse Setec mi sono
spiegato male ma è anche vero che a volte rispondi in un tono che non è
molto piacevole. Io come molti sono all'inizio, tu sei anche bravo però non
ti da il diritto di dare risposte del genere. Magari stavolta non hai usato
un tono spiacevole ma a me quel "capito?" non è piaciuto, perchè penso che
una persona anche se meno brava va comunque rispettata. Cosa che in qualche
tuo post non sempre vedo.
Io dico le cose senza offendere nessuno, e tantomeno lo devi fare tu, non è
mia intenzione generare discussioni inutili al newsgroup però penso sia
giusto dire, sempre con educazione, ciò che si pensa per riflettere a fare
riflettere.
Ringrazio comunque per le tue risposte a nome di tutto il news, dalle quali
c'è sempre da imparare.

 numero dei file che invio?
Hai eseguito il codice postato? Ne hai letto il risultato? Il motivo di
count ($_FILES['immagine']) == 5 e' evidente.


 count ($_FILES['immagine']) == 5 e' evidente.
L'unico motivo a cui posso collegare il numero 5 è l'array di 5 valori.
Ho provato quindi a scrivere:
<?php
$count = count($_FILES['upload']['tmp_name']);
print $count;
}
Mi da risulatato 3 anche se non faccio nessun upload, io vorrei vedere
quante immagini ha inviato l'utente da 0 a 3 ed in base alle immagini
eseguire il ridimensionamento con le librerie gd (questo l'ho già fatto con
una foto), rinominare le foto e poi eseguire una query per memorizzare il
nome delle foto nel db.

 io vorrei vedere quante immagini ha inviato l'utente da 0 a 3 
Versione senza troppe paranoie.
<form method="post" enctype="multipart/form-data" action="<?php print
($_SERVER['PHP_SELF']); ?>">
<input type="file" name="immagine[]" /><br />
<input type="file" name="immagine[]" /><br />
<input type="file" name="immagine[]" /><br />
<input type="submit" />
</form>
<pre>
<?php 
if (isset ($_FILES['immagine'])) {
	$count = count ($_FILES['immagine']['name']);
	for ($i = 0; $i < $count; $i++) {
		if ($_FILES['immagine']['error'][$i] == 0) {
			print ('Uploaded ' . $_FILES['immagine']['name'][$i] . 
				 ' (size ' . $_FILES['immagine']['size'][$i] . ', ' . 
				 'type ' . $_FILES['immagine']['type'][$i] . ')' . "\r\n");
		}
	}
}
?>
</pre>


> Versione senza troppe paranoie.
Grazie, ora ho capito cosa volevi dire.
Ho anche scoperto: $_FILES['immagine']['error'][$i] == 0, non lo sapevo.