file upload

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

SQL Database ontwikkelaar

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

PHP Developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

Bekijk vacature »

IoT Software Developer PHP

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een IoT software developer met kennis van PHP. In deze rol wordt je verantwoordelijk voor het vernieuwen van het multimedia platform van een super tof bedrijf in Breda. Je gebruikt PHP als programmeerlaag, en bent in staat om de helicopterview te pakken / projectmatig te werken. Jouw werkzaamheden zien er als volgt uit: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "intern" ontwikkelde multimedia platform. Je neemt de lead in het moderniseren van het platform door het deels opnieuw op te zetten of

Bekijk vacature »

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Als developer bouw je in DevOps teams aan enterprise applicaties, nieuwe IOT, Chatbots of AI oplossingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren in dit vakgebied. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij vorig jaar Microsoft Partner of the year geworden.

Bekijk vacature »

C# .Net Developer

Dit ga je doen Het bouwen van Api's; Nieuwe oplossingen bouwen met C# .Net; De huidige software uitbouwen met C# .Net; Meewerken in projecten; Meedenken aan de toekomstplannen en verbeteringen; Onderdeel van het Scrum Team. Hier ga je werken Onze klant is een dienstverlenende organisatie voor diverse soorten organisaties in Nederland. Ze zijn van oorsprong een familiebedrijf en er is een open cultuur. Ze zijn vooruitstrevend op IT gebied en hebben een eigen inhouse development team van circa 11 man. Je komt hier te werken in het subteam .Net Core. Hier werken ze volgens scrum met de nieuwste technieken en

Bekijk vacature »

Front-End React Developer

As a Front-End React Developer you improve the user-experience of our web applications for your colleagues in Coolblue. How do I become a Front-End React Developer at Coolblue? As a Front-End React Developer you are responsible for developing user interface components and implementing them using React.js concepts and workflows. You work with the UX Designer and get energy from coming up with creative solutions and present these within the team. During the day you gather and welcome feedback on your technical and soft skills. Would you like to become a Front-End React Developer at Coolblue? Read below if the job

Bekijk vacature »

Junior Front end developer

Functie Jij als developer gaat ons helpen onze producten verder te ontwikkelen en in te zetten in de markt. Op dit moment bestaat ons SaaS product uit 3 componenten die zowel los als in een pakket gekocht kunnen worden. Het gaat hier om een online kaartapplicatie, een workflow tool en een monitoring tool. Momenteel zijn wij 3 jaar geleden gestart met de ontwikkeling. De tech-stack waarmee we werken is voornamelijk Javascript, Vue.js en Python. Daarnaast gebruiken wij FaundaDB als database en werken we veel met GIS applicaties. De uitdaging die we momenteel hebben is dat we momenteel een intern team

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving Startende Software Ontwikkelaar gezocht met kennis van C# .NET! Ben jij net klaar met je opleiding en ben je op zoek naar je eerste echte werkervaring? Of heb jij al enige werkervaring maar ben toe aan iets nieuws? Dan is dit de perfecte kans voor jou! Wij zoeken namelijk een Junior Software Ontwikkelaar die klaar is voor een nieuwe uitdaging bij een leuke werkgeven in de regio Zeist. In deze functie werk jij vaak aan verschillende projecten en ga je bij klanten op bezoek. Ben jij op zoek naar een functie met uitdaging, diversiteit en verantwoordelijkheid? Dan is

Bekijk vacature »

Java Programmeur

Functie Heb jij altijd al samen willen werken met ervaren java ontwikkelaars dan hebben wij hier de ultieme kans voor jou! Voor een opdrachtgever in omgeving van Naaldwijk zijn wij op zoek naar uitbreiding van het vaste ontwikkel team. Je zult je hier voornamelijk bezig gaan houden met; Wijzigingsverzoeken van klanten uitvoeren, hier wordt je diep in betrokken; Samen met consultants sluit je aan bij gesprekken met klanten, voor alle projecten; Je schakelt veel met consultants, wat is de behoefte van de klant? Hoe kan je hierop integreren?; Het framework moet naar de Cloud gebracht worden, je wordt betrokken bij

Bekijk vacature »

Front end developer

Functie Jij als ervaren Front end developer bent een expert het gebied van Javascript en React. Je wordt onderdeel van een multidisciplinair team bestaande uit een PO, twee Front end developers, een DevOps/Back end developer, een UX/UI designer en een projectmanager. Verder is er iemand verantwoordelijk voor de HR en is de algemeen directeur nauw betrokken bij alle projecten. Dagelijks hou jij je bezig met de verschillende projecten die zijn opgenomen in de sprint. Daarnaast denk je mee over mogelijke oplossingen om de behoefte van de klant op de beste manier in te vullen. Verder spar jij intern met collega’s

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Rotterdam! Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! Binnen deze rol houdt jij je met het volgende bezig: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »
Mitchel V

Mitchel V

27/06/2010 17:14:03
Quote Anchor link
Hallo.

Zelf ben ik niet zo bekend met het uploaden van een file.
Maar ik loop tegen het volgende probleem op.

Ik wil controleren of een bestand is ingevoerd bij de input, maar dat gaat ergens fout.
Zelf weet ik niet hoe ik dit kan oplossen, zou iemand mij kunnen helpen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
<?php

$aantalp
= 0;
for ($i = 1; $i <= $_POST['aantal']; $i++) {
    $imagename = basename($_FILES['file']['name'.$i]);
    if(!$imagename == ""){
        $aantalp = $aantalp + 1;
    }

    echo $imagename;
}

$i = 0;
if($aantalp == 0){
    $error .= "Het is verplicht om minimaal <u>1</u> product toe te voegen aan een factuur.<br>";
}

if(!$error == ""){
    echo '<b>Foutmelding:</b><br>'.$error;
}
else{
// Rest van de code.
}

echo '<form method="post" enctype="multipart/form-data"><table>
<tr>
    <td></td>
    <td>Bijlage</td>
    <td>Omschrijving</td>
</tr>'
;

for ($i = 1; $i <= $_POST['aantal']; $i++) {
    echo '<tr>
            <td>'
.$i.'</td>
            <td><input name="file'
.$i.'" type="file" /></td>
            <td><input type="text" name="omschrijving'
.$i.'" value="'.$_POST['omschrijving'.$i].'" size="35"></td>
          </tr>'
;
    }

echo '<tr><td colspan="5"><br></td></tr>';

echo '<tr><td colspan="1"><input type="hidden" name="aantalproducten" value="'.$i.'"></td><td colspan="4"><input type="submit" name="submit" value="Zet factuur klaar"></td></tr>
</table>
</form>'
;
?>
 
PHP hulp

PHP hulp

01/06/2023 07:05:04
 
Noppes Homeland

Noppes Homeland

27/06/2010 17:34:18
Quote Anchor link
name="file'.$i.'"

dit is toch echt niet handig, je kan dan beter
name="file[]" er van maken

En als je dan een kijkt naar de var_dump($_FILES), dan zie je hopelijk zelf wel hoe en wat.

Zo niet dan kijk je maar naar dit:
http://wiki.phpfreakz.nl/Upload
 
Mitchel V

Mitchel V

27/06/2010 18:40:05
Quote Anchor link
Ok,

Maar hoe kan ik ze in de POST dan uitlezen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
<?php
$aantal
= 5;

if($_SERVER['REQUEST_METHOD'] == 'POST'){
    if ($_FILES["file"]["error"] > 0){
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
else{
        $_FILES["file"]["name"] = date("dmYHis").$_FILES["file"]["name"];
        if (file_exists("uploadfactuur/" . $_FILES["file"]["name"])){
            echo $_FILES["file"]["name"] . " already exists. ";
        }
else{
            move_uploaded_file($_FILES["file"]["tmp_name"], "uploadsfactuur/" . $_FILES["file"]["name"]);
            echo "Stored in: " . "uploadfactuur/" . $_FILES["file"]["name"];
        }
    }
}

?>


<html>
<body>

<form method="post"
enctype="multipart/form-data">
<table>
<tr><td></td><td>Bestand</td><td>Omschrijving</td></tr>
<?php
for ($i = 1; $i <= $aantal; $i++) {
    echo '<tr>
            <td>'
.$i.'</td>
            <td><input name="file[]" type="file" /></td>
            <td><input type="text" name="omschrijving[]" value="'
.$_POST['omschrijving'.$i].'" size="35"></td>
          </tr>'
;
    }

?>

<tr><td></td><td><input type="submit" name="submit" value="Submit" /></td><td></td></tr>
</table>
</form>

</body>
</html>
 
Jan geen

Jan geen

27/06/2010 19:32:26
Quote Anchor link
Door middel van een foreach
 
Mitchel V

Mitchel V

27/06/2010 19:52:05
Quote Anchor link
Ok, Ik heb het geprobeerd maar ik krijg de volgende fout:
Return Code: Array
Return Code: Array
Return Code: Array
Return Code: Array
Return Code: Array

wat doe ik fout?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
41
<?php
$aantal
= 5;
if($_SERVER['REQUEST_METHOD'] == 'POST'){
    foreach($_FILES["file"]["name"] as $key => $value){
        if ($_FILES["file"]["error"] > 0){
            echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
else{
            if($_FILE["file"]["size"] > 0){
                $_FILES["file"]["name"] = date("dmYHis").$value;
                if (file_exists("uploadfactuur/" . $_FILES["file"]["name"])){
                    echo $_FILES["file"]["name"] . " already exists. ";
                }
else{
                    move_uploaded_file($_FILES["file"]["tmp_name"], "uploadsfactuur/" . $_FILES["file"]["name"]);
                    echo "Stored in: " . "uploadfactuur/" . $_FILES["file"]["name"];
                }
            }
        }
    }
}

?>


<html>
<body>

<form method="post" enctype="multipart/form-data">
<table>
<tr><td></td><td>Bestand</td><td>Omschrijving</td></tr>
<?php
for ($i = 1; $i <= $aantal; $i++) {
    echo '<tr>
            <td>'
.$i.'</td>
            <td><input name="file[]" type="file" /></td>
            <td><input type="text" name="omschrijving[]" value="'
.$_POST['omschrijving'.$i].'" size="35"></td>
          </tr>'
;
    }

?>

<tr><td></td><td><input type="submit" name="submit" value="Submit" /></td><td></td></tr>
</table>
</form>
</body>
</html>
 
Noppes Homeland

Noppes Homeland

27/06/2010 20:37:56
Quote Anchor link
je hebt geen eens keken naar een var_dump($_POST) / var_dump($_FILES).

als je dat bekeken hebt dan zal het ook zo moeten zjn dat je ziet wat je fout gedaan hebt.
 
Mitchel V

Mitchel V

27/06/2010 21:25:30
Quote Anchor link
ik heb gekeken op: http://nl.php.net/var_dump
maar nee, ik zie niet wat ik fout doe :S
 
Jelmer -

Jelmer -

27/06/2010 23:21:57
Quote Anchor link
$_FILES['file']['name'] is een array, zoals je zo te zien weet, want je gebruikt hem als argument voor de foreach-lus. Maar $_FILES['file']['error] is dat ook, en $_FILES['file']['size'] ook. Als je daar de juiste waarde uit wilt pakken, moet je die arrays benaderen via hun key, $key die je foreach-lus oplevert.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
foreach($_FILES['file']['name'] as $key => $file_name) {
   echo 'Bestand ' . $_FILES['file']['name'][$key] . ' is tijdelijk opgeslagen als ' . $_FILES['file']['tmp_name'][$key];
}

?>


Als je vlak voor je foreach-lus var_dump($_FILES) zet, dan laat PHP je zien hoe de $_FILES array is opgebouwd. Dat bedoelde Noppes.
 
Mitchel V

Mitchel V

28/06/2010 00:09:31
Quote Anchor link
Ohh ok,

Maar dan snap ik de output niet van de var_dump..
Ik upload 1 bestand, nl.gif

dan krijg ik:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
array(1) { ["file"]=> array(5) { ["name"]=> array(5) { [0]=> string(6) "nl.gif" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["type"]=> array(5) { [0]=> string(9) "image/gif" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["tmp_name"]=> array(5) { [0]=> string(14) "/tmp/phprwAerP" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["error"]=> array(5) { [0]=> int(0) [1]=> int(4) [2]=> int(4) [3]=> int(4) [4]=> int(4) } ["size"]=> array(5) { [0]=> int(360) [1]=> int(0) [2]=> int(0) [3]=> int(0) [4]=> int(0) } } } Bestand nl.gif is tijdelijk opgeslagen als /tmp/phprwAerPBestand is tijdelijk opgeslagen als Return Code: 4


Hij slaat niets op in de ftp...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
41
42
43
<?php
var_dump($_FILES);

$aantal = 5;
if($_SERVER['REQUEST_METHOD'] == 'POST'){
foreach($_FILES['file']['name'] as $key => $file_name) {
   echo 'Bestand ' . $_FILES['file']['name'][$key] . ' is tijdelijk opgeslagen als ' . $_FILES['file']['tmp_name'][$key];
            if ($_FILES["file"]["error"][$key] > 0){
            echo "Return Code: " . $_FILES["file"]["error"][$key] . "<br />";
        }
else{
            if($_FILE["file"]["size"][$key] > 0){
                if (file_exists("uploadfactuur/" . $_FILES["file"]["name"][$key])){
                    echo $_FILES["file"]["name"][$key] . " already exists. ";
                }
else{
                    move_uploaded_file($_FILES["file"]["tmp_name"][$key], "uploadsfactuur/" . $_FILES["file"]["name"][$key]);
                    echo "Stored in: " . "uploadfactuur/" . $_FILES["file"]["name"][$key];
                }
            }
        }
    }
}

?>


<html>
<body>

<form method="post" enctype="multipart/form-data">
<table>
<tr><td></td><td>Bestand</td><td>Omschrijving</td></tr>
<?php
for ($i = 1; $i <= $aantal; $i++) {
    echo '<tr>
            <td>'
.$i.'</td>
            <td><input name="file[]" type="file" /></td>
            <td><input type="text" name="omschrijving[]" value="'
.$_POST['omschrijving'.$i].'" size="35"></td>
          </tr>'
;
    }

?>

<tr><td></td><td><input type="submit" name="submit" value="Submit" /></td><td></td></tr>
</table>
</form>
</body>
</html>
 
Niels K

Niels K

28/06/2010 09:15:01
Quote Anchor link
Kijk anders even bij deze tutorial, daarin heb ik beschreven hoe je een file upload

http://www.phphulp.nl/php/tutorial/overig/uploadsysteem/705/uploaden-php/1859/

Later deze dag zal ik nog een upload class bij de scripts plaatsen, maar dan moet je nog even geduld hebben
 
Piet Verhagen

Piet Verhagen

28/06/2010 09:25:55
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
array(1) {
    ["file"]=> array(5) {
        ["name"]=> array(5) {
            [0]=> string(6) "nl.gif"
            [1]=> string(0) ""
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["type"]=> array(5) {
            [0]=> string(9) "image/gif"
            [1]=> string(0) ""
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["tmp_name"]=> array(5) {
            [0]=> string(14) "/tmp/phprwAerP"
            [1]=> string(0) ""
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["error"]=> array(5) {
            [0]=> int(0)
            [1]=> int(4)
            [2]=> int(4)
            [3]=> int(4)
            [4]=> int(4)
        }
        ["size"]=> array(5) {
            [0]=> int(360)
            [1]=> int(0)
            [2]=> int(0)
            [3]=> int(0)
            [4]=> int(0)
        }
    }
}

Even wat mooiere weer gegeven. Dat word het een stuk duidelijker. Jammer dat je dat zelf niet doet.
php.net:
If filename is a valid upload file, but cannot be moved for some reason, no action will occur, and move_uploaded_file() will return FALSE. Additionally, a warning will be issued.

Je kunt dus doen in regel 12 - 17 van jou laatste code blokje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
                if (file_exists("uploadfactuur/"  . $_FILES["file"]["name"][$key])){
                    echo $_FILES["file"]["name"][$key] . " already exists. ";
                } elseif(move_uploaded_file($_FILES["file"]["tmp_name"][$key], "uploadsfactuur/" . $_FILES["file"]["name"][$key])) {
                    echo "Stored in: " . "uploadfactuur/" . $_FILES["file"]["name"][$key];
                } else {
                    echo 'Opslaan mislukt.';
                }

Maak van de destination eens een absuluut pad. En chmod naar 777.
 
Niels K

Niels K

28/06/2010 09:35:37
Quote Anchor link
Ik heb de uploader bij de scripts toegevoegd.

http://www.phphulp.nl/php/script/classes/uploader-class/1792/
 
Jan Koehoorn

Jan Koehoorn

28/06/2010 10:31:27
Quote Anchor link
Bij uploadscripts gaat het vaak fout met de rechten die de map heeft waarnaar je je bestanden wilt uploaden. Wat ook vaak fout gaat, is de verwijzing naar de goede map.
Probeer maar eens:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
    echo $_SERVER['DOCUMENT_ROOT'] . '/uploadsfactuur/';
?>
 
Arjan -

Arjan -

28/06/2010 12:10:51
Quote Anchor link
Je had aardig wat foutjes in je code staan. Probeer het eens middels onderstaande code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

$map
= $_SERVER['DOCUMENT_ROOT'].'/uploadsfactuur/';

$aantal = 5;
if($_SERVER['REQUEST_METHOD'] == 'POST'){
    foreach($_FILES['file']['name'] as $key => $file_name) {
           
        echo 'Bestand ' . $file_name . ' is tijdelijk opgeslagen als ' . $_FILES['file']['tmp_name'][$key];
        
        if ($_FILES['file']['error'][$key] < 1){
            if($_FILES['file']['size'][$key] > 0){
                if (file_exists($map . $file_name)){
                    echo $file_name . " already exists. ";
                }
else{
                    move_uploaded_file($_FILES['file']['tmp_name'][$key], $map . $file_name);
                    echo "Stored in: " . $map . $file_name;
                }
            }
        }
else{
            echo "Return Code: " . $_FILES['file']['error'][$key] . "<br />";
        }
    }
}



?>
Gewijzigd op 28/06/2010 12:42:04 door Arjan -
 
Mitchel V

Mitchel V

28/06/2010 12:28:19
Quote Anchor link
bij het controleren van de groote van een bestand:

if($_FILES["file"]["size"][$key] > 0){

)

Ik heb gezien, als ik een file wil uploaden, dan krijg ik geen size mee :S
wat doe ik dan fout?
array:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
array(1) {
    ["file"]=> array(5) {
        ["name"]=> array(5) {
            [0]=> string(15) "middenboven.png"
            [1]=> string(15) "middenonder.png"
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["type"]=> array(5) {
            [0]=> string(9) "image/png"
            [1]=> string(9) "image/png"
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["tmp_name"]=> array(5) {
            [0]=> string(14) "/tmp/php746Dv6"
            [1]=> string(14) "/tmp/phpYY9hfT"
            [2]=> string(0) ""
            [3]=> string(0) ""
            [4]=> string(0) ""
        }
        ["error"]=> array(5) {
            [0]=> int(0)
            [1]=> int(0)
            [2]=> int(4)
            [3]=> int(4)
            [4]=> int(4)
        }
        ["size"]=> array(5) {
            [0]=> int(56083)
            [1]=> int(50727)
            [2]=> int(0)
            [3]=> int(0)
            [4]=> int(0)
        }
    }
}


Bestand middenboven.png is tijdelijk opgeslagen als /tmp/php746Dv6
Return Code: 0
Bestand middenonder.png is tijdelijk opgeslagen als /tmp/phpYY9hfT
Return Code: 0
Bestand is tijdelijk opgeslagen als
1
size: 0Bestand is tijdelijk opgeslagen als
1
size: 0Bestand is tijdelijk opgeslagen als
1


Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$rootmap
= $_SERVER['DOCUMENT_ROOT'].'/';

$aantal = 5;
if($_SERVER['REQUEST_METHOD'] == 'POST'){
    foreach($_FILES['file']['name'] as $key => $file_name) {
          
        echo 'Bestand ' . $file_name . ' is tijdelijk opgeslagen als ' . $_FILES['file']['tmp_name'][$key].'<br>';
        
        if ($_FILES["file"]["error"][$key] > UPLOAD_ERR_OK){
            echo '1<br>
            size: '
. $_FILES["file"]["size"][$key];
            if(!$_FILES["file"]["size"][$key] == 0){
                echo '2';
                if (file_exists($rootmap."uploadsfactuur/" . $file_name)){
                    echo $file_name . " already exists. ";
                }
else{
                    move_uploaded_file($_FILES["file"]["tmp_name"][$key], $rootmap."uploadsfactuur/" . $file_name);
                    echo "Stored in: " . $rootmap . "uploadsfactuur/" . $file_name;
                }
            }
        }
else{
            echo "Return Code: " . $_FILES["file"]["error"][$key] . "<br />";
        }
    }
}

?>
 
Arjan -

Arjan -

28/06/2010 12:40:58
Quote Anchor link
Gebruik nog even de aangepast versie van mijn post, want ik had zelf een foutje gemaakt en snel aangepast.

En je krijgt in je var_dump wel een size mee, zie onderaan je output:

["size"]=> array(5) {
[0]=> int(56083)
[1]=> int(50727)
[2]=> int(0)
[3]=> int(0)
[4]=> int(0)
}

De eerste 2 bestanden hebben een attribuut size met als waarde een integer. Dus dat is correct.
Gewijzigd op 28/06/2010 12:45:09 door Arjan -
 
Arjan -

Arjan -

28/06/2010 12:40:58
Quote Anchor link
Dubbelpost
Gewijzigd op 28/06/2010 12:41:13 door Arjan -
 
Mitchel V

Mitchel V

28/06/2010 12:56:26
Quote Anchor link
ok top.

Waar vind ik de error codes?
Zodat ik kan uitlezen wat Return Code: 4 is
 
Arjan -

Arjan -

28/06/2010 13:19:03
Quote Anchor link
http://www.php.net/manual/en/features.file-upload.errors.php

Je kan deze functie gebruiken (code uit bovenstaande link):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

function file_upload_error_message($error_code) {
    switch ($error_code) {
        case
UPLOAD_ERR_INI_SIZE:
            return 'The uploaded file exceeds the upload_max_filesize directive in php.ini';
        case
UPLOAD_ERR_FORM_SIZE:
            return 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form';
        case
UPLOAD_ERR_PARTIAL:
            return 'The uploaded file was only partially uploaded';
        case
UPLOAD_ERR_NO_FILE:
            return 'No file was uploaded';
        case
UPLOAD_ERR_NO_TMP_DIR:
            return 'Missing a temporary folder';
        case
UPLOAD_ERR_CANT_WRITE:
            return 'Failed to write file to disk';
        case
UPLOAD_ERR_EXTENSION:
            return 'File upload stopped by extension';
        default:

            return 'Unknown upload error';
    }
}


if ($_FILES['file']['error'] === UPLOAD_ERR_OK)
    // upload ok
else
    $error_message = file_upload_error_message($_FILES['file']['error']);

?>
Gewijzigd op 28/06/2010 13:20:45 door Arjan -
 
Mitchel V

Mitchel V

28/06/2010 14:11:36
Quote Anchor link
ok dit begind er op te lijken :D

Maar nu, buiten dat ik een file mee geef, wil ik ook een omschrijving mee geven..
Hoe kan ik die in de zelfde foreach zetten?

Dit werkt niet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
foreach($_FILES['file']['name'] as $key => $file_name && $_POST['omschrijving'] as $key2=> $omschrijving){

}

?>
Gewijzigd op 28/06/2010 14:12:20 door Mitchel V
 
Arjan -

Arjan -

28/06/2010 14:44:59
Quote Anchor link
Je zal dan dit moeten doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

foreach($_FILES['file']['name'] as $key => $file_name){

echo $omschrijving[$key];

}


?>


De key van $_FILES['file']['name'] komt overeen met de omschrijving array. Dus dit zal moeten werken.

Ik denk dat het goed is dat je even goed kijkt hoe een array werkt en hoe je er mee kan werken. Want wanneer je in html een input de naam omschrijving[] mee geeft en je hebt hier nog 10x dezelfde inputs staan, dan krijg je dus een array zoals:

$omschrijving[0] = 'Omschrijving 1';
$omschrijving[1] = 'Omschrijving 2';
$omschrijving[2] = 'Omschrijving 3';
etc...

Hier zijn dus de cijfers tussen de brackets de keys van de array en die komen overeen met de keys in je $_FILES['file']['name'] array omdat die ook weer keys bevat, beginnend vanaf 0:

$_FILES['file']['name'][0] = 'Naam bestand 1';
$_FILES['file']['name'][1] = 'Naam bestand 2';
$_FILES['file']['name'][2] = 'Naam bestand 3';
Etc...
Gewijzigd op 28/06/2010 14:48:25 door Arjan -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.