Avatar billede qualon1 Nybegynder
16. oktober 2004 - 17:17 Der er 5 kommentarer og
2 løsninger

Få php til at upload mere end EN fil

Hej...
Jeg prøvet at lave et system der uploader 3 billeder på en gang.. Men den uploader kun en... selvom jeg kalder funktionen på alle...

Den uploader den der kommer først, det vil sige hvis jeg ikke udfylde billede 1 så uploader den 2'eren men uploader ikke alle...

koden ser sådan ud:

<form enctype='multipart/form-data' action=admin.php?mode=billeder&action=add&do=add&antal=3 method=post>

Billede1 <input type=file name=billedea><br>
Billede2 <input type=file name=billedeb><br>
Billede3 <input type=file name=billedec><br>
<input type=submit value=Upload></form>

plz help
Avatar billede baitianlong Nybegynder
16. oktober 2004 - 17:34 #1
Prøv med det her:

<?php
if(isset($_FILES['billedea'])) {
  if($_FILES['billedea']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede a");
  } else {
      move_uploaded_file($_FILES['billedea']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedea']['name']);
      print("Billede a uploaded");
}

if(isset($_FILES['billedeb'])) {
  if($_FILES['billedeb']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede b");
  } else {
      move_uploaded_file($_FILES['billedeb']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedeb']['name']);
      print("Billede b uploaded");
}

if(isset($_FILES['billedec'])) {
  if($_FILES['billedec']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede c");
  } else {
      move_uploaded_file($_FILES['billedea']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedea']['name']);
      print("Billede c uploaded");
}
?>
<html>
<form enctype="multipart/form-data" action="admin.php?mode=billeder&action=add&do=add&antal=3" method="post">

Billede1 <input type="file" name="billedea"><br>
Billede2 <input type="file" name="billedeb"><br>
Billede3 <input type="file" name="billedec"><br>
<input type="submit" value="Upload"></form>
</html>

:)
Avatar billede baitianlong Nybegynder
16. oktober 2004 - 17:36 #2
Hov, der står billede a i stedet for billedec i move_uploaded_file 3. gang!
Avatar billede qualon1 Nybegynder
16. oktober 2004 - 17:44 #3
jamen det er jo ikke problemet med at gemme... problemmet er at den ikke uploader det hele...
Avatar billede baitianlong Nybegynder
16. oktober 2004 - 17:59 #4
Jeg har lige testet min kode, og den virker fint. Alle 3 filer bliver uploaded.

Der mangler dog lige en } tre steder. Her er en rettet version - DEN VIRKER:

<?php
if(isset($_FILES['billedea'])) {
  if($_FILES['billedea']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede a");
  } else {
      move_uploaded_file($_FILES['billedea']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedea']['name']);
      print("Billede a uploaded");
  }
}

if(isset($_FILES['billedeb'])) {
  if($_FILES['billedeb']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede b");
  } else {
      move_uploaded_file($_FILES['billedeb']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedeb']['name']);
      print("Billede b uploaded");
  }
}

if(isset($_FILES['billedec'])) {
  if($_FILES['billedec']['error'] != UPLOAD_ERR_OK) {
      print("Det gik galt med billede c");
  } else {
      move_uploaded_file($_FILES['billedec']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/".$_FILES['billedec']['name']);
      print("Billede c uploaded");
  }
}
?>
<html>
<form enctype="multipart/form-data" action="<?= $_SERVER['PHP_SELF'] ?>" method="post">

Billede1 <input type="file" name="billedea"><br>
Billede2 <input type="file" name="billedeb"><br>
Billede3 <input type="file" name="billedec"><br>
<input type="submit" value="Upload"></form>
</html>
Avatar billede sukos Juniormester
16. oktober 2004 - 18:07 #5
<form enctype='multipart/form-data' action=admin.php?mode=billeder&action=add&do=add&antal=3 method=post>

Billede1 <input type=file name=billede[]><br>
Billede2 <input type=file name=billede[]><br>
Billede3 <input type=file name=billede[]><br>
<input type=submit value=Upload></form>

<?php
if(isset($_FILES["billede"])) {

$dist = "/fuld/sti/til/dir/";

for($i = 0; $i < count($_FILES["billede"]["name"]); $i++) {

    if ($_FILES["billede"]["name"][$i] !="") {
        if(is_uploaded_file($_FILES["billede"]["tmp_name"][$i])) {
        move_uploaded_file($_FILES["billede"]["tmp_name"][$i], $dist . $_FILES["upfile"]["name"][$i]);
        }
    }
}

}
?>
Avatar billede sukos Juniormester
16. oktober 2004 - 18:12 #6
Det er nu heller ikke nogen dum ide at skrive html-koder med " (+ en lille bøf)

<form enctype="multipart/form-data" action="admin.php?mode=billeder&action=add&do=add&antal=3" method="post">

Billede1 <input type="file" name="billede[]"><br>
Billede2 <input type="file" name="billede[]"><br>
Billede3 <input type="file" name="billede[]"><br>
<input type="submit" value="Upload"></form>

<?php
if(isset($_FILES["billede"])) {

$dist = "/fuld/sti/til/dir/";

for($i = 0; $i < count($_FILES["billede"]["name"]); $i++) {

    if (trim($_FILES["billede"]["name"][$i]) !="") {
        if(is_uploaded_file($_FILES["billede"]["tmp_name"][$i])) {
        move_uploaded_file($_FILES["billede"]["tmp_name"][$i], $dist . $_FILES["upfile"]["name"][$i]);
        }
    }
}

}
?>
Avatar billede baitianlong Nybegynder
25. november 2004 - 18:22 #7
Lukketid?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester