Avatar billede krydset Nybegynder
06. december 2003 - 19:19 Der er 38 kommentarer og
3 løsninger

en der et uploadscript

Er der en der har et simpelt uploadscript og ligge de gerne vil dele. Det skal bare kunne uploade et billede til en mappe på en unix maskine.

Mvh. Krydset
Avatar billede googolplex Novice
06. december 2003 - 19:24 #1
Avatar billede rasm Nybegynder
06. december 2003 - 19:25 #2
Noget i den her retning??








<?php











$konfiguration["upload_bibliotek"] = "./upload";





$konfiguration["max_stoerrelse"] = "30";


list($major, $minor, $rev) = explode(".", phpversion());

if($major < 4) {

  die("Jeg kan kun arbejde med PHP 4.0.0 eller derover");

}





/**

* Udligner forskellene mellem 4.1.x og 4.0.x

* Bemaerk, at disse ikke er "superglobals"

*/

if($minor < 1) {

  $_FILES = $HTTP_POST_FILES;

  $_POST = $HTTP_POST_VARS;

  $_SERVER = $HTTP_SERVER_VARS;

}





if($_FILES["upfil"]["size"] > 0) {



  /**

  * Hvis der er en fil, saa uploader vi den.

  *

  * Foerst slaar vi lige fast, hvor filen skal flyttes fra og til.

  */



  $fra = $_FILES["upfil"]["tmp_name"];

  $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];



  /**

  *  Checker lige om filen er for stor til at vi vil acceptere den.

  *  Vi bruger ceil() i stedet for round(), saa vi ikke faar den skoere

  *  situation, at fejlmeldingen siger, at filen er for stor, men angiver

  *  samme stoerrelse for filen og den oevre graense.

  */

  $fil_stoerrelse = filesize($fra)/1024;

  if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {

      die("Desv&aelig;rre - filen er for stor. Jeg accepterer kun " .

          $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .

          ceil($fil_stoerrelse) . "kb");

  }

  if(function_exists("move_uploaded_file")) {

    move_uploaded_file($fra, $til);

  } else {

    copy($fra, $til);

  }



  header("Location: " . $_SERVER["PHP_SELF"]);

  exit;



} else {



  /**

  * Intet tegn paa upload, saa vi viser bare listen over filer

  * og HTML-formularen til nye uploads.

  */

  $indhold = listFiler($konfiguration["upload_bibliotek"]);

  $indhold .= bygFormular($_SERVER["PHP_SELF"]);

  $output = bygSide("hej", $indhold);



}





/**

* Skriver ud til browseren

*/

echo $output;

exit;







/**************************************************\

**              Hjaelpefunktioner              **

\**************************************************/



function bygSide($titel, $indhold) {



  /**

  * Pakker indholdet ind i lidt formalia

  */

  return '<html>

            <head><title>' . $titel . '</title></head>

            <body bgcolor="#ffffff">

              <div align="right"><a href="./">Tilbage til artiklen</a></div>

              ' . $indhold . '</body>

          </html>

        ';



}



function bygFormular($action) {



  $formular = '<form action="' . $action . '" method="post" enctype="multipart/form-data">

                <table border="1" cellpadding="5" cellspacing="0">

                  <tr>

                    <td align="right" bgcolor="#999999"><b>Fil til upload:</b></td>

                    <td bgcolor="#cccccc"><input type="file" name="upfil" /></td>

                  </tr>

                  <tr>

                    <td colspan="2" align="middle" bgcolor="#dddddd"><input type="submit" value="upload" /></td>

                  </tr>

                </table>

              </form>

              ';



  return "<h2>Upload fil:</h2>" . $formular;



}



function listFiler($bibliotek) {



  if($bib = @opendir($bibliotek)) {

    /**

    * Denne syntaks er forklaret i PHP-manualen:

    * http://www.php.net/manual/en/function.readdir.php

    */

    while (false !== ($fil = readdir($bib))) {

      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {

          $fil_liste[] = "<a href=\"$bibliotek/$fil\">$fil</a>";

      }

    }

    closedir($bib);



    if(is_array($fil_liste)) {

      $liste = "<li>" . join("</li><li>", $fil_liste) . "</li>";

    } else {

      $liste = "<li>Ingen filer p&aring; lager</li>";

    }

    return "<h2>Filer p&aring; lager:</h2><ul>" . $liste . "</ul>";

  } else {

    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);

  }



}



?>
Avatar billede krydset Nybegynder
06. december 2003 - 19:26 #3
Det har jeg prøvet??
Avatar billede rasm Nybegynder
06. december 2003 - 19:28 #4
Den er fra webcafe.dk
Avatar billede krydset Nybegynder
06. december 2003 - 19:31 #5
if(isset($_POST[vare_navn])) {
    $konfiguration["upload_bibliotek"] = "/pic";
    $konfiguration["max_stoerrelse"] = "10";
   
    /* Hvor flytter vi fra og til */
    $fra = $_FILES["upfil"]["tmp_name"];
    $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];

    /* Accepterer vi filens stoerrelse? */
    $fil_stoerrelse = filesize($fra)/1024;
    if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
        die("Desværre - filen er for stor. Jeg accepterer kun " .
        $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
        ceil($fil_stoerrelse, 1) . " kb");
}

/* Saa koerer vi */
if(function_exists("move_uploaded_file")) {
  move_uploaded_file($fra, $til);
} else {
  copy($fra, $til);
    mysql_query("INSERT INTO varer (vare_navn, vare_beskr, pris, kategori_id, pic_sti) VALUES ('$_POST[vare_navn]','$_POST[vare_beskr]','$_POST[pris]','$_POST[kategori]','$_FILES[name]')") or die(mysql_error());

}


}


Warning: stat failed for (errno=2 - No such file or directory) in /home/administrator/www/admin/index.php on line 780

linie 780 >>> $fil_stoerrelse = filesize($fra)/1024;
Avatar billede rasm Nybegynder
06. december 2003 - 19:32 #6
Ja?
Avatar billede krydset Nybegynder
06. december 2003 - 19:33 #7
Det er en fejl jeg f¨r nå jeg prøver at uploade sorry glemte at skrive det
Avatar billede rasm Nybegynder
06. december 2003 - 19:34 #8
Avatar billede rasm Nybegynder
06. december 2003 - 19:36 #9
Sådan eller hvad?
Avatar billede krydset Nybegynder
06. december 2003 - 19:36 #10
Hvad skal jeg bruge det til??
Avatar billede krydset Nybegynder
06. december 2003 - 19:37 #11
Ja på nær formen den har jeg selv
Avatar billede rasm Nybegynder
06. december 2003 - 19:37 #12
var det ikke sådan noget du ville have jeg skal nok lave det for dig.........
Avatar billede krydset Nybegynder
06. december 2003 - 19:38 #13
Jeg har bare siddet hele aftenen og prøvet og lave et men det gik ikke så godt så nu jagter jeg et
Avatar billede rasm Nybegynder
06. december 2003 - 19:38 #14
E-mail??
Så sender jeg upload.php til dig.......
Avatar billede krydset Nybegynder
06. december 2003 - 19:39 #15
Kan du sp ikke smide den i det her kode??
Avatar billede krydset Nybegynder
06. december 2003 - 19:39 #16
tlarsen@pc-dk.dk
Avatar billede rasm Nybegynder
06. december 2003 - 19:40 #17
det er faktisk den kode jeg smed op først men den skal rettes til...........
Avatar billede krydset Nybegynder
06. december 2003 - 19:40 #18
www.pc-dk.dk/fejl.phps

det er den kode jeg gerne vil have det ind i
Avatar billede rasm Nybegynder
06. december 2003 - 19:41 #19
thanks jeg laver det og du får emailen
Avatar billede krydset Nybegynder
06. december 2003 - 19:41 #20
okaj så får du point hvis det virker ;-)
Avatar billede rasm Nybegynder
06. december 2003 - 19:42 #21
hvilken mappe skal det ligge i?
hvad hedder mappen??
Avatar billede krydset Nybegynder
06. december 2003 - 19:43 #22
../pic
Avatar billede rasm Nybegynder
06. december 2003 - 19:53 #23
Problemos polle

Jeg vil gerne have dine ftp oplysninger der er en del vanskelige ting der skal laves, men jeg kan også lave en på min egen server og så linker du bare til mig..... min mail er dyrefoto@hotmail.com så alle andre ikke for dine ftp oplysninger
Avatar billede krydset Nybegynder
06. december 2003 - 19:55 #24
Jeg skal ikke bruge ftp til noget, det skal være et i php.

som det fra webcafe.dk
Avatar billede rasm Nybegynder
06. december 2003 - 19:57 #25
ok så skal du lige lave skriverettigheder på mappen: ../pic/
Avatar billede krydset Nybegynder
06. december 2003 - 19:59 #26
Det har jeg chmod 777
Avatar billede rasm Nybegynder
06. december 2003 - 20:09 #27
ok
Avatar billede rasm Nybegynder
06. december 2003 - 20:10 #28
sig lige til hvis den virker ellers skriv en mail tilbage fordi nu er det kun serveren det handler om
Avatar billede krydset Nybegynder
06. december 2003 - 20:12 #29
har du sendt på mail??
Avatar billede rasm Nybegynder
06. december 2003 - 20:13 #30
lige NU har jeg
Avatar billede krydset Nybegynder
06. december 2003 - 20:22 #31
det behøves altså ikke være så stort, de eneste det skal kunne er at uploade et billede, det skal slet ikke være så stort som det her??
Avatar billede krydset Nybegynder
06. december 2003 - 20:32 #32
HEY fik det til at virke :-D kan du ikke sætte det sammen med det her www.pc-dk.dk/fejl.phps
Avatar billede rasm Nybegynder
06. december 2003 - 20:32 #33
nåmen nu er det lavet
Avatar billede rasm Nybegynder
06. december 2003 - 20:34 #34
det var ikke med i spørgsmålet

Og jeg kan ikke lave det fordi jeg selv er ved at prøve at lave noget lignene til et firma.

Hvis jeg skulle lave det skulle der flere points på bordet og mere tid....
Avatar billede rasm Nybegynder
06. december 2003 - 20:35 #35
Så kan vi tale om det
Avatar billede krydset Nybegynder
06. december 2003 - 20:37 #36
jamen det er da fint hæver til 200 point så er den fjong så bikser du det lige sammen ik?
Avatar billede krydset Nybegynder
06. december 2003 - 20:37 #37
Sådan :-D
Avatar billede rasm Nybegynder
06. december 2003 - 20:38 #38
du kan vente det til på torsdag-fredag ikke?
Avatar billede krydset Nybegynder
06. december 2003 - 20:41 #39
Nope idag
Avatar billede krydset Nybegynder
06. december 2003 - 20:49 #40
Når prøver selv så du får 50 her som tak for hjælpen det virker jo :-O

smid et svar
Avatar billede rasm Nybegynder
06. december 2003 - 20:55 #41
gg
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester