begin process at 2012 05 31 13:37:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

question upload


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

question upload

mercredi 23 août 2006 à 12:45:18 | question upload

romu58

Bonjour à tous,

Débutant en PHP ,j'ai un scxcript upload pour mon forum mais le soucis j'arrive pas a avoir le lien de téléchargement apres voici le script en question :
[quote]
<?php

/* loading language file */
function get_translations($lngfile) {

  if (file_exists($lngfile)) {
    $lines = file($lngfile);
    while (list(,$line) = each($lines)) {
      list($key,$val)= explode("=",$line);
          $phrases[$key] = $val;
    }
    return $phrases;
  } else {
    return false;
  }
}
/* translate a string */
function translate($str,$vals="") {

  global $phrases;

  if ($phrases) {
    $p_str = $phrases[$str];
        if ($p_str == "") {
          $p_str = $str;
        }
  } else {
    $p_str = $str;
  }

  if (gettype($vals)=="array") {
    $p_str = sprintf($p_str,$vals[0],$vals[1],$vals[2],$vals[3],$vals[4],$vals[5],$vals[6]);
  }

  return (trim($p_str));
}

$my_max_file_size         = "102400"; # in bytes
$image_max_width        = "800";
$image_max_height        = "800";
$the_path                        = "image/";

$registered_types = array(
                                        "application/x-gzip-compressed"         => ".tar.gz, .tgz",
                                        "application/x-zip-compressed"          => ".zip",
                                        "application/x-tar"                     => ".tar",
                                        "text/plain"                            => ".html, .php, .txt, .inc (etc)",
                                        "image/bmp"                             => ".bmp, .ico",
                                        "image/gif"                             => ".gif",
                                        "image/pjpeg"                           => ".jpg, .jpeg",
                                        "image/jpeg"                            => ".jpg, .jpeg",
                                        "application/x-shockwave-flash"         => ".swf",
                                        "application/msword"                    => ".doc",
                                        "application/vnd.ms-excel"              => ".xls",
                                        "application/octet-stream"              => ".exe, .fla (etc)"
                                        );

$allowed_types = array("image/bmp","image/gif","image/pjpeg","image/jpeg");

# --

function form($error=false) {

global $PHP_SELF,$my_max_file_size,$lng;

        if ($error) print $error . "<br><br>";

        print "\n<form ENCTYPE=\"multipart/form-data\"  action=\"upload.php3\" method=\"post\">";
        print "\n<INPUT TYPE=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"" . $my_max_file_size . "\">";
        print "\n<INPUT TYPE=\"hidden\" name=\"task\" value=\"upload\">";
        print "\n<P>".translate("Upload images")."";
        print "\n<BR>NOTE: ".translate("Max file size is")." " . ($my_max_file_size / 1024) . "KB";
         print "\n<br><INPUT NAME=\"the_file\" TYPE=\"file\" SIZE=\"35\"><br>";
        print "\n<input type=\"submit\" Value=\"Upload\">";
        print "\n</form>";

} # END form

# --

if (!ereg("^4",phpversion())) {
        function in_array($needle,$haystack) { # we have this function in PHP4, so for you PHP3 people
                for ($i=0; $i < count($haystack); $i++) {
                        if ($haystack[$i] == $needle) {
                                return true;
                        }
                }
        }
}

# --

function validate_upload($the_file) {

global $my_max_file_size, $image_max_width, $image_max_height,$allowed_types,$the_file_type,$registered_types;

        $start_error = "\n<b>Error:</b>\n<ul>";

        if ($the_file == "none") { # do we even have a file?

                $error .= "\n<li>You did not upload anything!</li>";

        } else { # check if we are allowed to upload this file_type

                if (!in_array($the_file_type,$allowed_types)) {
                        $error .= "\n<li>The file that you uploaded was of a type that is not allowed, you are only
                                                allowed to upload files of the type:\n<ul>";
                        while ($type = current($allowed_types)) {
                                $error .= "\n<li>" . $registered_types[$type] . " (" . $type . ")</li>";
                                next($allowed_types);
                        }
                        $error .= "\n</ul>";
                }

                if (ereg("image",$the_file_type) && (in_array($the_file_type,$allowed_types))) {

                        $size = GetImageSize($the_file);
                        list($foo,$width,$bar,$height) = explode("\"",$size[3]);

                        if ($width > $image_max_width) {
                                $error .= "\n<li>Your image should be no wider than " . $image_max_width . " Pixels</li>";
                        }

                        if ($height > $image_max_height) {
                                $error .= "\n<li>Your image should be no higher than " . $image_max_height . " Pixels</li>";
                        }

                }

                if ($error) {
                        $error = $start_error . $error . "\n</ul>";
                        return $error;
                } else {
                        return false;
                }
        }
} # END validate_upload

# --


function list_files() {

global $the_path;

        $handle = dir($the_path);
        print "\n<b>Uploaded files:</b><br>";
        while ($file = $handle->read()) {
                if (($file != ".") && ($file != "..")) {
                        print "\n" . $file . "<br>";
           }
        }
        print "<hr>";
}

# --

function upload($the_file) {

global $the_path,$the_file_name;

        $error = validate_upload($the_file);
        if ($error) {
                form($error);
        } else { # cool, we can continue
                if (!@copy($the_file, $the_path . "/" . $the_file_name)) {
                        form("\n<b>Something barfed, check the path to and the permissions for the upload directory</b>");
                } else {
                        list_files();
                        form();
                }
        }
} # END upload

# --

############ Start page

print "<html>\n<head>\n<title>Upload example</title>\n</head>\n<body>";
echo("<table width=\"0%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">
  <tr align=\"left\">
    <td><font face=verdana size=2>");
switch($task) {
        case 'upload':
                upload($the_file);
        break;
        default:
                form();
}
echo("</font></td>
  </tr>
</table>");
print "\n</body>\n</html>";

?>
[/quote]

je dérerai implanter la fonction suivante pour recuperer le lien :
[quote]
{
if(move_uploaded_file($_FILES['fichier']['tmp_name'],$directory.$nom_du_fichier.$ext)) {
$filename = $nom_du_fichier.$ext;
exit("Envoi du fichier effectué avec succès. <br /> Adresse du fichier: <input type='text' value='http://winmxtools.keo.in//fichier/$filename' />");
}
[/quote]
Mais je sais pas ou l inclure exactement.

Merci de votre aide
romu58
mercredi 23 août 2006 à 13:01:55 | Re : question upload

malalam

Administrateur CodeS-SourceS

Hello,

burk, trop long à lire.
Voici un exemple tiré d'un petit script à moi (j'ai enlevé la partie traitement de fichiers):

<?php
$bDone = false;
if (isset ($_POST['valid']) && $_POST['valid'] === 'Soumettre') {
 $fromDir = 'from';
 $toDir = 'to';
 if (!file_exists ($fromDir)) {
  mkdir ($fromDir, 0755);
 }
 if (!file_exists ($toDir)) {
  mkdir ($toDir, 0755);
 }
 if (isset ($_FILES['fichier']) && empty ($_FILES['fichier']['error'])) {
  @move_uploaded_file ($_FILES['fichier']['tmp_name'], $fromDir.'/'.basename ($_FILES['fichier']['name']));
  // traitement sur le fichier ici
  // bla bla, puis écriture du fichier modifié dans un autre répertoire :
  $fp = fopen ($toDir.'/'.basename ($_FILES['fichier']['name']), 'w+');
  fwrite ($fp, $sString);
  fclose ($fp);
  $bDone = true;
 }
}
?>
<?xml version="1.0" encoding="ISO 8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " [ Lien ]">
<html xmlns=" [ Lien ]" xml:lang="fr" lang="fr">
 <head>
 <link rel="stylesheet" type="text/css" href="css/main.css" />
 <meta http-equiv="Content-Type" content="text/html; charset=ISO 8859-1" />
 </head>
 <body>
  <form method="post" enctype="multipart/form-data" action="">
  <fieldset>
   <legend>Parser SMS CELLCAST</legend>
   <p style="display: none;">
    <input type="hidden" name="MAX_FILE_SIZE" value="300000" />^
   <p/>
   <p>
    <label for="idFichier">Fichier &agrave; modifier</label>
    <input type="file" name="fichier" id="idFichier" />
    <input type="submit" name="valid" value="Soumettre" />
   </p>
  </fieldset>
  </form>
  <div id="fichier"><span>Fichier modifié :</span><br /><br />
  <?php if (true === $bDone) : ?>
   <a href="<?php echo $toDir.'/'.basename ($_FILES['fichier']['name']); ?>" title="Télécharger"><?php echo basename ($_FILES['fichier']['name']); ?></a>
  <?php endif; ?>
  </div>
 </body>
</html>

mercredi 23 août 2006 à 22:10:17 | Re : question upload

romu58

merci

Je test et vous je vous dit mais merci encore pour votre aide

romu58


Cette discussion est classée dans : file, upload, image, error, max


Répondre à ce message

Sujets en rapport avec ce message

Prob Upload d'image... [ par zzzzzz ] yepj'ai un formulaire qui envoie une image cela marche parfaitement. Mais dans la partie vérification (les conditions marchent parfaitement) l'image n Upload Image [ par piep14 ] Bonjour, je dois faire un upload d'une photo. J'ai donc fait ceci :      $date = date('Y/m/d H:i:S');   $file = $_FILES['userfile'];   $stock = 'photo Upload image [ par DonDiego32 ] Salut! J'ai un soucis avec un formulaire d'upload d'image. Je débute, et j'ai donc repris des tutoriaux pour débutants...mais là je coince! J'ai un c Upload d'image ==> Problème :s [ par robapt ] Bonjour à tous!J'ai un petit problème pour uploader un fichier (une image) ! Enfin c'est plutôt que je ne vois pas comment il faut faire ! En fait, le upload photos [ par doberman_420 ] Bonjour à tous,   J'ai un petit probléme pour uploader les photos de mes annonces sur l'hébergeur payant que j'utilise depuis une semaine j'utilisais Upload : File too big, error=1 [ par psyckan ] Bonjour,Voila j'ai un uploader de photo sur mon site.Et quand j'essai d'uploader une photo qui fait (2,3Mo), j'obtients un erreur égale à 1 qui corres upload image et redimention (changer nom du fichier enregistré) [ par mies07 ] Bonjour,Je n'y connais pas grand chose en PHP et j'ai récupéré un script pour uploader des images et les redimensionner. Ce script est très bien mais probleme de variables [ par inkydjango ] salut a tous j'ai un gros probleme sur une page upload ..en effet, jai repiquer un texte d'upload sur un serveur en local: celui marche tres bien, je modif script d'upload [ par foxprox ] bonjour j'utilise un script d'upload d'image qui intègre un système de recadragescript trouvé à cette adresse  voir <a href="http://www.webmotionuk.co upload [ par Homeros ] Bonjour, j'ai crée un upload des fichiers, le pbm et que je ne veux faire l'upload que pour les extensions suivant  (doc, pdf, rtf), est ce que vous p


Nos sponsors


Sondage...

Comparez les prix

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,546 sec (3)

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