Jeg har et script til at upload filer på min hjemmeside. Jeg har dog lidt svært ved at få tingene til at "tale" sammen, så håber på nogle kan komme med et hit til at få det til at virke
Scriptet er på index.php filen som når den loades skaber en folder på serveren. Upload scriptet skal så kunne uploade til den specifikke folder.
Folderen skal genereres/opkaldes efter e-mail adressen fra URLen fx:
index.php?email=myemail@myemail.dk...
Dette gør jeg ved denne kode:
Kode: Vælg alt
<?php
// change the name below for the folder you want
$dir = " public_html/server/".$_GET["email"];
$file_to_write = 'test.txt';
$content_to_write = "The content";
if( is_dir($dir) === false )
{
mkdir($dir);
}
$file = fopen($dir . '/' . $file_to_write,"w");
// a different way to write content into
// fwrite($file,"Hello World.");
fwrite($file, $content_to_write);
// closes the file
fclose($file);
// this will show the created file from the created folder on screen
include $dir . '/' . $file_to_write;
?>
Nu kommer mit problem . Upload scriptet skal vide at det er denne mappe det skal uploade til. Jeg har prøvet at bruge denne kode til at sende informationen til upload scriptet:
Kode: Vælg alt
<?
$_SESSION['tmem']="public_html/server/".$_GET["email"]."/";
?>Index.php filen i public_html/server/ som min ovenstående kode gerne skulle gå igennem ser således ud:
Kode: Vælg alt
<?php
session_start();
error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$upload_handler = new UploadHandler();Og filen UploadHandler.php som fortæller scriptet hvor filer skal uploades ser så ledes ud:
Kode: Vælg alt
'script_url' => $this->get_full_url().'/'.$this->basename($this->get_server_var('SCRIPT_NAME')),
'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).$_SESSION['tmem'], // PATCH TO THE FOLDER FOR THE UPLOAD
'upload_url' => $this->get_full_url().$_SESSION['tmem'], // PATCH TO THE FOLDER FOR THE UPLOAD
'input_stream' => 'php://input',
'user_dirs' => false,
'mkdir_mode' => 0755,
'param_name' => 'files',Men delen med .$_SESSION['tmem'] virker ikke. Hvad gør jeg forkert?
Jeg har også prøvet med koden:
Kode: Vælg alt
'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).$_GET['email'], // PATCH TO THE FOLDER FOR THE UPLOAD
'upload_url' => $this->get_full_url().$_GET['email'], // PATCH TO THE FOLDER FOR THE UPLOAD

