form -> met upload e-mail en info
- er zit een foutje in en vind niet wat.
- moet beveiligd zijn waaronder alleen .jpeg .bmp uploaden
bestandsnaam er van moet in db komen. zou hij moeten doen maar zit een foutje in da ik ni vind.
- e-mail moet gecontroleerd zijn.
is mss al wat veel gevraagd maar ik kan er niet goed meer aan uit kan iemand me even helpen hierbij?
alvast bedankt.
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
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
<?
include("config.php");
$naam = $_POST['naam'];
if ($naam){
$email = $_POST['email'];
$geslacht = $_POST['geslacht'];
$leeftijd = $_POST['leeftijd'];
$woonplaats = $_POST['woonplaats'];
$provincie = $_POST['provincie'];
$site = $_POST['site'];
$werk = $_POST['werk'];
$hobbies = $_POST['hobbies'];
$bericht = $_POST['bericht'];
$filenaam = $_FILES['upfile']['name'];
$uploaddir = "uploadguest/";
$uploadfile = $uploaddir . $_FILES['upfile']['name'];
if (move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile)) {
print "File is geupload";
} else {
print "error file is niet geupload";
}
$query = "INSERT INTO `verkiezing` ( `naam` , `email` , `geslacht` , `leeftijd` , `woonplaats` , `provincie` , `site` , `werk` , `hobbies` , `bericht` , `file` ) VALUES ( '$naam', '$email', '$geslacht', '$leeftijd', '$woonplaats', '$provincie', '$site', '$werk', '$hobbies', '$bericht' , '$filenaam' )";
mysql_query($query);
?>
include("config.php");
$naam = $_POST['naam'];
if ($naam){
$email = $_POST['email'];
$geslacht = $_POST['geslacht'];
$leeftijd = $_POST['leeftijd'];
$woonplaats = $_POST['woonplaats'];
$provincie = $_POST['provincie'];
$site = $_POST['site'];
$werk = $_POST['werk'];
$hobbies = $_POST['hobbies'];
$bericht = $_POST['bericht'];
$filenaam = $_FILES['upfile']['name'];
$uploaddir = "uploadguest/";
$uploadfile = $uploaddir . $_FILES['upfile']['name'];
if (move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile)) {
print "File is geupload";
} else {
print "error file is niet geupload";
}
$query = "INSERT INTO `verkiezing` ( `naam` , `email` , `geslacht` , `leeftijd` , `woonplaats` , `provincie` , `site` , `werk` , `hobbies` , `bericht` , `file` ) VALUES ( '$naam', '$email', '$geslacht', '$leeftijd', '$woonplaats', '$provincie', '$site', '$werk', '$hobbies', '$bericht' , '$filenaam' )";
mysql_query($query);
?>
Gewijzigd op 01/01/1970 01:00:00 door Jessy
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
49
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
<?php
foreach($_FILES as $afbeelding)
{
$naam = $afbeelding['name'];
$type = $afbeelding['type'];
$temp = $afbeelding['tmp_name'];
$error = $afbeelding['error'];
$size = $afbeelding['size'];
switch($error)
{
case 0:
if(is_uploaded_file($temp))
{
if($type == 'image/jpeg' || $type == 'image/jpg' || $type == 'image/gif' || $type == 'image/png')
{
if($size >= 1024000)
{
echo '<p>Sorry, dit bestand is te groot om te worden geupload!</p>';
}else{
move_uploaded_file($temp, 'map/'.$naam)
}
}else{
echo '<p>Sorry, dit bestandsformaat accepteer ik niet!</p>';
}
}else{
echo '<p>Sorry, dit accepteer ik niet!</p>';
}
break;
case 1:
echo '<p>Error: De grootte van het bestand is groter dan wat de server aankan!</p>';
break;
case 2:
echo '<p>Error: De grootte van het bestand is groter dan 1024kb!</p>';
break;
case 3:
echo '<p>Error: Het bestand is maar gedeeltelijk geupload!</p>';
break;
case 4:
//Geen bestand geupload, we doen niks!
break;
}
}
}
?>
foreach($_FILES as $afbeelding)
{
$naam = $afbeelding['name'];
$type = $afbeelding['type'];
$temp = $afbeelding['tmp_name'];
$error = $afbeelding['error'];
$size = $afbeelding['size'];
switch($error)
{
case 0:
if(is_uploaded_file($temp))
{
if($type == 'image/jpeg' || $type == 'image/jpg' || $type == 'image/gif' || $type == 'image/png')
{
if($size >= 1024000)
{
echo '<p>Sorry, dit bestand is te groot om te worden geupload!</p>';
}else{
move_uploaded_file($temp, 'map/'.$naam)
}
}else{
echo '<p>Sorry, dit bestandsformaat accepteer ik niet!</p>';
}
}else{
echo '<p>Sorry, dit accepteer ik niet!</p>';
}
break;
case 1:
echo '<p>Error: De grootte van het bestand is groter dan wat de server aankan!</p>';
break;
case 2:
echo '<p>Error: De grootte van het bestand is groter dan 1024kb!</p>';
break;
case 3:
echo '<p>Error: Het bestand is maar gedeeltelijk geupload!</p>';
break;
case 4:
//Geen bestand geupload, we doen niks!
break;
}
}
}
?>
maar er zit een foutje in de script die ik heb gepost en ik kan dit niet vinden.
de bedoeling is dat de bestandsnaam mee in de db komt.
alles werkt buiten dit vanaf dat ik in query ´file´ $filenaam zet verzend hij niets meer naar de db?
weet iemand waaraan dit ligt dit zou toch moeten werken?
Kijk eens naar die quotes, die kloppen niet echt helemaal... het lijkt wel of je de query in Microsoft Word heb lopen tikken...
tomme nu da ge het zegt had het ni gezien 't is in orde nu :-)
Arjan:
Die afbeeldingen zou ik iets uitgebreider controlleren:
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
49
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
<?php
foreach($_FILES as $afbeelding)
{
$naam = $afbeelding['name'];
$type = $afbeelding['type'];
$temp = $afbeelding['tmp_name'];
$error = $afbeelding['error'];
$size = $afbeelding['size'];
switch($error)
{
case 0:
if(is_uploaded_file($temp))
{
if($type == 'image/jpeg' || $type == 'image/jpg' || $type == 'image/gif' || $type == 'image/png')
{
if($size >= 1024000)
{
echo '<p>Sorry, dit bestand is te groot om te worden geupload!</p>';
}else{
move_uploaded_file($temp, 'map/'.$naam)
}
}else{
echo '<p>Sorry, dit bestandsformaat accepteer ik niet!</p>';
}
}else{
echo '<p>Sorry, dit accepteer ik niet!</p>';
}
break;
case 1:
echo '<p>Error: De grootte van het bestand is groter dan wat de server aankan!</p>';
break;
case 2:
echo '<p>Error: De grootte van het bestand is groter dan 1024kb!</p>';
break;
case 3:
echo '<p>Error: Het bestand is maar gedeeltelijk geupload!</p>';
break;
case 4:
//Geen bestand geupload, we doen niks!
break;
}
}
}
?>
foreach($_FILES as $afbeelding)
{
$naam = $afbeelding['name'];
$type = $afbeelding['type'];
$temp = $afbeelding['tmp_name'];
$error = $afbeelding['error'];
$size = $afbeelding['size'];
switch($error)
{
case 0:
if(is_uploaded_file($temp))
{
if($type == 'image/jpeg' || $type == 'image/jpg' || $type == 'image/gif' || $type == 'image/png')
{
if($size >= 1024000)
{
echo '<p>Sorry, dit bestand is te groot om te worden geupload!</p>';
}else{
move_uploaded_file($temp, 'map/'.$naam)
}
}else{
echo '<p>Sorry, dit bestandsformaat accepteer ik niet!</p>';
}
}else{
echo '<p>Sorry, dit accepteer ik niet!</p>';
}
break;
case 1:
echo '<p>Error: De grootte van het bestand is groter dan wat de server aankan!</p>';
break;
case 2:
echo '<p>Error: De grootte van het bestand is groter dan 1024kb!</p>';
break;
case 3:
echo '<p>Error: Het bestand is maar gedeeltelijk geupload!</p>';
break;
case 4:
//Geen bestand geupload, we doen niks!
break;
}
}
}
?>
waar of hoe exact voeg ik deze script toe in de bovenstaande?? als ik dit nu die verzend hij het niet meer.
dit formulier word verzonden naar db.
en vervolgens gaat hij naar stap 2.
er komt te staan dat de gegevens juist zijn opgeslagen en onderaan komt terug een form 'foto uploaden'
de bestandsnaam van de foto +omschrijving word daarbij ook in db opgeslagen.
mijn vraag is nu of ik de bestandsnaam en omschrijving op dezelfde rij kan opslaan als de vorige info (dit is makelijker om het achteraf terug op te vragen) is dit mogelijk en hoe kan ik dit doen ??
bij stap 2 om de foto (bestandsnaam in de db te zetten kan ik mss UPDATE gebruiken ?? maar dan moet het natuurlijk wel de juiste rij zijn wat ik dan verander hoe haal ik de laatste rij op die dan juist is toegevoegd bij stap 1 (bij het eerste formulier"persoonlijke gegevens" )