[PHP4] Fileuploads werken niet

Pagina: 1
Acties:

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Voordat iedereen weer begint: ik heb gezocht en niet gevonden, ik heb in de manual gekeken, ik heb op andere sites gekeken, ik heb uploads in php.ini aangezet.


Mijn probleem is eigenlijk heel vreemd. Het maakt niet uit welk upload script ik draai, maar geen van allen werken ze. Ik kom er gewoon niet uit waarom, dus ik vraag me af of er iemand suggesties heeft waarom de uploads niet zouden kunnen werken.

Ik draai Windows XP, en heb de upload map etc. alle mogelijke rechten gegeven. De upload-dir in php.ini staat goed, en file uploads staan aan. Als server draai ik Apache 1.3.20.

Is er iemand die enig idee heeft wat het nog meer kan zijn?

Alvast bedankt voor de reacties.

Verwijderd

code?

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Op woensdag 20 maart 2002 21:23 schreef steenz het volgende:
(...)
Het maakt niet uit welk upload script ik draai, maar geen van allen werken ze.
(...)
Zoals gezegd, heb ik dus een heeeeeeeeleboel scripts van phpfreakz en andere sites geprobeerd, die bij andere mensen wel werken, maar bij mij niet. Ik denk dus niet dat code erg belangrijk is... Denk eerder dat het probleem hem in de rechten ofzo zit...

P.S. Ik draai trouwens geen firewall tijdens het testen (ook niet die van Windows XP standaard), dus dat is het ook niet.

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
ja, het is wel makkelijk als je code, of de error erbij geeft.

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
De enige errors die ik krijg zijn of errors gedefinieerd door de scripts als copy/move van de files niet goed gaat, of een vage error als "file upload failed" ofzo. Helaas niet echt iets nuttigs.

En wat codes betreft, je zou kunnen zeggen dat ik bijvoorbeeld iedere variant uit de script-library van phpfreakz heb geprobeerd, dus bijv:
http://www.phpfreakz.com/library.php?sid=2139
http://www.phpfreakz.com/library.php?sid=1571
http://www.phpfreakz.com/library.php?sid=1695
http://www.phpfreakz.com/library.php?sid=1599
http://www.phpfreakz.com/library.php?sid=1722
Enz... Maar denk dus niet echt dat dat het probleem is :)

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Ondanks dat zal ik een voorbeeld geven van een scriptje wat van php.net komt:
Wat ik hierbij kan melden is dat bij de check
if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name']))
altijd onwaar wordt aangenomen; het is niet zo dus. (weet niet of dit representatief is, maar in dit geval aangezien men code wil zien)
PHP:
1
<?//    Complete working file upload example, Win2KPro, Apache 1.3x, PHP 4.xfunction handleupload() {    global $HTTP_POST_FILES;$test = $HTTP_POST_FILES['userfile']['tmp_name'];echo "$test</p>";    if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name']))    {        $filename = $HTTP_POST_FILES['userfile']['tmp_name'];        print "$filename was uploaded successfuly";        $realname = $HTTP_POST_FILES['userfile']['name'];        print "realname is $realname";        print "copying file to uploads dir";        copy($HTTP_POST_FILES['userfile']['tmp_name'],"/".$realname);    }    else    {        echo "Possible file upload attack: filename" .$_FILES['userfile']['name'] . ".";    }}?><html><body><?phpif ($act == "upload") {    handleupload();}?><form ENCTYPE="multipart/form-data" method="POST"action="ultest.php?act=upload">File:<INPUT TYPE="FILE" NAME="userfile"SIZE="35"><input type="hidden" name="MAX_FILE_SIZE"value="1000000"><input type="submit" value="Upload"name="B1">Please click only <b>once</b> and wait for confirmation</form><a href=ultest.php>clear form</a></body></html>?>

  • martinvw
  • Registratie: Februari 2002
  • Laatst online: 14-12-2025
Heb je wel voldoende schrijfrechten in het directory.

Verwijderd

Hier werken de uploads nochthans perfect hoor, ook in WIN XP.

Ik gebruik de volgende, heel simplistische code:
PHP:
1
<?<form enctype="multipart/form-data" method="post" action="files.php?action=addsubmit">... rest van het formuliertje ...</form>if ($action == addsubmit) {        if (is_uploaded_file($bestand))        copy($bestand, "uploads/$bestand_naam");mysql_query("INSERT INTO postedfiles VALUES('','$bestand_naam','$user_id','$bestand_info')"); ?>

TIP: vergeet je chmod niet goed te zetten! (kan je makkelijk met eender welk FTP programmatje)

Verwijderd

Op woensdag 20 maart 2002 21:39 schreef steenz het volgende:
...
Zijn die variabelen, zoals $HTTP_POST_FILES['userfile']['tmp_name'] wel gekend in jou functie handleUpload() ?

EDIT: negeer deze post maar, ik zag "global $HTTP_POST_FILES;" niet staan.. komt waarschijnlijk omdat ik een grote afkeer heb van globale variabelen + dat het net onder de commentaar lijn stond, en dat ik het dus daardoor waarschijnlijk niet gelezen heb ;) Sorry!

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Bedankt voor de reacties:

- schrijfrechten heb ik wel, ik draai dus m'n eigen webserver en heb iedereen full control gegeven op die mappen om het te testen (ftp programma is dus ook niet echt nuttig)
- de variabelen waar je het over hebt worden in de functie uit het voorbeeld wel degelijk herkend; ['name'] heeft netjes de waarde die hij hoort te hebben maar ['tmp_name'] heeft als waarde 'none'. daaruit maak ik op dat het uploaden van de file al helemaal niet gelukt is...

Verwijderd

Op woensdag 20 maart 2002 21:48 schreef steenz het volgende:
Bedankt voor de reacties:

- schrijfrechten heb ik wel, ik draai dus m'n eigen webserver en heb iedereen full control gegeven op die mappen om het te testen (ftp programma is dus ook niet echt nuttig)
- de variabelen waar je het over hebt worden in de functie uit het voorbeeld wel degelijk herkend; ['name'] heeft netjes de waarde die hij hoort te hebben maar ['tmp_name'] heeft als waarde 'none'. daaruit maak ik op dat het uploaden van de file al helemaal niet gelukt is...
Je hebt schrijfrechten in de "root", maar zeker dat je directory attributes van DIE directory goed staan, want ik weet niet juist hoe het werkt, maar werkt een webserver niet via een guest account? Zet anders gewoon voor de testen je upload directory eens op chmod 777, dan weet je het zeker?

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Euh... Ik heb het juist over 'die' directory, en dat weet ik zeker.... (permissies dus voor 'iedereen', ook guest accounts)
Maar goed, ik heb geen flauw idee hoe ik de schrijfrechten van mijn webserver vanaf mijn pc zomaar op chmod 777 kan zetten... Ik draai geen ftp server die iets met die mappen te maken heeft namelijk...

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 09-09 14:51

thomaske

» » » » » »

kijk eens in je apache log-files of je daar wat kan vinden..

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
Op woensdag 20 maart 2002 22:05 schreef thomaske het volgende:
kijk eens in je apache log-files of je daar wat kan vinden..
Nope, niets, geen errors... wel een goed idee.

  • steenz
  • Registratie: Oktober 2000
  • Laatst online: 21-09-2024
OK, de mappen hebben dus alle mogelijke schrijfrechten in Windows XP, ik draai geen firewall, de code klopt in principe en file uploads staan aan in PHP...

Wat kan ik nou nog missen :?
Pagina: 1