Avatar billede purkovic Nybegynder
10. marts 2007 - 21:22 Der er 3 kommentarer

hvorfor vil filnavnet ikke skrives? Simpelt EVT.

Hej jeg har denne php  upload script den vil meget gerne oploade og virker godt.. dog vil den ikke skrive filnavnet $_file_name vil inskrives i log filen upload_log.txt:


<?php
session_start();
include("database.php");
include("login.php");

if($logged_in){
  echo 'Logged in as '.$_SESSION['username'].', <a href="logout.php">logout</a>';
   
    //edit this
$_max_file_size = '5000'; //file size in bytes.
$upload_dir = "files/"; //upload folder..chmod to 777
$_i = "3";                //number of files to upload at one time
//end edit

echo "Maximum file size : " . $_max_file_size/1000 . "KB<br>";
echo "<form enctype='multipart/form-data' action='?do=upload' method='post'>";
echo "<input type='hidden' name='MAX_FILE_SIZE' value='" . $_max_file_size , "'>";
echo "Choose your file(s): <br>";
//show number of files to select
For($i=0; $i <= $_i-1;$i++)
{
echo "<input name='file" . $i . "' type='file'><br>";
}
echo "<input type='submit' value='Upload File'>";
echo "</form>";

if($_GET['do'] == 'upload')
{
//upload all the fields until done
For($i=0; $i <= $_i-1; $i++)
{
//create a random number
$_random = rand(1, 1000000);
//file with the upload folder
$target_path = $upload_dir . $_random . basename($_FILES['file' . $i]['name']);
//actual file name with the random number
$_file_name = $_random . basename($_FILES['file' . $i]['name']);

//do not upload the 'left blank' fields
if(basename($_FILES['file' . $i]['name']) != '')
{

if(move_uploaded_file($_FILES['file' . $i]['tmp_name'], $target_path))
{
    //uploaded successfuly
    $_uploaded=1;
}
else
{
    //error uploading
    $_error=1;
}
}
else
{
$_check=$_check+1;
}
   
}

//file(s) did upload
if($_uploaded == '1')
{
$_uploaded=0;
echo "The file(s) have been uploaded.<br>";
}
//file uploaded?
if($_error == '1')
{
$_error=0;
echo "There was an error uploading some of the file(s), please try again! Maybe the file size. Maximum file size is " . $_max_file_size/1000 . "KB<br>";
}
//user selected a file?
if($_check == $_i)
{
$_check=0;
echo "Select a file first than click 'Upload File'<br>";
}}
JEG ER MEGET I TVIVL  OM DENNE DEL:

$upload_log_file = "upload_log.txt";
$resource = fopen($upload_log_file,"a");
    fwrite($resource, "$_file_name");
    fclose($resource);

HERTIL



}else{
  echo "Not logged in." ;
displayLogin();
}?>   


SOM SAGT VIRKER DEN IKKE, den skriver kun random numre i stil med det her:3453917
:) så spg. er hvad det kan skyldes og hvordan får jeg den sidste del af $_file_name
Avatar billede noob2003 Nybegynder
10. marts 2007 - 22:02 #1
et skud i tågen

$_file_name = $_GET['_file_name'];

$upload_log_file = "upload_log.txt";
$resource = fopen($upload_log_file,"a");
    fwrite($resource, "$_file_name");
    fclose($resource);
Avatar billede purkovic Nybegynder
10. marts 2007 - 22:45 #2
Tak har prøvet.. men det virker ik?. stadig ingen fil navn i log kun random numre ... Andre forslag:.
Avatar billede jakobdo Ekspert
12. marts 2007 - 22:07 #3
Du sætter j $_file_name her: $_file_name = $_random . basename($_FILES['file' . $i]['name']);

Hvor har du koden som skriver i din log?
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