vraag idee form mogelijk?
in een formulier kan de bezoeker een bestand toevoegen. Dit gebeurt dmv link>popup, in het popupje kan vervolgens een bestand worden toegevoegt. Dit bestand wordt geupload naar de server.
Nu wil ik dat er op de 1 of andere manier op de "bedank pagina" te zien is welk bestand er is geupload (bestandsnaam of bestand is geupload of iets dergelijks)
Is dit mogelijk? dmv cookie mischien of iets anders?
Ik heb geen idee wat de mogelijkheden zijn.
Of hoe of wat dit kan.
bovenaan je pagina:
op de bedank-pagina:
weer bovenaan:
moet zijn:
if($bestand_goed_geüpload == true) {
of, nog korter:
if($bestand_goed_geüpload) {
aha okeey bedankt in elk geval ik ga meteen kijken of het werkt:)
ik gebruik nu
om uit te lezen welk bestand het is
dus dacht ik dan doe zet ik het zo boven aan de upload pagina:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?
session_start();
?>
<?
if($bestand_goed_gepload == true) {
$_SESSION['bnaam'] = $_FILES['afbeelding']['name'];
}
?>
session_start();
?>
<?
if($bestand_goed_gepload == true) {
$_SESSION['bnaam'] = $_FILES['afbeelding']['name'];
}
?>
en dan op de bedank pagina
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?
session_start();
?>
<?
echo "U heeft het volgende bestand geupload: <b>".$_SESSION['bnaam']."</b>";
?>
session_start();
?>
<?
echo "U heeft het volgende bestand geupload: <b>".$_SESSION['bnaam']."</b>";
?>
maar dit lijkt niet helemaal te werken, er staat dan gewoon "u heeft volgende bestand geupload"
voor de rest niks. wat doe ik fout? wie weet het?
Gewijzigd op 19/02/2006 20:09:00 door jonathan
volgens mij doe ik goed ik heb alleen mijn twijfels of ik de juiste values gebruik voor bnaam en bestandsnaam?
true moet tussen aanhalingstekens...
heb je $bestand_goed_geüpload wel gedefineerd?
Naar welke waarde zou ik deze moeten defineren,
"afbeelding"?
Jason:
true moet tussen aanhalingstekens...
Niet doen hoor! Test dit scriptje maar eens:
jonathan:
uhm das een goeie :S ;) :D
Naar welke waarde zou ik deze moeten defineren,
"afbeelding"?
Naar welke waarde zou ik deze moeten defineren,
"afbeelding"?
In een uploadscript weet je dat de upload gelukt is als de functie move_uploaded_file () gelukt is. Je zou dus dit kunnen doen:
$uploaden_gelukt = move_uploaded_file ( ... enz
kheb nog wat geprobeerd maar snap het nog niet helemaal:
ik heb nu het volgende:
dit is het upload scriptje:
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
38
39
40
41
42
43
44
45
46
47
48
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
<?PHP
if(!empty($_POST)){
$locatie="../../toevoegen/"; //of een andere map, vergeet niet de w-rechten
if(is_uploaded_file($_FILES['afbeelding']['tmp_name']))
{
//controleer grootte
if($_FILES['afbeelding']['size']>1572864)
{ //bepaal zelf de max. grootte in bytes
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo "<font face='Arial'>Fout! het bestand is te groot, maximaal 1,5 MB</font>";
exit;
}
//controleer extensie, voeg maar andere toe
if(!eregi("((.gif|.jpg|.bmp)$)", $_FILES['afbeelding']['name']))
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo " <font face='Arial'>Fout! het bestand is niet van het juiste type, alleen gif, jpg of bmp bestanden</font>";
exit;
}
if(!move_uploaded_file($_FILES['afbeelding']['tmp_name'],
$locatie.$_FILES['afbeelding']['name']))
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo" <font face='Arial'>Fout! het bestand kan niet worden verplaatst</font>";
exit;
}
echo "<img border='0' src='images/ok.gif' width='32' height='32'>";
echo "<font face='Arial'>Uw bestand ".$_FILES['afbeelding']['name']." is succesvol toegevoegd! U kunt nu dit scherm sluiten en verder gaan met het invullen van het formulier.</font> ";
echo "<img border='0' src='../../toevoegen//".$_FILES['afbeelding']['name']."'></a> ";
}
else
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo "<font face='Arial'>Fout! het toevoegen is mislukt!</font>";
}
}
else{
?>
if(!empty($_POST)){
$locatie="../../toevoegen/"; //of een andere map, vergeet niet de w-rechten
if(is_uploaded_file($_FILES['afbeelding']['tmp_name']))
{
//controleer grootte
if($_FILES['afbeelding']['size']>1572864)
{ //bepaal zelf de max. grootte in bytes
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo "<font face='Arial'>Fout! het bestand is te groot, maximaal 1,5 MB</font>";
exit;
}
//controleer extensie, voeg maar andere toe
if(!eregi("((.gif|.jpg|.bmp)$)", $_FILES['afbeelding']['name']))
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo " <font face='Arial'>Fout! het bestand is niet van het juiste type, alleen gif, jpg of bmp bestanden</font>";
exit;
}
if(!move_uploaded_file($_FILES['afbeelding']['tmp_name'],
$locatie.$_FILES['afbeelding']['name']))
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo" <font face='Arial'>Fout! het bestand kan niet worden verplaatst</font>";
exit;
}
echo "<img border='0' src='images/ok.gif' width='32' height='32'>";
echo "<font face='Arial'>Uw bestand ".$_FILES['afbeelding']['name']." is succesvol toegevoegd! U kunt nu dit scherm sluiten en verder gaan met het invullen van het formulier.</font> ";
echo "<img border='0' src='../../toevoegen//".$_FILES['afbeelding']['name']."'></a> ";
}
else
{
echo "<img border='0' src='images/error.gif' width='32' height='32'>";
echo "<font face='Arial'>Fout! het toevoegen is mislukt!</font>";
}
}
else{
?>
<br><font face='Arial'>
Let op, u kunt alleen jpg, gif of bmp bestanden toevoegen! Met een maximale grote van 1,5 MB</font>
<form method="post" action="" enctype="multipart/form-data">
<!--Bepaal zelf de maximale grootte in bytes -->
<input type="file" name="afbeelding"><br>
<input type="submit" name="submit" value="Toevoegen">
</form>
en in de bedank pagina heb ik het volgende:
echo "<script type='text/javascript' src='print.js'></script>";
echo "</head>";
echo "<div id='PrintKlaar'>";
echo "<body topmargin='0' leftmargin='0'>";
session_start();
echo "U heeft het volgende bestand geupload: <b>".$_SESSION['bnaam']."</b>";
enz. rest van de bedank pagina.
ik krijg nu dus alleen te zien van "u heeft het volgende bestand geupload" meer niet.
Waarschijnlijk gebruik ik niet de juiste variabelen, dat komt omdat ik nie echt weet welke dat zouden moeten zij, iemand die mij verder opweg kan helpen
Gewijzigd op 01/01/1970 01:00:00 door jonathan
jah klopt je hebt gelijk die was ik er vergtene bij te zetten, maar iemand die nog een tip heeft?
Behalve dit dan:
Het is onveilig om op extensie te controleren, je kunt beter op mime-type controleren. Dit vanwege bijvoorbeeld de bekende jpeg-exploit waarbij een virus geupload kan worden en uitgevoerd kan worden.
is er dan mischien nog een andere oplossing waardoor ik tog kan weergeven wat er precies geupload op de bedank pagina?