|
| Hvad er der galt med upload koden Fra : anetteogjesper | Vist : 648 gange 10 point Dato : 19-09-05 13:27 |
|
Hej
Vi har indsat en upload kode på denne side:
http://www.xxxxx.dk/konkurrencen.php
og det hele ser faktisk fint ud, men den uploader ingen filer (billeder), men skriver blot:
Citat Fil upload resultat
path: /tmp/phpy2h9sO
name: 48.JPG
type: image/pjpeg
size: 17762
Couldn't copy |
Koden ser sådan ud:
Kode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Upload af fil</title>
</head>
<body>
<form action="http://www.xxxxx.dk/gif/resultat.php" method="POST" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="60000">
Fil til at uploade:
<input type="file" name="fileupload" /><br><br>
<input type="submit" value="upload!" />
</form>
</body>
</html> |
Kode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Upload af fil</title>
</head>
<body>
<h1>Fil upload resultat</h1>
<?php
$file_dir = "http://www.xxxxx.dk/gif";
foreach($_FILES as $file_name => $file_array) {
print "path: ".$file_array['tmp_name']."<br>\n";
print "name: ".$file_array['name']."<br>\n";
print "type: ".$file_array['type']."<br>\n";
print "size: ".$file_array['size']."<br>\n";
if (is_uploaded_file($file_array['tmp_name'])) {
move_uploaded_file($file_array['tmp_name'], "$file_dir/$file_array[name]") or die ("Couldn't copy");
print "file was moved!<br><br>";
}
}
?>
</html> |
| |
| Kommentar Fra : IBM760 |
Dato : 19-09-05 14:19 |
|
Hej anetteogjesper,
(dette er ikke et svar på jeres spørgsmål).
Til gengæld var jeg inde og kigge på jeres hjemmeside og undrede mig over, at det tog forholdsvis lang tid at hente 3 billeder af forretningen (jeg sidder på en hurtig firmaforbindelse).
Alle 3 billeder fylder utroligt meget i forhold til hvad I viser: I har gemt billederne i format 1000 x 1500, men på hjemmesiden viser I dem kun i format 200 x 300.
Hvis det skal gå lidt hurtige bør I tilpasse billederne til den aktuelle visning.
Jeres billeder fylder hver især 700-975 KB, men hvis i "Resizer" bør de ikke fylde mere end 50-60 KB.
Mvh
Ivan
| |
| Kommentar Fra : natmaden |
Dato : 19-09-05 17:36 |
|
ser PHP mappen billederne skulle havne i som skrivebeskyttet ?
Har I GDlib instaleret på serveren. GDLib kan tilpasse billeder !
| |
| Kommentar Fra : natmaden |
Dato : 19-09-05 18:04 |
|
1. mappen gif er låst (php må/kan ikke skrive til den) Efter hvem der må skrive i den, skal sættes med CHMOD , en værdi på 777 vil i første omgang virke,
da mappen så er pivåben for alle.
Fulde kald er som regel ikke tilladt Brug '/gif/resultat.php' i stedet for ' http://www.xxxxx.dk/gif/resultat.php'
og '/gif' i stedet for ' http://www.xxxxx.dk/gif'
Alt efter jeres mappestruktur, skal der muligt ændres lidt i '/gif/resultat.php' og '/gif'
| |
|
Hej
Der er plads nok...
Hvordan ulåser jeg mappen og hvor?
Jeg har ændret kaldende, men det hjalp ikke...
| |
| Kommentar Fra : natmaden |
Dato : 20-09-05 14:13 |
|
Nej det hjælper ikke før mappen er 'skriveklar'
Det er det pgm. som du laver din side med, der kan sætte mappens 'status'.
Lidt i stil med . hvis du h.klikker på en windowsmappe og kikker på egenskaber,
der er så en mulighed for at makere et flueben så mappen er skrivebeskyttet eller ej.
Det gøres lidt forskelligt, efter hvilket pgm. du bruger, som ftp. Men mest normalt er:
H.klik på mappen vælg 'folderproperty' eller 'set folder' eller 'folder access' du bør får et felt hvor et tal kan indtastes. skriv 777.
og tryk OK. Det kan være en god ide, lige at lægge mærke til hvad mappens status var inden.
Ser lige at i det pgm. som jeg bruger (htmlkit), hedder det 'set permissions'
Jeg har lagt et billed af panelet her http://net2620.dk/_pic/chmod.jpg
Ligger xxxxx.dk på webhotel eller på hjemmeserver ?
Mvh. Jørgen
| |
|
Jeg bruger WS_FTP og når jeg trykker CHMOD kommer der en boks op med flere valg muligheder:
Owner: read, write og other
Group: read, write og other
Other: read, write og other
Hvilke skal jeg klikke af?
Jeg har webhotel..
| |
| Kommentar Fra : natmaden |
Dato : 20-09-05 19:11 |
|
En værdi på 777 svarer til at alt er slået til(alle flueben), få først det til at virke.
prøv derefter med 644.
svare til at alle flyeben er sat, undtagen dem i Other.(gæst)
| |
|
Den skriver stadig:
Citat Fil upload resultat
path: /tmp/php15kMQL
name: 100_0279.JPG
type: image/pjpeg
size: 18379
Couldn't copy |
| |
| Kommentar Fra : natmaden |
Dato : 20-09-05 20:39 |
|
hmm.
Jeg må lige efterprøve det på mit eget domæne(på hotel)
hvorfor at jeg spurgte om det var på hotel, var at de forskellige hotellet tillader lidt forskelligt.
andre har begrænsninger for deres egen sikkerheds skyld.
Jeg har kun erfaringer med web10 og b-one
Ang hvordan at tingene er opsat på ens hotel.
prøv dette script på hotellet, som eks. hotelinfo.php
det er ikke sikkert at det kan bruges til noget lige nu, men det er aligevel sådan at opsætningen kan ses.
PS. De data du får retur er personlige.
| |
|
Jeg lavede faktisk en test da jeg lavede det, som jeg fik fra webcafe.dk og der var alt ok
| |
| Accepteret svar Fra : natmaden | Modtaget 10 point Dato : 21-09-05 07:50 |
|
Har lavet en test, men brugt mappenavnet 'pic' og begge php-filer ligger over/udenfor 'pic'..
1. med mappen pic i standart beskyttelse.
path: /var/tmp/phpod1Fvp
name: 102692.jpg
type: image/pjpeg
size: 12878
Warning: move_uploaded_file(): SAFE MODE Restriction in effect. The script whose uid/gid is 12880/80 is not allowed to access / owned
by uid/gid 0/0 in /home/web/xx/yy/5x-fototest/resultat.php on line 19
Couldn't copy
med mappen pic sat til mode 777
Fil upload resultat
path: /var/tmp/phpAtzMqU
name: 102692.jpg
type: image/pjpeg
size: 12878
file was moved!
Strukturen se sådan ud:
mappe
|--- fotoind.php
|--- resultat.php
|
pic(mappe)(777)
|--- billed.jpg
Filerne ser nu sådanne ud
fotoind.php
Kode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Upload af fil</title>
</head>
<body>
<form action="resultat.php" method="POST" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="60000">
Fil til at uploade:
<input type="file" name="fileupload" /><br><br>
<input type="submit" value="upload!" />
</form>
</body>
</html> |
resultat.php
Kode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Upload af fil</title>
</head>
<body>
<h1>Fil upload resultat</h1>
<?php
$file_dir = "./pic";
foreach($_FILES as $file_name => $file_array) {
print "path: ".$file_array['tmp_name']."<br>\n";
print "name: ".$file_array['name']."<br>\n";
print "type: ".$file_array['type']."<br>\n";
print "size: ".$file_array['size']."<br>\n";
if (is_uploaded_file($file_array['tmp_name'])) {
move_uploaded_file($file_array['tmp_name'], "$file_dir/$file_array[name]") or die ("Couldn't copy");
print "file was moved!<br><br>";
}
}
?>
</html> |
Bemærk at stien til pic er ./pic
Håber at det er forståeligt
| |
|
Jeg fik også et tip om at ændre $file_dir til
$file_dir = $_SERVER['DOCUMENT_ROOT'] . "/gif";
dette virkede også
| |
| Kommentar Fra : natmaden |
Dato : 22-09-05 11:57 |
|
ja, $file_dir = $_SERVER['DOCUMENT_ROOT'] . "/gif"; er mere alsidig.
Godt at det virkede.
Hej
Mvh. Jørgen
| |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|