2010-04-06 6 views
0

Pourquoi est-ce que ceci n'imprimera pas "succès" lorsque je soumettrai le formulaire? Je suis assez sûr que ça devrait.Pourquoi ce simple code ne fonctionnera-t-il pas tout à coup?

<?php 
    if (count($_POST) > 0) { 
     echo "success!!"; 
    } 
?> 

<form method="post" enctype="multipart/form-data"> 
    <input type="file" name="userfile" /> 
    <input type="submit" value="upload" /> 
</form> 
+0

S'il vous plaît demander une question plus informative. – Alxandr

Répondre

6

Lors d'une estimation, le champ Submit n'a pas de nom, donc il ne sera pas inclus dans $_POST. Le téléchargement de votre fichier sera placé dans $_FILES, voir Handling file uploads.

3

Il est également recommandé de ne PAS valider l'attribut action.

Si vous souhaitez que le formulaire de se soumettre à lui-même, essayez

<form method="post" action="?" enctype="multipart/form-data"> 

ou

<form method="post" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']); ?>" enctype="multipart/form-data"> 

Further reading on second methodAvertissement: Lien vers mon propre blog

+0

Pourquoi est-ce un avertissement? Vous n'êtes pas sûr du contenu de votre blog? – soulmerge

+0

Juste pour que les gens sachent que le lien est sur mon propre blog, donc je suis biaisé en le liant: P – alex

0
<?php 
    if (count($_POST['submit']) > 0) { 
     echo "success!!"; 
    } 
?> 

<form method="post" enctype="multipart/form-data" action=""> 
    <input type="file" name="userfile" /> 
    <input type="submit" value="upload" name="submit"/> 
</form> 
+0

Que diriez-vous de 'if ($ _POST ['submit'] == 'upload')' – rjh

+0

if ($ _POST ['submit']) { – veb

Questions connexes