De bijlage als link laten zien in de zelfde pagina
Heb het ondersaande script gebruikt om een bestand up te loaden, maar ik krijg het niet te zien en wil deze aanroepen op de zelfde pagina en op een andere pagina.
Code (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
32
33
34
35
36
37
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
<?php
error_reporting(E_ALL);
$map = ""; // 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 = 2;
}
?>
error_reporting(E_ALL);
$map = ""; // 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 = 2;
}
?>
<form action="#" method="post">
<input type="text" name="aantal" value="" size="1"> <input type="submit" name="aantal_submit" value="Aantal bestanden">
</form>
<br><br>
<form action="#" method="post" enctype="multipart/form-data">
Bestand : <input type="file" name="bestand[]"> <input type="checkbox" name="formWheelchair[]" value="Yes" /><br>
<input type="submit" name="submit" value="Uploaden">
</form>
Kan iemand mij even helpen wat ik hier nog mis?
Murtada
Het lijkt me dat je probeert in twee stappen te werken.
Eerst geeft de gebruiker aan hoeveel files hij wil uploaden; aan de hand daarvan genereer je dan een formulier met meer of minder file-input's.
Klopt dit? Is dit de bedoeling?
Gewijzigd op 26/07/2012 14:37:48 door Kris Peeters
Nee hoor ik laat de gebruiker meerdere files zolang hij/zij behoefte aan heeft. Mijn vraag als ik nu op uploaden klik krijg fout melding en het bestnad wordt niet upgeload. Gebruik mysql database en wil graag bestand daar opslaan en aanroepen op een andere pagina maar dat lukt mij niet
Probeer eens een print_r( $_FILES ); te doen aan het begin van je script. Als er files geupload zijn zal dat alle info geven. Klopt wat je dan ziet met wat je verwacht?
Kan je die foutmelding eens geven?
Misschien heb je niet de juiste rechten op de map waar je wil uploaden.
Trouwens ...
$map = ""; // Map waar alles geupload wordt
Upload je echt in de zelfde map waar ook de php-file zet?
Verder:
Code (php)
Toevoeging op 26/07/2012 14:56:19:
Gewijzigd op 26/07/2012 15:00:41 door Kris Peeters
Warning: copy(./upload/spring.jpg) [function.copy]: failed to open stream: No such file or directory in /var/--/--/--/--/--/uploadform.php on line 10
Gelukt!
En als print_r( $_FILES ); gebruik en op uploaden klik krijg ik de volgende fout melding:
Array ( [bestand] => Array ( [name] => Array ( [0] => spring.jpg [1] => ) [type] => Array ( [0] => image/jpeg [1] => ) [tmp_name] => Array ( [0] => /tmp/phpUIVr2T [1] => ) [error] => Array ( [0] => 0 [1] => 4 ) => Array ( [0] => 75011 [1] => 0 ) ) )
Warning: copy(./upload/spring.jpg) [function.copy]: failed to open stream: No such file or directory in /var/--/--/--/--/--/uploadform.php on line 10
Gelukt!
Kan je dit eens proberen?
- maak een map aan. Noem die bv. 'files'. Zet die map naar de php-file
- pas dan lijn 5 aan naar die map.
dus:
$map = "files/"; // Map waar alles geupload wordt.
Vergeet die / niet op het einde
Dan controleer je of die map de juiste rechten heeft
leesvoer over CHMOD
http://www.phphulp.nl/php/tutorial/overig/uitleg-over-chmod/54/
Heb gedaan en heb 0777 code gegeven voor CHMOD, maar steeds lukt niet en wat wordt bedoeld met No such file or directory in line 10
Murtada Helo op 26/07/2012 16:32:41:
wat wordt bedoeld met No such file or directory in line 10
Vertaal het eens..... Bestand of locatie bestaat niet (regel 10)
Gewijzigd op 26/07/2012 22:43:07 door Obelix Idefix
Het is wel gelukt met uploaden, locatie was niet goed maar wel met 0777 en niet met 0644 anders geeft het foutmelding met permission denied. Nu wil graag dat de bijlage link wordt getoond op de zelfde pagina en de bijlage van deze pagina kan openen.