08. oktober 2003 - 17:36
Der er
9 kommentarer og 1 løsning
Hvordan bruger jeg RENAME funktionen?
Jeg har dette upload script: if(!isset($_FILES['file_field']['name']) || $_FILES['file_field']['name'] == "none") { echo "<span class=normaltext>Ingen fil som kan uploades!</span><br>"; echo "<span class=normaltext>Prøv igen...</span>"; die; $wrong = 1; } $ext_array = explode( "." , $_FILES['file_field']['name'] ); $ex = $ext_array[count($ext_array) - 1]; $ex = strtolower($ex); if(!in_array($ex,$allowed)) { echo "<span class=normaltext>Den fil type du prøver at uploade er ikke tilladt</span>"; die; $wrong = 1; } $_FILES['file_field']['size'] = $_FILES['file_field']['size']/1000; if($size > $max) { echo "<span class=normaltext>Den fil du prøver at uploade er større end den tilladte: $max KB.</span>"; $wrong = 1; } $query = mysql_query("select * from ladder_profil WHERE bruger = '$_SESSION[bruger]'") or die(mysql_error()); $row = mysql_fetch_array($query); if(move_uploaded_file($_FILES['file_field']['tmp_name'], $dir."/".$_FILES['file_field']['name'])) { $billede = 1; } else { echo "<span class=normaltext>Fejl... kunne ikke uploade</span>"; $wrong = 1; } Nu er det jeg gerne skulle havde ændret fil navnet enten inden filen bliver uploadet eller når det ER uploadet. Er ligeglad det skal bare fungere. $_FILES['file_field']['name'] Dette er fil navnet på den fil der er valgt! Det er denne som skal ændres til denne $row[uniqid] ... Rename funktionen hedder som følgende: Example 1. Example with rename() <?php rename("/tmp/tmp_file.txt", "/home/user/login/docs/my_file.txt"); ?> Men kan sq ikke helt få det til at fungere. Nogen der har en løsning derude?
Annonceindlæg fra Genetec
08. oktober 2003 - 17:41
#1
Du kan indsætte det nye navn i move_uploaded_file($_FILES['file_field']['tmp_name'], $nyt_navn)
08. oktober 2003 - 18:01
#2
Hm... jeg lavede denne if(move_uploaded_file($_FILES['file_field']['tmp_name'], $dir."/".$_FILES['file_field']['name'])) { om til: if(move_uploaded_file($_FILES['file_field']['tmp_name'], $dir."/".$row[uniqid])) { og for følgene fejl: Warning: move_uploaded_file(/home/web/gb5064/ladder/gfx/users//): failed to open stream: Is a directory in /home/web/gb5064/ladder/profil_set.php on line 47 Warning: move_uploaded_file(): Unable to move '/var/tmp/phpbDsz4G' to '/home/web/gb5064/ladder/gfx/users//' in /home/web/gb5064/ladder/profil_set.php on line 47 Fejl... kunne ikke uploade Hvilket er i den linje den failer...
08. oktober 2003 - 18:06
#3
hov det var jo også den forkerte.
08. oktober 2003 - 18:08
#4
lol nej det var sq det rigtige sted! :D
08. oktober 2003 - 18:09
#5
Skal der mon qoutes omkring her: if(move_uploaded_file($_FILES['file_field']['tmp_name'], $dir."/".$row['uniqid'])) {
08. oktober 2003 - 18:35
#6
hjalp ik :) Samme fejl.
08. oktober 2003 - 18:38
#7
Så virker det som om $row['uniqid'] er tom. Prøv at lave en: echo $row['uniqid'];
08. oktober 2003 - 18:54
#8
Ellers kunne du måske prøve sådan her: $file_name = $_FILES['file_field']['tmp_name']; $new_name = $dir."/".$row['uniqid']; if(move_uploaded_file($file_name, $new_name)) {
08. oktober 2003 - 19:37
#9
Smukt du havde ret! Det var en fejl der hvor jeg hentede noget fra mysql'en! Men alt fungere nu :) Smid et svar hehe
08. oktober 2003 - 19:41
#10
Jep c",)
Vi tilbyder markedets bedste kurser inden for webudvikling