Avatar billede blackkflyer Nybegynder
07. august 2008 - 02:03 Der er 5 kommentarer og
1 løsning

Copy virker ikke

Jeg vil bruge en copy command til at lave backup af min fil men istedet for at bruge min variabel skriver den bare $fra findes ikke... Her er php koden

<?php
$ally=$_REQUEST["ally"];

//Upload eksempel
$path = "/host/b/l/a/blackkflyer/uws/members/";//Sti til mappen filen skal uploades i!
$filename = "$ally.ggb";//Filens navn
$httproot = "http://uwskoords.ooz.dk/members/";//http:// roden til mappen som filen skal uploades til.
$fra = "/host/b/l/a/blackkflyer/uws/members/$ally.ggb";
$til = "/host/b/l/a/blackkflyer/uws/members/backup/$ally.ggb";



echo "$til, $fra";
copy('$fra','$til');

if(count($_POST)>0)//Der bliver postet til scriptet
{
    $file = $_FILES['file'];
    if(move_uploaded_file($file['tmp_name'], $path."/".$filename))
    {
        echo 'Filen er nu uploadet. Genstart browersen for at se den';
    }
    else
    {
        echo 'Fail';
    }
}
?>


Jeg kan ikke se nogen fejl og den echo'er det rigtig men stadig væk, den skriver:

/host/b/l/a/blackkflyer/uws/members/backup/Nomads.ggb, /host/b/l/a/blackkflyer/uws/members/Nomads.ggb
Warning: copy($fra) [function.copy.html]: failed to open stream: No such file or directory in /host/b/l/a/blackkflyer/uws/members/upload1test.php on line 14
Filen er nu uploadet. Genstart browersen for at se den


Og filen er der, har tjekket. Første gang jeg uploader filen vil det selvfølgelig sige det fordi der er ikke nogen fil at uploade men, har prøvet mere end en gang....
Avatar billede showsource Seniormester
07. august 2008 - 07:42 #1
Hvad med at smide din copy ind EFTER move_uploaded_file() ?
Filen findes vel ikke før da ?
Avatar billede dkfire Nybegynder
07. august 2008 - 07:55 #2
Det kunne også godt være du skulle lave være med at bruge ' rundt om dine variabler.
Hvis du sætter ' rundt om variabler, så fortolker php din variablenavn som en streng og ikke som en variabel.
$fra = "hej med dig"
echo '$fra'; // Udskriver "$fra"
echo $fra; // Udskriver "hej med dig"
echo "$fra"; // Udskriver "hej med dig"

Derfor ret det til
copy( $fra, $til );
Avatar billede dkfire Nybegynder
07. august 2008 - 07:56 #3
lave = lade
Avatar billede janpolsen Nybegynder
07. august 2008 - 09:07 #4
Når man bruger enkelt-plinger ('), så bliver variabler ikke fortolket, derfor skal du som dkfire skriver enten bruge dobbelt-plinger (") eller helt undlade dem.
Avatar billede blackkflyer Nybegynder
07. august 2008 - 14:40 #5
Tak nu virker det.. Tænkte nok det var noget enkelt men efter og have siddet med det i over en time gad jeg ikke mere... Tak for hælpen :D
Avatar billede dkfire Nybegynder
07. august 2008 - 17:04 #6
Det var så lidt. :-)
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