[php] loop om files te uploaden

Pagina: 1
Acties:

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
lui,

ik zou graag een loop gebruiken om de uit een form verkregen waardes te gebruiken voor een fileupload.
Kan, zul je zeggen. Lijkt mij ook, maar kan ff niet voor me halen hoe ik dat opbouw.

Eerst maar es wat code:

Het form dat als kenmerk bezit dat ik maximaal 5 plaatjes kan uploaden, de input names bestaan uit plaatje+nummer:
code:
1
2
3
4
5
6
...alleen relevante code...
<input type="file" name="plaatje1" size="50"><br>
<input type="file" name="plaatje2" size="50"><br>
<input type="file" name="plaatje3" size="50"><br>
<input type="file" name="plaatje4" size="50"><br>
<input type="file" name="plaatje5" size="50">

de value's worden doorgeföhnd naar een andere pagina waar de zaak behandeld wordt.
Als basis diende deze code (die hier werkt):
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?
include("db.php");
   $query = "SELECT id FROM projecten ORDER BY id DESC LIMIT 1";
   $result =mysql_query($query);
   $row = mysql_fetch_array ($result);
   $laatste_id= $row[id]; 
   
      
   echo "P1=".$p1."<br>";

   if (is_uploaded_file($p1) &amp;&amp; $HTTP_POST_FILES['p1']['type']=="application/x-shockwave-flash")
    {

      $final_naam="../../uploaded/".$laatste_id."_1.swf";
      echo $final_naam;
      copy($p1, $final_naam);
    }
    else
    {
        echo "<BR>mislukt...";
    }
?>

kan vast mooier, maar dat komt wel..

Al experimenterend kwam ik hier op uit, wat logischerwijs niet werkt anders post ik hier niet :P
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?
 include("db.php");
   $query = "SELECT id FROM projecten ORDER BY id DESC LIMIT 1";
   $result =mysql_query($query);
   $row = mysql_fetch_array ($result);
   $laatste_id= $row[id];
  
   
   $count =1;
   
    while ($count <5)
        {   
            
            $plaatje_count = "$plaatje".$count;
            
    
       if (is_uploaded_file($plaatje_count) &amp;&amp; $HTTP_POST_FILES['plaatje'.$plaatje_count.'']['type']=="application/x-shockwave-flash")
        {

          $final_naam="../../uploaded/".$laatste_id."_".$plaatje_count.".swf";
          echo $final_naam;
          move_uploaded_file($plaatje_count, $final_naam);
        }
        else
        {
            echo "mislukt...<BR>";
        }
        
    $count = $count + 1;
    }
?>

de vraag is nu:
- hoe bouw ik de syntax om per loop de variabelenaam $plaatje te voorzien van het corresponderende nummer?
Want dat is waar het mis gaat lijkt me...

TIA

www.jurgroessen.nl


  • RdeTuinman
  • Registratie: Mei 2001
  • Laatst online: 16-08 07:25
Was dat niet iets als:
PHP:
1
2
3
<?
$plaatje{$count};
?>

Waarbij die $count dus varieert van 1 tot 5 ofzo...

Hang me er niet aan op hoor.

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
mmmnee, RdeTuinman dat lijkt niet te werken...


verder nog suggesties van php-guru's?

www.jurgroessen.nl


Verwijderd

Variable variables:

$varname="plaatje".$count;

vervolgens

$$varname

gebruiken.

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
aha... heb ik ook een keer zo toegepast, alleen gebruikte ik die dubbele string niet bij de aanroep van de verkregen variabele...

thnx

www.jurgroessen.nl