afbeelding uploaden werkt niet
Ik zit met een probleem:
Mijn afbeelding-upload-script werkt niet, terwijl hij het op een andere site wel doet.
Dit is de code:
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
<?php
session_start();
include("settings.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Game Maker Informer</title>
<link href="style2.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="http://gamemakerinformer.nl/images/favicon.ico" type="image/x-icon" />
</head>
<body>
<div id="wrapper">
<div id="header">
</div>
<div id="menu">
<?php
include ("menu.php");
?>
</div>
<div id="window-left">
<h1><img src="images/icon_tricks_groot.png" align="absmiddle">Game toevoegen</h1>
<?php
// Goed e-mail-adres?
function valid_mail ($str)
{
return (ereg ('(^[0-9a-zA-Z_\.-]{1,}@([0-9a-zA-Z_\-]{1,}\.)+[0-9a-zA-Z_\-]{2,}$)', $str));
}
// Het formulier
if ($_POST["verzendbutton"] != "verzenden"
|| !$_POST["titel"]
|| !$_POST["beschrijving"]
|| !$_POST["downloadlink"]
|| !$_POST["email"]
|| !$_POST["naam"]
|| !$_POST["code"]) // Is alles ingevuld?
{
?>
<form action="game_toevoegen.php" method="post">
<?php // TITEL
if ($_POST["verzendbutton"] && !$_POST["titel"])
{
echo '<font color="red">Vul een titel in.</font><br>';
}
?>
<b>Titel:</b><br> <input name="titel" type="text" value="<?php echo $_POST["titel"]; ?>" size="45">
<br>
<?php // BESCHRIJVING
if ($_POST["verzendbutton"] && !$_POST["beschrijving"])
{
echo '<font color="red">Vul een beschrijving in.</font><br>';
}
?>
<b>Beschrijving:</b><br> <textarea cols="50" rows="5" name="beschrijving"><?php echo $_POST["beschrijving"]; ?></textarea><br>
<?php // DOWNLOADLINK
if ($_POST["verzendbutton"] && !$_POST["downloadlink"])
{
echo '<font color="red">Vul een downloadlink in.</font><br>';
}
?>
<b>Downloadlink:</b><br> <input name="downloadlink" type="text" value="<?php echo $_POST["downloadlink"]; ?>" size="45">
<br>
<?php // EMAIL
if ($_POST["verzendbutton"] && !valid_mail($_POST["email"]))
{
echo '<font color="red">Vul je e-mail-adres in.</font><br>';
}
?>
<b>E-mail:</b><br> <input name="email" type="text" value="<?php echo $_POST["email"]; ?>" size="45">
<br>
<?php // NAAM
if ($_POST["verzendbutton"] && !$_POST["naam"])
{
echo '<font color="red">Vul de naam van de maker in.</font><br>';
}
?>
<b>Naam maker:</b><br> <input name="naam" type="text" value="<?php echo $_POST["naam"]; ?>" size="45">
<br>
<?php // SCREEN
if ($_POST["verzendbutton"] && !$_POST["screen"])
{
echo '<font color="red">Voeg een screenshot toe.</font><br>';
}
?>
<b>Screenshot:</b><br> <input type="hidden" name="MAX_FILE_SIZE" value="100000"><input name="screen" type="file" size="45">
<br>
<?php // BEVEILIGINGSCODE
if ($_POST["verzendbutton"] && $_POST["code"] != "GXMX")
{
echo '<font color="red">Vul de volgende tekens in.</font><br>';
}
?>
<img src="images/code.png" alt=""><br>
<b>Vul de bovenstaande tekens in:</b><br> <input name="code" type="text" value="<?php echo $_POST["code"]; ?>" size="45" maxlength="4">
<br><br>
<input type="submit" name="verzendbutton" value="verzenden">
</form>
<br>
Er wordt gecontroleerd op spamposten. Dus vul alle velden zo goed mogelijk in.
<?php
}
else // formulier verwerken
{
// SCREENSHOT
global $_FILES;
$filename = $_FILES['screen']['name'];
$uploadname = $_FILES['screen']['name'];
$allow[0] = ".jpg";
$allow[1] = ".gif";
$allow[3] = ".png";
$allow[4] = ".PNG";
$allow[5] = ".JPG";
$allow[6] = ".GIF";
$extentie = substr($uploadname, -4);
for ($i = 0; $i < count($allow); $i++)
{
if ($extentie == $allow[$i])
{
$extentie_check = "ok";
$i = count($allow) + 10; // om loop te beindigen
}
}
$sQry = 'SELECT MAX(GAME_ID) FROM games'; $rQuery = mysql_query($sQry) or die(mysql_error()); list($iID) = mysql_fetch_row($rQuery); $iID = (int)$iID; $iID++;
$filename = $iID.$extentie;
if ($extentie_check)
{
if (is_uploaded_file($_FILES['picture']['tmp_name']))
{
move_uploaded_file($_FILES['picture']['tmp_name'], "upload/games/" . $filename);
echo "Afbeelding geupload";
}
else
{
echo "Niet geupload.";
exit;
}
}
// DE REST
// IP ADRES
function ip() { if(getenv("HTTP_X_FORWARDED_FOR")) { $IPadres = getenv("HTTP_X_FORWARDED_FOR"); } elseif(getenv("HTTP_CLIENT_IP")) { $IPadres = getenv("HTTP_CLIENT_IP"); } else { $IPadres = $_SERVER["REMOTE_ADDR"]; } return $IPadres;}
$datum = date('Y-m-d H:i:s');
// SQL CODE
$sql = "INSERT INTO games (GAME_ID, titel, beschrijving, downloadlink, email, naam, ip, addtime, picture, picture_type, recht) VALUES ('mysql_insert_id()', '".$_POST["titel"]."', '".$_POST["beschrijving"]."', '".$_POST["downloadlink"]."', '".$_POST["email"]."', '".$_POST["naam"]."', '".$_SERVER['REMOTE_ADDR']."', '".$datum."', '".$filename."', '".$extensie."', '0')";
if (!mysql_query($sql))
{
echo '<img src="images/icon_no.png" alt=""> Er is fout opgetreden.<br><a href="game_toevoegen.php">Probeer het nog eens.</a> ' ;
}
else
{
echo '<img src="images/icon_yes.png" alt=""> Bedankt, je game is verstuurd. Eerst zal hij worden gecheckt op virussen. Dit gebeurd binnen 2 dagen.<br>Je krijgt een email als je game is toegevoegd.';
}
}
?>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
session_start();
include("settings.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Game Maker Informer</title>
<link href="style2.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="http://gamemakerinformer.nl/images/favicon.ico" type="image/x-icon" />
</head>
<body>
<div id="wrapper">
<div id="header">
</div>
<div id="menu">
<?php
include ("menu.php");
?>
</div>
<div id="window-left">
<h1><img src="images/icon_tricks_groot.png" align="absmiddle">Game toevoegen</h1>
<?php
// Goed e-mail-adres?
function valid_mail ($str)
{
return (ereg ('(^[0-9a-zA-Z_\.-]{1,}@([0-9a-zA-Z_\-]{1,}\.)+[0-9a-zA-Z_\-]{2,}$)', $str));
}
// Het formulier
if ($_POST["verzendbutton"] != "verzenden"
|| !$_POST["titel"]
|| !$_POST["beschrijving"]
|| !$_POST["downloadlink"]
|| !$_POST["email"]
|| !$_POST["naam"]
|| !$_POST["code"]) // Is alles ingevuld?
{
?>
<form action="game_toevoegen.php" method="post">
<?php // TITEL
if ($_POST["verzendbutton"] && !$_POST["titel"])
{
echo '<font color="red">Vul een titel in.</font><br>';
}
?>
<b>Titel:</b><br> <input name="titel" type="text" value="<?php echo $_POST["titel"]; ?>" size="45">
<br>
<?php // BESCHRIJVING
if ($_POST["verzendbutton"] && !$_POST["beschrijving"])
{
echo '<font color="red">Vul een beschrijving in.</font><br>';
}
?>
<b>Beschrijving:</b><br> <textarea cols="50" rows="5" name="beschrijving"><?php echo $_POST["beschrijving"]; ?></textarea><br>
<?php // DOWNLOADLINK
if ($_POST["verzendbutton"] && !$_POST["downloadlink"])
{
echo '<font color="red">Vul een downloadlink in.</font><br>';
}
?>
<b>Downloadlink:</b><br> <input name="downloadlink" type="text" value="<?php echo $_POST["downloadlink"]; ?>" size="45">
<br>
<?php // EMAIL
if ($_POST["verzendbutton"] && !valid_mail($_POST["email"]))
{
echo '<font color="red">Vul je e-mail-adres in.</font><br>';
}
?>
<b>E-mail:</b><br> <input name="email" type="text" value="<?php echo $_POST["email"]; ?>" size="45">
<br>
<?php // NAAM
if ($_POST["verzendbutton"] && !$_POST["naam"])
{
echo '<font color="red">Vul de naam van de maker in.</font><br>';
}
?>
<b>Naam maker:</b><br> <input name="naam" type="text" value="<?php echo $_POST["naam"]; ?>" size="45">
<br>
<?php // SCREEN
if ($_POST["verzendbutton"] && !$_POST["screen"])
{
echo '<font color="red">Voeg een screenshot toe.</font><br>';
}
?>
<b>Screenshot:</b><br> <input type="hidden" name="MAX_FILE_SIZE" value="100000"><input name="screen" type="file" size="45">
<br>
<?php // BEVEILIGINGSCODE
if ($_POST["verzendbutton"] && $_POST["code"] != "GXMX")
{
echo '<font color="red">Vul de volgende tekens in.</font><br>';
}
?>
<img src="images/code.png" alt=""><br>
<b>Vul de bovenstaande tekens in:</b><br> <input name="code" type="text" value="<?php echo $_POST["code"]; ?>" size="45" maxlength="4">
<br><br>
<input type="submit" name="verzendbutton" value="verzenden">
</form>
<br>
Er wordt gecontroleerd op spamposten. Dus vul alle velden zo goed mogelijk in.
<?php
}
else // formulier verwerken
{
// SCREENSHOT
global $_FILES;
$filename = $_FILES['screen']['name'];
$uploadname = $_FILES['screen']['name'];
$allow[0] = ".jpg";
$allow[1] = ".gif";
$allow[3] = ".png";
$allow[4] = ".PNG";
$allow[5] = ".JPG";
$allow[6] = ".GIF";
$extentie = substr($uploadname, -4);
for ($i = 0; $i < count($allow); $i++)
{
if ($extentie == $allow[$i])
{
$extentie_check = "ok";
$i = count($allow) + 10; // om loop te beindigen
}
}
$sQry = 'SELECT MAX(GAME_ID) FROM games'; $rQuery = mysql_query($sQry) or die(mysql_error()); list($iID) = mysql_fetch_row($rQuery); $iID = (int)$iID; $iID++;
$filename = $iID.$extentie;
if ($extentie_check)
{
if (is_uploaded_file($_FILES['picture']['tmp_name']))
{
move_uploaded_file($_FILES['picture']['tmp_name'], "upload/games/" . $filename);
echo "Afbeelding geupload";
}
else
{
echo "Niet geupload.";
exit;
}
}
// DE REST
// IP ADRES
function ip() { if(getenv("HTTP_X_FORWARDED_FOR")) { $IPadres = getenv("HTTP_X_FORWARDED_FOR"); } elseif(getenv("HTTP_CLIENT_IP")) { $IPadres = getenv("HTTP_CLIENT_IP"); } else { $IPadres = $_SERVER["REMOTE_ADDR"]; } return $IPadres;}
$datum = date('Y-m-d H:i:s');
// SQL CODE
$sql = "INSERT INTO games (GAME_ID, titel, beschrijving, downloadlink, email, naam, ip, addtime, picture, picture_type, recht) VALUES ('mysql_insert_id()', '".$_POST["titel"]."', '".$_POST["beschrijving"]."', '".$_POST["downloadlink"]."', '".$_POST["email"]."', '".$_POST["naam"]."', '".$_SERVER['REMOTE_ADDR']."', '".$datum."', '".$filename."', '".$extensie."', '0')";
if (!mysql_query($sql))
{
echo '<img src="images/icon_no.png" alt=""> Er is fout opgetreden.<br><a href="game_toevoegen.php">Probeer het nog eens.</a> ' ;
}
else
{
echo '<img src="images/icon_yes.png" alt=""> Bedankt, je game is verstuurd. Eerst zal hij worden gecheckt op virussen. Dit gebeurd binnen 2 dagen.<br>Je krijgt een email als je game is toegevoegd.';
}
}
?>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
Het screenshot wordt dus niet geupload.
De fout moet dus denk ik ergens tussen regel 123 en 163 zitten.
De doelbestandsmap heeft de rechten 777, dus dat moet goed zijn.
Weten jullie misschien wat er fout is?
Alvast bedankt
Groet
Igi
Gewijzigd op 01/01/1970 01:00:00 door Igor
en je error is....
(echo "Niet geupload."; exit; )
Verder weet ik niets...
Zet eens enctype="multipart/form-data" in je form tag
Nog andere ideeen... ?
Helemaal bovenaan de pagina of net boven het stukje waar hij 'de rest' verwerkt?
Quote:
Zet dit bovenin je script.
Top.
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 39
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 52
Titel:
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 62
Beschrijving:
<br />
<b>Notice</b>: Undefined index: beschrijving in <b>/storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php</b> on line <b>67</b><br />
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 71
Downloadlink:
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 81
E-mail:
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 91
Naam maker:
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 101
Screenshot:
Notice: Undefined index: verzendbutton in /storage/mijndomein/users/061900/public/sites/www.gamemakerinformer.nl/game_toevoegen.php on line 111
Vul de bovenstaande tekens in:
Zo heb je weer wat meer inzicht in wat je aan het doen bent. Oplossen maar, zou ik zeggen.
(Sorry, ik ben een beginner met php)
En, heeft die wat te maken met het uploaden van de afbeelding?
Oftewel 'verzendbutton' bestaat niet in een array().
En dat array() is $_POST in dit geval.
Dus $_POST["verzendbutton"] bestaat niet.
Dat klopt, want die bestaat alleen na een post van een formulier.
Dat check je met isset.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
Maar ik zie niet in wat dit te maken heeft met het uploaden van de afbeelding...
Dus, hoe moet het volgens jullie worden?
Gewijzigd op 01/01/1970 01:00:00 door Igor