1. opgelost Slotje plz

Re: opgelost Slotje plz

<?php error_reporting(E_ALL);
$map = "./store/"; // Map waar alles geupload wordt
function upload_file($fTmp, $fNew) { if(file_exists($fNew)) { return false; } else { copy($fTmp, $fNew); return true; } }
if(IsSet($_POST['submit'])) { for($i = 0; $i < count($_FILES['bestand']['name']); $i++) { if(IsSet($_FILES['bestand']['name'][$i]) && is_uploaded_file($_FILES['bestand']['tmp_name'][$i])) { if(!upload_file($_FILES['bestand']['tmp_name'][$i], $map.$_FILES['bestand']['name'][$i])) { $error = true; } } }
if(IsSet($error)) { echo "Mislukt!"; } else { echo "Gelukt!"; } } else { if(IsSet($_POST['aantal'])) { $aantal = $_POST['aantal']; } else { $aantal = 5; }
?> <form action="" method="post"> <input type="text" name="aantal" value="<?php echo $aantal; ?>" size="1"> <input type="submit" name="aantal_submit" value="Aantal bestanden"> </form> <br><br> <form action="" method="post" enctype="multipart/form-data"> <?php for($i = 0; $i < $aantal; $i++) { ?> Bestand <?php echo $i + 1; ?>: <input type="file" name="bestand[<?php echo $i; ?>]"><br> <?php } ?> <input type="submit" name="submit" value="Uploaden"> </form> <?php } ?>

Ik heb een upload script maar ik kan het maar niet zo krijgen dat je kunt overwriten. Wie kan me ff helpen. ;)
  • <?php error_reporting(E_ALL);
    $map = "./store/"; // Map waar alles geupload wordt
    function upload_file($fTmp, $fNew) { if(file_exists($fNew)) { return false; } else { copy($fTmp, $fNew); return true; } }
    if(IsSet($_POST['submit'])) { for($i = 0; $i < count($_FILES['bestand']['name']); $i++) { if(IsSet($_FILES['bestand']['name'][$i]) && is_uploaded_file($_FILES['bestand']['tmp_name'][$i])) { if(!upload_file($_FILES['bestand']['tmp_name'][$i], $map.$_FILES['bestand']['name'][$i])) { $error = true; } } }
    if(IsSet($error)) { echo "Mislukt!"; } else { echo "Gelukt!"; } } else { if(IsSet($_POST['aantal'])) { $aantal = $_POST['aantal']; } else { $aantal = 5; }
    ?> <form action="" method="post"> <input type="text" name="aantal" value="<?php echo $aantal; ?>" size="1"> <input type="submit" name="aantal_submit" value="Aantal bestanden"> </form> <br><br> <form action="" method="post" enctype="multipart/form-data"> <?php for($i = 0; $i < $aantal; $i++) { ?> Bestand <?php echo $i + 1; ?>: <input type="file" name="bestand[<?php echo $i; ?>]"><br> <?php } ?> <input type="submit" name="submit" value="Uploaden"> </form> <?php } ?>

    Ik heb een upload script maar ik kan het maar niet zo krijgen dat je kunt overwriten. Wie kan me ff helpen. ;)
  • bing bang bong

    op deze topic kan een …. slotje!
  • Bedankt koekiemonster en de rest want het is opgelost. Deze kan dus dicht.
  • komt omdat je de check eruit haalt.
    als je die check nu laat staan en op die plek, bijvoorbeeld een remove doe van de file in de directory $map

    Dus eerst die file verwijderen die al op de server staat en dan de nieuwe uploaden.

    de return false weghalen en op die plek je code in plaatsen.
  • Het script doet het perfect alleen, hij overwrite niet. En dat wil ik juist. Zo geeft het geen foutmeldingen, alleen als je er iets aan veranderd.

    Ik had die check bij: if(file_exists($fNew)) { er uit gehaald, dacht ik, maar dan geeft hij wel een error.
  • welke fout krijg je? dat is wel handig nl…

    edit; snel doorgelezen, CHMOD 777 eens op je upload dir? dit kan je evt. ook met php doen op de volgende manier;

    - chmod $directory 777
    - copy $tmp naar $filenaam
    - chmod $directory 755

    maar misschien is dit 't probleem niet eens :)
  • kick

Dit topic is gesloten. Er kan niet meer gereageerd worden.