Toon posts:

[PHP] upload probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
/* please niet removen - ik weet dat ie ook in NOS staat, maar daar zeiden ze dat ik 'm hier moest plaatsen
ik heb naar 'schop een modje' gezocht, om deze te moven(?) [had deze namelijk een paar uur eerder ook al gepost, maar is door een mod op non actief gezet], maar dat kon ik nergens vinden.
Hier nogmaals mijn probleem: */

Ik draai thuis zelf een linux server met apache en heb nu een upload scriptje gemaakt wat daar maar niet op wil werken.
Ik draai m'n apache server niet in safe mode, de directory waarin ik 'm probeer te plaatsen bestaat en die heb ik 777 gechmod, dus daar ligt het niet aan.
Dit is hoe ik het doe:
<?php
include "../common.php";

if (!isset($userfile)) die("Er is geen file geselecteerd.<br><br>Klik op terug om het nogmaal te proberen.<br><br><br><center><a href=\"javascript:history.back()\">TERUG</a></center>");

// The directory to place the uploaded file in.
$uploadsDirectory = $root."/fotos/";
// Copy the file to it's new destination
copy ($userfile, $uploadsDirectory.$bestandsnaam) or die($uploadsDirectory.$bestandsnaam);
?>

Als foutmelding krijg ik:
Warning: Unable to open 'C:\\marty.jpg' for reading: No such file or directory in blablabla on line 9
en als ik een file vanuit een subdir probeer te uploaden krijg ik dit:
Warning: Unable to open 'C:\\t\\go.gif' for reading:

Het lijkt me ook dat daar niet C:\\ moet staan maar C:\ en ipv C:\\t\\go.gif, C:\t\go.gif
Anyways,...weet iemand een oplossing?

btw, doordat ik or die($uploadsDirectory.$bestandsnaam); doe zie ik op m'n scherm dat ie zeker naar de goede directory verwijst.
Ik heb overigens ook move_uploaded_file(); geprobeerd, maar dat hielp ook niet - die gaf niet eens een foutmelding, maar uploadde ook niets.

(probeer de file vanaf m'n w2k bak te uploaden)

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 01:39
Wat als je eerst even stripslashes over $userfile heen haalt? Om een of andere stompzinnige reden worden variabelen die 'van buiten' komen van slashes voorzien. Dat zou hier ook gebeurd kunnen zijn.

Het kan trouwens ook uitgezet worden in de config file.

Verwijderd

Probeer bij je <form action> eens iets van enctype="multipart/form-data" neer te zetten, dus:
code:
1
<form action="upload.php" method="post" enctype="multipart/form-data">

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 01:39
Op dinsdag 14 mei 2002 14:36 schreef DjMisterY het volgende:
Probeer bij je <form action> eens iets van enctype="multipart/form-data" neer te zetten
Wat brengt jou ertoe te vermoeden dat er iets mis is met de codering?

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Ik kan het me ook voorstellen hoor! Dat het bestand niet geupload wordt en het daarom niet bestaat.. Ik weet nog dat daar de allereerste keer zelf ook me zat.. Álles werktte ineens toen ik enctype="multipart/form-data" erin pleurde

Verwijderd

Wat brengt jou ertoe te vermoeden dat er iets mis is met de codering?
nou omdat ik gisteren precies dezelfde melding kreeg daarom :)

  • Grum
  • Registratie: Juni 2001
  • Niet online
en dan zeker wel de filename goed doorkrijgen :?

Soultaker .. nooit om beargumentering vragen hier .. da werkt niet :D

Verwijderd

Topicstarter
THNX DJMisterY!!
die enctype verholp het probleem.

wist niet dat dat zoveel invloed kon hebben,
weer wat geleerd...

Verwijderd

Ik ben ook nog maar een newbie op dit gebied hoor maar gisteren liep ik tegen hetzelfde probleem aan dus daarom d8 ik hieraan :)

Verwijderd

Topicstarter
Op dinsdag 14 mei 2002 14:47 schreef DjMisterY het volgende:
Ik ben ook nog maar een newbie op dit gebied hoor maar gisteren liep ik tegen hetzelfde probleem aan dus daarom d8 ik hieraan :)
nou, qua PHP zou ik mezelf geen newbie meer willen noemen, maar het gevolg was dus dat ik alleen maar naar m'n php code keek terwijl de oplossing veel simpeler was. :)
Heb al vaak formuliertjes gemaakt voor upload scriptjes, maar het had nog nooit problemen gegeven in het verleden.
Maargoed, zoals ik al zei: weer wat geleerd

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Ga ff SNEL de manual lezen!! Waarschijnlijk klopt je formulier van geen kant aangezien de lokale lokatie meegegeven wordt ipv het bestand...

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 01:39
Mooi dat 't probleem zo opgelost is, maar ik vraag me nog steeds af wat er nou precies aan de hand is. Het lijkt me, dat als het bestand niet correct geupload is, PHP geen verwijzingen naar dat bestand zou moeten maken. Bovendien snap ik niet dat probleem meestal niet optreed maar 'soms' dus wel.

Misschien heeft iemand daar een idee over?

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Het probleem hier is dat er helemaal geen bestand geupload werd. Alleen de inhoud van het file veld (als het uberhaupt een file veld was) werd meegegeven. Alleen het lokale pad wordt verstuurd (server is unix, dus $userfile zou helemaal nooit een windows pad kunnen zijn. Daarnaast staat magic_gpc waarschijnlijk aan wat de \\'s verklaart). Dit verklaard ook waarom een subdir invloed heeft op de waarde van $userfile.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1