Avatar billede angelenglen Nybegynder
13. november 2003 - 21:20 Der er 5 kommentarer og
1 løsning

lav random filnavn, men behold extension!

jeg har den her funktion jeg fik lavet for lang tid siden.
den er også meget god, men lige nu har jeg brug for noget andet. -den er her bare hvis nogen kan få noget ud af den som kan bruges til det jeg har brug for nu...

    //random number generator (adds a random 5-digit number at end of filename, before extension)
    $randomnumber = Rand(10000,32767);
    $temparr = explode(".", $file_name);
    $temparr[count($temparr)-2] .=  "_".$randomnumber;
    $file_name = implode( ".", $temparr );


det jeg skal bruge, er noget i stil med ovenstående, dog med en væsentlig forskel.
den ovenstående kode bibeholder det originale filnavn, det skal den nye ikke.

den nye fil skal bare være et eller andet random navn, fx:
"wdfsdfsdfsdf.pdf" hvis original filen også var af typen .pdf

for at finde det random der, havde jeg tænkt noget i stil med:
"random" . md5(uniqid(rand(), true));
-det skulle generere noget i stil med:
"random6766cb6f0dbdc146431c2d0f8d448ca4"
-så skal extension bare smides tilbage bagefter.

håber nogen kan hjælpe.
Avatar billede detox Nybegynder
13. november 2003 - 21:37 #1
Fx:

<?php
$filnavn = "eksempel.php";
$arr = explode(".",$filnavn);
$ext = array_pop(explode(".",$filnavn));
echo Lavpass(12).".".$ext; // Max længde = 32
function LavPass($len=10) {
  return substr(md5(uniqid(mt_rand(), true)),0,$len);
}
?>
Avatar billede detox Nybegynder
13. november 2003 - 21:40 #2
Eller måske sådan:

<?php
$filnavn = "eksempel.php";
$ext = array_pop(explode(".",$filnavn));
echo "random".Lavpass(32).".".$ext; // Max længde = 32
function LavPass($len=10) {
  return substr(md5(uniqid(mt_rand(), true)),0,$len);
}
?>
Avatar billede angelenglen Nybegynder
13. november 2003 - 21:43 #3
hvad variabel-navn ligger resultatet i efter det der?
Avatar billede detox Nybegynder
13. november 2003 - 21:45 #4
Nu ligger det i $nytnavn:

<?php
$filnavn = "eksempel.php";
$ext = array_pop(explode(".",$filnavn));
$nytnavn = "random".Lavpass(32).".".$ext; // Max længde = 32
function LavPass($len=10) {
  return substr(md5(uniqid(mt_rand(), true)),0,$len);
}
?>
Avatar billede angelenglen Nybegynder
13. november 2003 - 21:46 #5
ah okay, takker.
svar for points!
Avatar billede detox Nybegynder
13. november 2003 - 21:47 #6
Jeps ;o)
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