Avatar billede snoezel Nybegynder
15. maj 2003 - 18:40 Der er 43 kommentarer og
1 løsning

upload billede + tekst

Hejsa - er der nogen der ved hvor jeg finder et simpelt script, som kan uploade et billede til serveren, samtidig med at man kan tilføje tekst til billedet, eksempelvis farve, antal, beskrivelse som gemmes i en mysql DB

Har søgt og søgt, men de fleste er alt for avancerede og alt for mange unøde features
Avatar billede snoezel Nybegynder
15. maj 2003 - 18:44 #1
billedet skal ikke gemmes i DB, blot sti til dette
Avatar billede googolplex Novice
15. maj 2003 - 18:54 #2
Hvad med det her link, virker perfekt!

http://www.webcafe.dk/artikler/php/upload/
Avatar billede snoezel Nybegynder
15. maj 2003 - 18:59 #3
jo, men der skrives ikke data til databasen, er der eksempelvis en der har formen til at uploade 1 billede + beskrivelse til mysql - kan jeg nok selv tilføje de ekstra felter jeg kommer til at mangle
Avatar billede googolplex Novice
15. maj 2003 - 19:13 #4
Jeg bruger selv denne funktion:

function upload_fil($max_stoerrelse = 100, $upload_bibliotek = "default", $filtyper_tilladt = "default") {

    if ($upload_bibliotek == "default") {
        $upload_bibliotek = "/upload";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "application/pdf", "application/zip", "application/arj", "application/x-zip-compressed", "application/octet-stream");
    }

    if ($_FILES["upfil"]["size"] > 0) {
       
        $filnavn = ereg_replace(" ", "_", $_FILES["upfil"]["name"]);
        $fil_sti = $bibliotek . "/" . $filnavn;
        $bibliotek = $_SERVER["DOCUMENT_ROOT"] . $bibliotek;
        $fra = $_FILES["upfil"]["tmp_name"];
        $til = $bibliotek . "/" . $filnavn;
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $_FILES["upfil"]["type"];
        $fejl = "0";

        if(!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen $filnavn kunne derfor ikke uploades!</p>";
            $fejl = "1";
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = "1";
        }
        if ($fejl == "0") {
            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";
                return $fil_sti;
            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
            }
        }
    } else {
        echo "<p>Du har ikke vedhæftet nogen fil!</p>";
    }
}

Den returnerer også stien, så kan du bare uploade den sammen med yderligere information til databasen.
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:16 #5
formularen SKAL uploade billede til server, samt skrive 4 til 5 tekst felter ind i en mysql DB på en gang - er det helt umuligt ?
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:17 #6
samtidig med filnavnet på billedet i samme ID
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:17 #7
jeg skal efterfølgende have data trukket ud på en anden side dynamisk - men det kommer senere :)
Avatar billede googolplex Novice
15. maj 2003 - 19:21 #8
Ja, det er det funktionen (næsten) gør. Den uploader filen til en server, derefter returnere den stien, hvis det lykkes at uploade billedet. Så kan du bare lægge stien op i en database sammen med farve, antal, beskrivelse osv.

Det er sådan jeg gør.
Avatar billede googolplex Novice
15. maj 2003 - 19:22 #9
Men nej, det er altså ikke umuligt :)
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:23 #10
jae, men jeg ville meget gerne at det kunne foregå på en gang :-)
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:23 #11
men svært, siden du selv gør det på den anden måde ;)
Avatar billede googolplex Novice
15. maj 2003 - 19:26 #12
Jamen, kan du ikke bare lægge farve, sti osv op i en database seperat ?

Det er bestemt ikke svært :)
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:27 #13
jo, men det er da mere lækkert at det foregår automatisk!
Avatar billede googolplex Novice
15. maj 2003 - 19:29 #14
Vil du have funktionen upbygget, så du bare skal indtaste farve osv., og så klarer den det hele ?
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:34 #15
ja, så den skriver data fra input felter i en mysql database
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:35 #16
samt filnavnet på billedet
Avatar billede googolplex Novice
15. maj 2003 - 19:35 #17
øjeblik...
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:37 #18
det er så jeg efterfølgende kan lave en side der løber tabellen igennem og udskriver billeder med tilhørende tekst til
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:38 #19
ud for hvert billede der er uploaded
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:39 #20
der behøver ik være alt muligt tjek, som filtype, filstørrelse og sådan, det er kun "admin" der skal benytte formularen
Avatar billede googolplex Novice
15. maj 2003 - 19:43 #21
Ok, her kommer hovedfunktionen:

function upload_fil($max_stoerrelse = 100, $upload_bibliotek = "default", $filtyper_tilladt = "default", $farve, $beskrivelse) {

    if ($upload_bibliotek == "default") {
        $upload_bibliotek = "/upload";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "application/pdf", "application/zip", "application/arj", "application/x-zip-compressed", "application/octet-stream");
    }

    if ($_FILES["upfil"]["size"] > 0) {
       
        $filnavn = ereg_replace(" ", "_", $_FILES["upfil"]["name"]);
        $fil_sti = $bibliotek . "/" . $filnavn;
        $bibliotek = $_SERVER["DOCUMENT_ROOT"] . $bibliotek;
        $fra = $_FILES["upfil"]["tmp_name"];
        $til = $bibliotek . "/" . $filnavn;
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $_FILES["upfil"]["type"];
        $fejl = "0";

        if(!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen $filnavn kunne derfor ikke uploades!</p>";
            $fejl = "1";
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = "1";
        }
        if ($fejl == "0") {
            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";

                aabn_forbindelse();
                sql_spoerg("INSERT INTO dintabel (fil_sti, farve, beskrivelse) VALUES ('$fil_sti', '$farve', '$beskrivelse')");
                luk_forbindelse();



            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
            }
        }
    } else {
        echo "<p>Du har ikke vedhæftet nogen fil!</p>";
    }
}

Og her de hjælpefunktioner jeg bruger (fra webcafe, virker godt):

/* Funktion der åbner en forbindelse til en specifik database */

function aabn_forbindelse() {
   
    $server = "localhost";
    $bruger = "";
    $kodeord = "";
    $database = "ladefoged_roenn";

    if (!mysql_connect("$server", "$bruger", "$kodeord")) {
        udskriv_fejl("Kunne ikke oprette en forbindelse til MySQL");
    }
   
    if (!mysql_select_db("$database")) {
        udskriv_fejl("Kunne ikke vælge databasen: $database");
    }
}

/* Funktion der klarer sql-forespørgsel der IKKE modtager data */

function sql_spoerg($query) {
   
    $resultat = mysql_query($query);

    if (!$resultat) {
        udskriv_fejl("Kunne ikke udføre: <b>$query</b>");
    }
}

/* Funktion der lukker forbindelsen til databasen */

function luk_forbindelse() {
   
    if (!mysql_close()) {
        udskriv_fejl("Kunne ikke lukke forbindelsen til MySQL");
    }
}

/* Funktion der udskriver fejl */

function udskriv_fejl($fejl) {

    echo "<p>$fejl</p>";

    if ($mysql_fejl = mysql_error()) {
        echo "<br />Fejlen er: <b>$mysql_fejl</b>";
    }

    exit;
}

Det er utesten, prøv det lige af. Du skal selvfølgelig taste lidt småting ind, brugernavn, kodeord. Men ellers burde det virke :)
Avatar billede snoezel Nybegynder
15. maj 2003 - 19:44 #22
jeg leger lidt med det :-)
Avatar billede snoezel Nybegynder
15. maj 2003 - 20:08 #23
Har oprettet en mappe "upload" i roden chmodded 777 og kommet koden i en upload_f.php - jeg får ingen fejl, men siden bliver helt hvid og ingen fil er uploaded:


Formen på upload.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form action="upload_f.php" method="post" enctype="multipart/form-data" name="form1">
  <p>
    <input type="file" name="default">
  </p>
  <p>
    <input type="text" name="farve">
    farve</p>
  <p>
    <input type="text" name="beskrivelse">
    beskrivelse </p>
  <p>
    <input type="submit" name="Submit" value="Submit">
  </p>
</form>
</body>
</html>
Avatar billede snoezel Nybegynder
16. maj 2003 - 14:06 #24
googolplex>> Du har ikke et bud på det ?
Avatar billede googolplex Novice
16. maj 2003 - 14:17 #25
Prøv dette, det virker:

<?php

function upload_fil($fil, $max_stoerrelse = 100, $bibliotek = "default", $filtyper_tilladt = "default") {

    if ($bibliotek == "default") {
        $bibliotek = "/upload";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "application/pdf", "application/zip", "application/arj", "application/x-zip-compressed", "application/octet-stream");
    }

    if ($fil["size"] > 0) {
       
        $filnavn = ereg_replace(" ", "_", $fil["name"]);
        $fil_sti = $bibliotek . "/" . $filnavn;
        $fra = $fil["tmp_name"];
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $fil["type"];
        $fejl = "0";

        if(!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen $filnavn kan derfor ikke uploades!</p>";
            $fejl = "1";
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = "1";
        }
        if ($fejl == "0") {
            if (file_exists(getcwd() . $fil_sti)) {
               
                $pos = strrpos($filnavn, ".");
                $navn = substr($filnavn, 0, $pos);
                $type = substr($filnavn, $pos + 1, strlen($filnavn) - ($pos + 1));
                $i = 2;
               
                echo "<p>Filen '$filnavn' eksisterer allerede i '" . $bibliotek . "' og filen omdøbes derfor til ";
               
                while (file_exists(getcwd() . $fil_sti)) {
                    $filnavn = $navn . "(" . $i . ")." . $type;
                    $fil_sti = $bibliotek . "/" . $filnavn;
                    $i++;
                }
                echo "'$filnavn'</p>";
            }

            $til = $_SERVER["DOCUMENT_ROOT"] . $fil_sti;

            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";
                return $fil_sti;
            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
                return false;
            }
        }
    } else {
        echo "<p>Der er ikke vedhæftet nogen fil!</p>";
    }
}

?>

<html>

<head>
</head>

<body>

<div>

<?php
if ($_POST[sendknap]) {

    $fil = $_FILES["upfil"];
    $max_stoerrelse = 100;
    $upload_mappe = "/upload/diverse";
    $filer_tilladt = array("image/pjpeg", "image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "image/jpg");

    upload_fil($fil, $max_stoerrelse, $upload_mappe, $filer_tilladt);

} else {
?>

<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data">
<fieldset>
  Upload fil<br />
  <input type="file" name="upfil" size="30" /><br />
  <input type="submit" name="sendknap" value="Upload" />
</fieldset>
</form>

<?php
}
?>

</div>

</body>

</html>
Avatar billede snoezel Nybegynder
16. maj 2003 - 14:34 #26
ja, det gør den :) Kan du koble et tekst felt på sammen med, som bliver skrevet i mysql databsen, så kan jeg altid selv ændre og tilføje felter - det ville være helt kanon :-)
Avatar billede googolplex Novice
16. maj 2003 - 15:12 #27
Ok, men skal lige ud af døren, vender tilbage om et par timer.
Avatar billede googolplex Novice
16. maj 2003 - 16:47 #28
<?php

/* Funktion der åbner en forbindelse til en specifik database */

function aabn_forbindelse() {
   
    $server = "localhost";
    $bruger = "";
    $kodeord = "";
    $database = "ladefoged_roenn";

    if (!mysql_connect("$server", "$bruger", "$kodeord")) {
        udskriv_fejl("Kunne ikke oprette en forbindelse til MySQL");
    }
   
    if (!mysql_select_db("$database")) {
        udskriv_fejl("Kunne ikke vælge databasen: $database");
    }
}

/* Funktion der klarer sql-forespørgsel der IKKE modtager data */

function sql_spoerg($query) {
   
    $resultat = mysql_query($query);

    if (!$resultat) {
        udskriv_fejl("Kunne ikke udføre: <b>$query</b>");
    }
}

/* Funktion der lukker forbindelsen til databasen */

function luk_forbindelse() {
   
    if (!mysql_close()) {
        udskriv_fejl("Kunne ikke lukke forbindelsen til MySQL");
    }
}

/* Funktion der udskriver fejl */

function udskriv_fejl($fejl) {

    echo "<p>$fejl</p>";

    if ($mysql_fejl = mysql_error()) {
        echo "<br />Fejlen er: <b>$mysql_fejl</b>";
    }

    exit;
}

/* Hovedfunktioen */

function upload_fil($fil, $max_stoerrelse = 100, $bibliotek = "default", $filtyper_tilladt = "default", $farve, $beskrivelse) {

    if ($bibliotek == "default") {
        $bibliotek = "/upload";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "application/pdf", "application/zip", "application/arj", "application/x-zip-compressed", "application/octet-stream");
    }

    if ($fil["size"] > 0) {
       
        $filnavn = strtolower(ereg_replace(" ", "_", $fil["name"]));
        $fil_sti = $bibliotek . "/" . $filnavn;
        $fra = $fil["tmp_name"];
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $fil["type"];
        $fejl = "0";

        if(!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen $filnavn kan derfor ikke uploades!</p>";
            $fejl = "1";
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = "1";
        }
        if ($fejl == "0") {
            if (file_exists(getcwd() . $fil_sti)) {
               
                $pos = strrpos($filnavn, ".");
                $navn = substr($filnavn, 0, $pos);
                $type = substr($filnavn, $pos + 1, strlen($filnavn) - ($pos + 1));
                $i = 2;
               
                echo "<p>Filen '$filnavn' eksisterer allerede i '" . $bibliotek . "' og filen omdøbes derfor til ";
               
                while (file_exists(getcwd() . $fil_sti)) {
                    $filnavn = $navn . "(" . $i . ")." . $type;
                    $fil_sti = $bibliotek . "/" . $filnavn;
                    $i++;
                }
                echo "'$filnavn'</p>";
            }

            $til = $_SERVER["DOCUMENT_ROOT"] . $fil_sti;

            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";
                aabn_forbindelse();
                sql_spoerg("INSERT INTO dintabel (fil_sti, farve, beskrivelse) VALUES ('$fil_sti', '$farve', '$beskrivelse')");
                luk_forbindelse();
            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
                return false;
            }
        }
    } else {
        echo "<p>Der er ikke vedhæftet nogen fil!</p>";
    }
}

?>

<html>

<head>
</head>

<body>

<div>

<?php
if ($_POST[sendknap]) {

    $fil = $_FILES["upfil"];
    $max_stoerrelse = 10;
    $upload_mappe = "./upload/diverse";
    $filer_tilladt = array("image/pjpeg", "image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "image/jpg");

    upload_fil($fil, $max_stoerrelse, $upload_mappe, $filer_tilladt);

} else {
?>

<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data">
<fieldset>
  Upload fil<br />
  <input type="file" name="upfil" size="30" /><br />
  <input type="submit" name="sendknap" value="Upload" />
</fieldset>
</form>

<?php
}
?>

</div>

</body>

</html>
Avatar billede snoezel Nybegynder
16. maj 2003 - 16:55 #29
her ender det så op med både en UPLOAD knap og en SUBMIT knap, eller kan jeg nøjes med at benytte upload knappen som submit også ? eller..
Avatar billede snoezel Nybegynder
16. maj 2003 - 16:58 #30
Du skal have mange tak for hjælpen, jeg må holde mig til 2 sider, en upload funktion, og derefter en opret side - jeg kan simpelthen ikke lure af hvordan man gør det i en omgang :(

Men det ville have været noget nemmere at trække det korrekte billede ud sammen med teksten udfra ID i DB end at huske stien til opret siden :-))

Points til dig - du har hjulpet mig meget på vej, til en alternativ løsning :)
Avatar billede googolplex Novice
16. maj 2003 - 17:04 #31
Jamen du skal bare kopiere alt det jeg lige har skrevet i en fil og uploade den. Så virker det med EN fil.
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:07 #32
ja, men der er ingen tekst felter :-)
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:07 #33
jeg har behov for eksempelvis en INPUT boks til Overskrift osv...
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:07 #34
så det hele bliver gemt i DB under samme ID på en gang :-)
Avatar billede googolplex Novice
16. maj 2003 - 17:10 #35
Hvad skal du bruge i upload formen, så laver jeg det ?

Overskrift, beskrivelse ?
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:13 #36
Overskrift, billedet, email, website, beskrivelse, underskrift
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:14 #37
Overskrift, billedet,navn, email, website, beskrivelse, underskrift
Avatar billede snoezel Nybegynder
16. maj 2003 - 17:14 #38
ups, manglede lige "navn" og de har samme navne i DB og rækkefølge
+ jeg har ID som auto
Avatar billede googolplex Novice
16. maj 2003 - 18:14 #39
Ok, så skulle den være der! Jeg går ud fra at 'billede' er stien til billedet som uploades på serveren ??!

Databasen skal selvfølgelig være lavet før det virker :) Husk at taste server, brugernavn, adgangskode og databasenavn ind i funktionen aabn_forbindelse().

Eller skal du bare lægge ALT herunder i en fil og uploade:

<?php

/* Funktion der åbner en forbindelse til en specifik database */

function aabn_forbindelse() {
   
    $server = "localhost";
    $bruger = "";
    $kodeord = "";
    $database = "";

    if (!mysql_connect("$server", "$bruger", "$kodeord")) {
        udskriv_fejl("Kunne ikke oprette en forbindelse til MySQL");
    }
   
    if (!mysql_select_db("$database")) {
        udskriv_fejl("Kunne ikke vælge databasen: $database");
    }
}

/* Funktion der klarer sql-forespørgsel der IKKE modtager data */

function sql_spoerg($query) {
   
    $resultat = mysql_query($query);

    if (!$resultat) {
        udskriv_fejl("Kunne ikke udføre: <b>$query</b>");
    }
}

/* Funktion der lukker forbindelsen til databasen */

function luk_forbindelse() {
   
    if (!mysql_close()) {
        udskriv_fejl("Kunne ikke lukke forbindelsen til MySQL");
    }
}

/* Funktion der udskriver fejl */

function udskriv_fejl($fejl) {

    echo "<p>$fejl</p>";

    if ($mysql_fejl = mysql_error()) {
        echo "<br />Fejlen er: <b>$mysql_fejl</b>";
    }

    exit;
}

/* Hovedfunktioen */

function upload_fil($fil, $overskrift, $navn, $email, $website, $beskrivelse, $underskrift, $max_stoerrelse = 100, $bibliotek = "default", $filtyper_tilladt = "default") {

    if ($bibliotek == "default") {
        $bibliotek = "/upload";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "application/pdf", "application/zip", "application/arj", "application/x-zip-compressed", "application/octet-stream");
    }

    if ($fil["size"] > 0) {
       
        $filnavn = strtolower(ereg_replace(" ", "_", $fil["name"]));
        $fil_sti = $bibliotek . "/" . $filnavn;
        $fra = $fil["tmp_name"];
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $fil["type"];
        $fejl = "0";

        if(!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen $filnavn kan derfor ikke uploades!</p>";
            $fejl = "1";
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = "1";
        }
        if ($fejl == "0") {
            if (file_exists(getcwd() . $fil_sti)) {
               
                $pos = strrpos($filnavn, ".");
                $navn = substr($filnavn, 0, $pos);
                $type = substr($filnavn, $pos + 1, strlen($filnavn) - ($pos + 1));
                $i = 2;
               
                echo "<p>Filen '$filnavn' eksisterer allerede i '" . $bibliotek . "' og filen omdøbes derfor til ";
               
                while (file_exists(getcwd() . $fil_sti)) {
                    $filnavn = $navn . "(" . $i . ")." . $type;
                    $fil_sti = $bibliotek . "/" . $filnavn;
                    $i++;
                }
                echo "'$filnavn'</p>";
            }

            $til = $_SERVER["DOCUMENT_ROOT"] . $fil_sti;

            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";
                aabn_forbindelse();
                sql_spoerg("INSERT INTO dintabel (overskrift, billedet, navn, email, website, beskrivelse, underskrift) VALUES ('$overskrift', '$fil_sti', '$navn', '$email', '$website', '$beskrivelse', '$underskrift')");
                luk_forbindelse();
            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
                return false;
            }
        }
    } else {
        echo "<p>Der er ikke vedhæftet nogen fil!</p>";
    }
}

?>

<html>

<head>
</head>

<body>

<div>

<?php
if ($_POST[sendknap] && $_POST[overskrift] && $_POST[navn] && $_POST[email] && $_POST[website] && $_POST[beskrivelse] && $_POST[underskrift]) {

    $fil = $_FILES["upfil"];
    $max_stoerrelse = 1000;
    $upload_mappe = "/upload/diverse";
    $filer_tilladt = array("image/pjpeg", "image/bmp", "image/jpeg", "image/tiff", "image/png", "image/gif", "image/jpg");

    upload_fil($fil, $overskrift, $navn, $email, $website, $beskrivelse, $underskrift, $max_stoerrelse, $upload_mappe, $filer_tilladt);

} else {
?>

<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data">
<fieldset>
  Overskrift<br />
  <input type="text" name="overskrift" value="<?php echo "$overskrift"; ?>" size="30" /><br />
  Navn<br />
  <input type="text" name="navn" value="<?php echo "$navn"; ?>" size="30" /><br />
  Email<br />
  <input type="text" name="email" value="<?php echo "$email"; ?>" size="30" /><br />
  Website<br />
  <input type="text" name="website" value="<?php echo "$website"; ?>" size="30" /><br />
  Beskrivelse<br />
  <input type="text" name="beskrivelse" value="<?php echo "$beskrivelse"; ?>" size="30" /><br />
  Underskrift<br />
  <input type="text" name="underskrift" value="<?php echo "$underskrift"; ?>" size="30" /><br />
  Vedhæft billede<br />
  <input type="file" name="upfil" size="30" /><br />
  <input type="submit" name="sendknap" value="Upload" />
</fieldset>
</form>

<?php
}
?>

</div>

</body>

</html>
Avatar billede snoezel Nybegynder
16. maj 2003 - 18:51 #40
Fantastisk - det var lige sådan jeg gerne ville have det, på en gang, mange tak :-)
Avatar billede snoezel Nybegynder
17. maj 2003 - 22:24 #41
googolplex>> Hvis du stadig kigger med her - så har jeg lige et spørs mere.
Hvordan kan det være at den uploader forkert navn - hvis filen eksisterer i forvejen i mappen, og den omdøber den - billedenavnet er ok - men $name bliver forkert, det får navnet på filen i stedet for det navn man har skrevet ?
Avatar billede googolplex Novice
17. maj 2003 - 23:48 #42
Så skal du bruge UPDATE i stedet for INSERT INTO.
Avatar billede snoezel Nybegynder
17. maj 2003 - 23:50 #43
mange tak :)
Avatar billede snoezel Nybegynder
17. maj 2003 - 23:51 #44
det virker nemlig helt fint - hvis bare billedet ikke eksisterer i forvejen
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