Avatar billede eksplayer Nybegynder
27. marts 2004 - 19:25 Der er 7 kommentarer og
1 løsning

Justering af uploader

Hej eksperter

Jeg sidder og roder lidt med uploaderen fra webcafe's hjememside, men har nogle problemer (eftersom jeg ikke fatter så meget PHP).

Eksempel:
http://www.webcafe.dk/artikler/php/upload/wc_upload.php

Koden:
http://www.webcafe.dk/artikler/php/upload/upload_script.phps

Mine spørgsmål lyder fom følger:

1) Hvordan ændre man Overskrifter i uploaderen til:
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 16px;
font-weight: bold;
font-style: italic;

2) Og hvordan får man resten af teksterne til at være:
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;

3) Og hvordan sætter man Upload-knappen op bag efter "Gennemse...-knappen"?

4) Og til sidst - den knap der hedder "Gennemse..." - hvorfor kan man ikke finde den i koden?
Avatar billede razor Nybegynder
27. marts 2004 - 19:28 #1
Dine problemer har ikke noget med PHP at gøre. Det er ganske simpel HTML.
Med hensyn til 'Gennense' kan du ikke ændre den. Den kommer helt af sig selv ved et file-inputobjekt.
Avatar billede eksplayer Nybegynder
27. marts 2004 - 19:38 #2
Okay - men jeg er stadig interesseret. Skal jeg flytte spørgsmålet eller hvad?
Avatar billede gizmo1234 Nybegynder
27. marts 2004 - 20:29 #3
Jeg er lige igang med at svare på dine spg. :)
Hæng lige på
Avatar billede gizmo1234 Nybegynder
27. marts 2004 - 20:48 #4
<?php

/**
* Simpelt script der tager imod et filupload og lister
* filer i upload-biblioteket.
*
* Scriptet er et eksempel til en artikel paa WebCafe.dk:
*
*    http://www.webcafe.dk/artikler/php/upload/
*/


/**
* Hvor skal filerne uploades til?
* Husk, at webserveren skal kunne skrive til dette bibliotek
*/
$konfiguration["upload_bibliotek"] = "./upload";

/* Hvor mange kilobytes maa filerne fylde per styk? */
$konfiguration["max_stoerrelse"] = "30";


/**
* Checker PHP-version
*/
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>
<style type="text/css">

.overskrift {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: bold;
    font-style: italic;

}
.tekst {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;

}

</style>
            <body bgcolor="#ffffff">
              <div align="right" class="tekst"><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" class="tekst"><b>Fil til upload:</p></b></td>
                    <td bgcolor="#cccccc"><input type="file" name="upfil" />&nbsp;&nbsp;<input type="submit" value="upload" /></td>
                  </tr>
                 
                </table>
              </form>
              ';

  return "<h2><p class=\"overskrift\">Upload fil:</h2></p>" . $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\"><p class=\"tekst\">$fil</p></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><p class=\"overskrift\">Filer p&aring; lager:</p></h2><ul>"
. $liste ."


</ul>";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }

}

?>


- Det skulle svare på de 3 første spørgsmål.

Spørgsmål 4: Fordi når der bruges <input type="file" name="upfil" /> så kommer der automatisk en gennemse knappe. Fordi type="file" er til at finde en fil på sin computer og så gøre noget ved filen via type="file". Det er også grunden til at man ikke kan se noget kode som får den knappe frem, som med submit knappen...
Avatar billede eksplayer Nybegynder
27. marts 2004 - 21:21 #5
gizmo1234: jeg siger mange tak det var præcis hvad jeg søgte ;)
Avatar billede eksplayer Nybegynder
27. marts 2004 - 21:23 #6
lige en ekstra ting - er det muligt at lave "upload-knappen" i samme højde som "Gennemse...-knappen"
Avatar billede gizmo1234 Nybegynder
27. marts 2004 - 22:45 #7
Jeg mener ikke man kan, men det kan da godt være at der sidder en CSS specialist et sted derude, som kender et trick :) Men som sagt, så tror jeg ikke man kan
Avatar billede Slettet bruger
28. marts 2004 - 16:28 #8
Du kan godt ændre højde/bredde på et upload felt

<input style="height:20px" type="file" name="upfil" />&nbsp;&nbsp;<input style="height:20px" type="submit" value="upload" />
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