begin process at 2012 05 31 18:36:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

UPLOAD à partir d'une page php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

UPLOAD à partir d'une page php

vendredi 29 février 2008 à 19:22:06 | UPLOAD à partir d'une page php

JV43

Bonsoir,
J'ai réussi des upload à partir de page html, mais cette fois-ci, le formulaire se trouve dans une page php.
Dans la page désignée par action j'obtiens bien dans $_FILES['image']['name'] le nom du fichier sélectionné
mais $_FILES['image']['tmp_name'] est vide et $_FILES['image']['size'] est == 0 (mais 'error' est OK
je montre :
page php appelante :
<form name="monform" enctype="multipart/form-data" method="post" action="verification.php" target="_self">
<input name="file" type="file">
<input type="submit" value="Vérifier et télécharger le fichier sur le serveur" >
<input type="reset" name="reset" value="Effacer">
</form>

dans verification.php (entre autre)
if (is_uploaded_file($_FILES['file']['tmp_name'])) {
        echo "fichier ".$_FILES['file']['name']."est téléchargé<br />";}
        else {echo "le fichier".$_FILES['file']['name'].". n'est pas téléchargé";}

eh ben on obtient le fichier toto.jpg n'est pas téléchargé
qq a t'il la solution ?
merci d'avance beaucoup
JV43


dimanche 2 mars 2008 à 22:15:20 | Re : UPLOAD à partir d'une page php

audayls

Réponse acceptée !
Salut,
Essaye ce fichier "verification.php" :
<?php
// On vérifie avec la fonction "isset" que le fichier envoyé existe.
// On vérifie avec la fonction "is_uploaded_file" que le fichier est bien un fichier "uploader".
// Si une de ses conditions est fausse on renvoie vers "formulaire.html".

if (!isset($_FILES['file']) OR !is_uploaded_file($_FILES['file']['tmp_name'])) header('Location: formulaire.html');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=iso-8859-15" />
        <title>Upload PHP</title>
    </head>
    <body>

        <p>
            <?php
                // La variable "$sDirUpload" contient l'adresse du dossier où le fichier va être envoyer.
                $sDirUpload = $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF']).'/';
               
                // La fonction "move_upload_file" permet d'envoyer le fichier "uploader" vers le dossier "$sDirUpload".
                // Si la fonction réussi on affiche "L'upload a réussi !".
                // Si la fonction échoue on affiche "L'upload a échoué.".

                if (move_uploaded_file($_FILES['file']['tmp_name'], $sDirUpload.$_FILES['file']['name'])) echo 'L\'upload a réussi !';
                else echo 'L\'upload a échoué.';

            ?>
        </p>
    </body>
</html>


For every choice, a consequence (Fable)
lundi 3 mars 2008 à 16:04:18 | Re : UPLOAD à partir d'une page php

nellsy

Tu peux toujours essayer quelque chose de ce type là si ca ne marche pas :

<?php

// Répertoire de stockage
$folder = "./dossier/";

// Taille maximum du fichier
$MAX_FILE_SIZE = 150000;

// Format autorisé dans l'upload de fichier
// Vérifier avec un $HTTP_POST_FILES['pFichier']['type'] le format utilisé par votre fichier
$allowed_types = array(
                        "application/octet-stream",
                        "application/pdf",
                        "image/bmp",
                        "image/gif",
                        "image/pjpeg",
                        "image/jpeg",
                        "image/jpg",
                        "multipart/x-zip",
                        "video/msvideo"
                        );


if(isset($_GET['action'])){
$action=$_GET['action'];
}else{
$action="check";
}

Switch ($action){
/*********************************************************************************
*
*    Sélection du fichier
*
*********************************************************************************/
    case "check":
        echo "<form enctype='multipart/form-data' action='upload.php?action=upload' method='post'>";
        echo "    Fichier à uploader :";
        echo "    <br />";
        echo "    <input type='file' value='' name='fichier'>";
        echo "    <input type='submit' value='Envoyer'>";
        echo "</form>";
    break;
/*********************************************************************************
*
*    Upload du fichier
*
*********************************************************************************/
    case "upload":
        // Variables récupérée par methode POST du formulaires
        $fname     =    $HTTP_POST_FILES['fichier']['name'];
        $ftype     =    $HTTP_POST_FILES['fichier']['type'];
        $fsize     =    $HTTP_POST_FILES['fichier']['size'];
        $ftmp     =    $HTTP_POST_FILES['fichier']['tmp_name'];

        // Divers test afin de savoir si :
        // Le format de fichier correspond à notre tableau array
        if(!in_array($ftype, $allowed_types)){$error = 1;}

        // La taille du fichier n'est pas dépassée
        if($fize > $MAX_FILE_SIZE){$error = 2;}

        // Le fichier n'existe pas déjà
        if(file_exists($folder.$fname)){$error = 3;}

        // Si tout est ok
        if(!$error)
        if(copy($ftmp,''.$folder.$fname.'') && !$error) {$error = 0;}

        // Gestion des erreurs
        switch($error){
            case'0':
                echo "Fichier correctement envoyé";
            break;
            case'1':
                echo "Format de fichier incorrect";
            break;
            case'2':
                echo "Fichier trop volumineux";
            break;
            case'3':
                echo "Fichier déjà existant dans ce répertoire";
            break;
        }
    break;   
}   
?>
lundi 3 mars 2008 à 18:02:57 | Re : UPLOAD à partir d'une page php

JV43

Bonsoir à vous deux,
merci de votre contribution c'est vraiment sympa
bon, voilà en cherchant sur php.net j'ai trouvé la signification des codes d'erreur concernant les $_FILES et en fait les fichiers que je testais dépassaient le max_files se trouvant dans le fichier .htaccess, tout simplement
mais vos conseils m'ont permis d'améliorer mon code et c'est bien chouette comme ça
Bien cordialement
JPP


Cette discussion est classée dans : fichier, page, php, name, files


Répondre à ce message

Sujets en rapport avec ce message

téléchargement de fichier de puis serveur [ par nouvinfo ] Bonjour, Je suis un novice. voici ce que je fais: J'ai crée un formulaire dans une page.php ('formulaire_entrer_donnee.php'). Ce formulaire permet d Comment afficher le contenu d'un fichier texte dans une page? [ par truckracing ] Bonjour. Je débute tout juste dans le PHP, et j'ai déjà un pb...Je suis en train de traduire mon site (www.coursesdecamions.com) en anglais, et j'ai d Un fichier texte pour plusieurs compteurs [ par bluejim ] blue_jim Ma question est la suivante :Est-il possible en Php de lire une ligne prédéfinie d'un fichier texte.J'explique :En partant du fait que la val Upload d'image par methode POST ... [ par psychoz ] J'en ai marre !Je cherche a envoyer une photo sur un site ...Je le faisait avec un client ftp, ensuite j'ai utilisé ftp et php ...Et maintenant je vou nom fichier php [ par Kevergeek ] voilà chui par exemple sur la page "test.php"je voudrais recuperer le nom de la page sans lextension ("test")si vous savez comment recup le nom avec l Redirection URL, include et header [ par finipe ] Bonjour à tous.Je débute en php, et j'ai créé un site en utilisant mes maigres connaissances du moment. Il est fait ainsi : une page navig.php dont le Rappatrier le code d une page vers un fichier en php [ par funbidule ] bonjour , par un systeme d affiliation , jenvoie une requete sur une page en php en passant des arguments et en retour cela me renvoir du texte mais c formulaire et hidden [ par xabivalencia ] bonjour,J ai un petit souci de code. Je vous explique d abord ce que j ai fait: Fichier 1 "formulaire_verif.php": Il permet a l utilisateur de rentrer recuperer l'url de la page a partir d'une autre page [ par db2p ] hellovoila j'ai une page php: index.phpen bas de cette page je mets un include genreinclude 'date_modif.php';le fichier 'date_modif.php' doit afficher pb d 'upload de fichier [ par trabice ] Bonjour,voila j'execute le script suivant :echo $_FILES['fichier_choisi']['name']."";echo $_FILES['fichier_choisi']['tmp_name']."";echo $_FILES['fichi


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales