login  Naam:   Wachtwoord: 
Registreer je!
 Forum

File upload werkt niet lokaal

Offline RutgerB - 03/05/2009 13:06 (laatste wijziging 03/05/2009 14:15)
Avatar van RutgerBNieuw lid Hoi


Ik heb een eenvoudige file upload gemaakt met deze code:

  1. [co<?php
  2. if(isset($_FILES['bestand'])) {
  3. move_uploaded_file($_FILES['bestand']['tmp_name'], "bestanden/".$_FILES['bestand']['name']);
  4. echo "<p>Het bestand is opgeslagen</p>";
  5. }
  6. ?>
  7. <form action="" method="post" enctype="multipart/form-data">
  8. <input type="file" name="bestand"><br>
  9. <input type="submit" name="submit" value="Upload">
  10. </form>


Als ik deze online plaats werkt het perfect. Maar op mijn lokale testserver doet dit niets. Er verschijnt gewoon het bericht "het bestand is opgeslagen", maar dat is niet het geval. Er verschijnt geen error.

Ik gebruik XAMPP als lokale server. Misschien iets verkeerd hiermee?



Alvast bedankt
Rutger

9 antwoorden

Gesponsorde links
Offline NataschaV - 03/05/2009 13:08
Avatar van NataschaV PHP interesse Gebruik code-tags!
Offline RutgerB - 03/05/2009 13:09
Avatar van RutgerB Nieuw lid Ik had php tags gebruikt maar daarmee werd mn hele code onleesbaar :/ Misschien een forum bug..
Offline NataschaV - 03/05/2009 13:16
Avatar van NataschaV PHP interesse Zet hij hem niet in een andere map misschien?
Offline Bart - 03/05/2009 13:17 (laatste wijziging 03/05/2009 13:18)
Avatar van Bart PHP expert
  1. <?php
  2. if(isset($_FILES['bestand'])) {
  3. move_uploaded_file($_FILES['bestand']['tmp_name'], "bestanden/".$_FILES['bestand']['name']);
  4. echo "<p>Het bestand is opgeslagen</p>";
  5. }
  6. ?>
  7. <form action="" method="post" enctype="multipart/form-data">
  8. <input type="file" name="bestand"><br>
  9. <input type="submit" name="submit" value="Upload">
  10. </form>
Geen enkel probleem om codetags te gebruiken met bovenstaande code..
Zet eens error_reporting(E_ALL); boven je script (binnen PHP tags dus).
Offline RutgerB - 03/05/2009 13:30
Avatar van RutgerB Nieuw lid Ik heb error_reporting(E_ALL) erbij gezet maar dat maakt geen verschil.

Natascha, het bestand komt ook niet in een andere map (zoeken met spotlight levert enkel het originele bestand op).
Offline Wim - 03/05/2009 14:19
Avatar van Wim Crew algemeen Heb je genoeg rechten?
Offline RutgerB - 03/05/2009 14:22
Avatar van RutgerB Nieuw lid Bedoel je gewoon rechten op die folder? Ik dacht van wel, maar ik zal dat alvast nog eens nakijken..
Offline Martijn - 03/05/2009 14:53
Avatar van Martijn Crew PHP "bestanden/".$_FILES['bestand']['name']

volgens mij heeft ['name'] geen extensie, dus als je foto.jpg opload, word het foto, zonder '.jpeg'
Offline Bart - 03/05/2009 14:57 (laatste wijziging 03/05/2009 15:00)
Avatar van Bart PHP expert
DeviourSoul schreef:
"bestanden/".$_FILES['bestand']['name']

volgens mij heeft ['name'] geen extensie, dus als je foto.jpg opload, word het foto, zonder '.jpeg'
Dat maakt helemaal niets uit, dan zou het gewoon alsnog in die map aanwezig moeten zijn, alleen dan niet als herkenbaar bestand. Dus FOTO - BESTAND ipv FOTO - AFBEELDING.

@TS:
Gebruik eens PHP.net: chmod om de rechten op de map juist in te stellen, dan liefst 664 of 777.
Probeer ook eens onderstaande code:

  1. <?php
  2. if(isset($_FILES['bestand'])) {
  3. if(!move_uploaded_file($_FILES['bestand']['tmp_name'], "bestanden/".$_FILES['bestand']['name']))
  4. echo "<p>Er ging iets mis bij het verplaatsen.</p>";
  5. }
  6. }
  7. ?>
  8. <form action="" method="post" enctype="multipart/form-data">
  9. <input type="file" name="bestand"><br>
  10. <input type="submit" name="submit" value="Upload">
  11. </form>
Hier zie je dat ik gebruik heb gemaakt van "!" en een andere tekst in de if-lus. Het uitroep teken zorgt ervoor dat het statement dit doet:
ALS het verplaatsen van de file MISLUKT ("!") echo dan een foutmelding.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.44s