Avatar billede ofirpeter Nybegynder
22. maj 2004 - 00:42 Der er 7 kommentarer og
1 løsning

Navngiv selv filen, i upload script.

Jeg har forgæves prøvet de sidste 2 timer, at få dette upload script til at virke efter mine hensigter. Det er næsten lykkes, jeg mangler bare selv at kunne ændre navnet på den fil der bliver uploadet, det skal ske automatisk, så alle filerne f.eks. får navnet "lyd.mid"

Hvordan kan det lade sig gøre?

<?php
$stop = "</td>\n</tr></table>\n</center></body></html>";
$dist = $_SERVER["DOCUMENT_ROOT"] ."/";
if(isset($_FILES["singlefile"])) {
$str1 = $_FILES["singlefile"]["name"];
$str2 = $_FILES["singlefile"]["size"];
$str3 = $_FILES["singlefile"]["type"];

//Filer som kan uploades
$filetyper = array("audio/mid");

if ($_FILES["singlefile"]["name"] == "") {
echo"Ingen fil valgt! <a href=\"lyd.php\">tilbage</a>";
echo $stop;
exit;}
   
if (!in_array($_FILES["singlefile"]["type"], $filetyper)) {
echo "Filen kan ikke uploades.<br>\n<b>". $str3 ."</b> er ikke tilladt for upload! <a href=\"lyd.php\">tilbage</a>";
echo $stop;
exit;
    }
if(is_uploaded_file($_FILES["singlefile"]["tmp_name"])) {

move_uploaded_file($_FILES["singlefile"]["tmp_name"], $dist . $_FILES["singlefile"]["name"]);

    echo"&Oslash;nsket fil til upload:<p>\n";
    echo "<b>Navn:</b> ". $str1 .",<br>\n";
    echo"<b>St&oslash;rrelse:</b> ". $str2 ." bytes,<br>\n";
    echo"<b>Filtype:</b> ". $str3 ."<br>\n";
    echo "<a href=\"uploadform.php\">tilbage</a>";
        }else{
        echo"Sorry, men upload skete IKKE!";
    }}
?>

<form enctype="multipart/form-data" action="" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="300000" />
Send this file: <input name="singlefile" type="file" />
<input type="submit" value="Send File" />
</form>
Avatar billede thedeathart Nybegynder
22. maj 2004 - 00:51 #1
hmm.. hvad med  <input type="hidden" name="name value="lyd.mid" />

men hvis alle filerne får samme navn, så bliver der jo kun 1 fil. ?
Avatar billede ofirpeter Nybegynder
22. maj 2004 - 00:55 #2
Ja filen vil blive overskrevet, det er også meningen. Du må gerne uddybe dit svar.
Avatar billede dennismp Nybegynder
22. maj 2004 - 01:01 #3
Lav en text-input hvor man skriver det ønskede navn.. lad os kalde den filename.


Så kan du ændre linjerne ved move_uploaded_file til.

$filename = $_POST['filename'];
if( empty($filename ) )
  $filename = $_FILES["singlefile"]["name"];

// LAV CHECKS HER OM FILNAVNET ER OK

move_uploaded_file($_FILES["singlefile"]["tmp_name"], $dist . $filename);
Avatar billede ofirpeter Nybegynder
22. maj 2004 - 01:04 #4
Jeg siger mange tak.
Du må meget gerne svare dennismp.
Avatar billede ofirpeter Nybegynder
22. maj 2004 - 01:07 #5
thedeathart-> Jeg kan kun tilslutte dig andre der har givet dig karma
"Bruger sætter sig ikke grundigt nok ind i stof inden han svarer"
"Hovsa-løsninger og ukorrekte svar, på ting som personen åbenbart ikke har forstand på." osv.
Avatar billede ofirpeter Nybegynder
22. maj 2004 - 01:08 #6
* tilslutte mig
Avatar billede dennismp Nybegynder
22. maj 2004 - 01:11 #7
Du får et svar. Husk bare endelig at lave en masse checks, så folk ikke gemmer filer andre steder end du ønsker..
Avatar billede ofirpeter Nybegynder
22. maj 2004 - 01:33 #8
Det vil jeg gøre. Tak.
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