onsubmit anders doen
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
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
<?php
$XAJAX_DIR = "xajax";
require_once($XAJAX_DIR . "/xajaxExtend.php");
function uploadFiles()
{
$objResponse = new xajaxResponse();
$i = 0;
foreach ($_FILES as $key => $value)
{
$dir = "i/"; // map voor images
$thumb_dir = "uploads/"; // map voor thums
$maxsize = 1000000; // maximum groote images
$max_y = 130; // maximum hoogte thumbs
$max_x = 130; // maximum breedte thumbs
$pathinfo = pathinfo($_FILES[$key]['name']);
$ext = $pathinfo["extension"];
switch($ext)
{
case "jpg" : $thumb = imagecreatefromjpeg($_FILES[$key]['tmp_name']);
break;
case "jpeg" : $thumb = imagecreatefromjpeg($_FILES[$key]['tmp_name']);
break;
case "gif" : $thumb = imagecreatefromgif($_FILES[$key]['tmp_name']);
break;
case "png" : $thumb = imagecreatefrompng($_FILES[$key]['tmp_name']);
break;
default : $wrongext = 1;
}
if(isset($wrongext))
{
$error = "Verkeerde Extensie";
}
else
{
if($_FILES[$key]['size'] > $maxsize)
{
$error = "Bestand is te groot";
}
else
{
$succes = true;
}
}
if(!isset($succes) || isset($error))
{
echo "<b>Er is een fout op getreden:</b><br>";
echo $error;
imagedestroy($thumb);
}
else
{
move_uploaded_file($_FILES[$key]['tmp_name'], $dir.$_FILES[$key]['name']);
$x = imagesx($thumb);
$y = imagesy($thumb);
if(($max_x/$max_y) < ($x/$y))
{
$eind = imagecreatetruecolor($x/($x/$max_x), $y/($x/$max_x));
}
else
{
$eind = imagecreatetruecolor($x/($y/$max_y), $y/($y/$max_y));
}
imagecopyresized($eind, $thumb, 0, 0, 0, 0, imagesx($eind), imagesy($eind), $x, $y);
imagegif($eind, $thumb_dir.$_FILES[$key]['name']);
imagedestroy($thumb);
imagedestroy($eind);
$i++;
$result = "[IMG]".$thumb_dir.$_FILES[$key]['name']."[/IMG]";
}
}
$objResponse->addPrepend("inhoud","value",$result);
return $objResponse;
}
$xajax = new xajaxExtend;
$xajax->registerFunction("uploadFiles");
$xajax->processRequests();
?>
$XAJAX_DIR = "xajax";
require_once($XAJAX_DIR . "/xajaxExtend.php");
function uploadFiles()
{
$objResponse = new xajaxResponse();
$i = 0;
foreach ($_FILES as $key => $value)
{
$dir = "i/"; // map voor images
$thumb_dir = "uploads/"; // map voor thums
$maxsize = 1000000; // maximum groote images
$max_y = 130; // maximum hoogte thumbs
$max_x = 130; // maximum breedte thumbs
$pathinfo = pathinfo($_FILES[$key]['name']);
$ext = $pathinfo["extension"];
switch($ext)
{
case "jpg" : $thumb = imagecreatefromjpeg($_FILES[$key]['tmp_name']);
break;
case "jpeg" : $thumb = imagecreatefromjpeg($_FILES[$key]['tmp_name']);
break;
case "gif" : $thumb = imagecreatefromgif($_FILES[$key]['tmp_name']);
break;
case "png" : $thumb = imagecreatefrompng($_FILES[$key]['tmp_name']);
break;
default : $wrongext = 1;
}
if(isset($wrongext))
{
$error = "Verkeerde Extensie";
}
else
{
if($_FILES[$key]['size'] > $maxsize)
{
$error = "Bestand is te groot";
}
else
{
$succes = true;
}
}
if(!isset($succes) || isset($error))
{
echo "<b>Er is een fout op getreden:</b><br>";
echo $error;
imagedestroy($thumb);
}
else
{
move_uploaded_file($_FILES[$key]['tmp_name'], $dir.$_FILES[$key]['name']);
$x = imagesx($thumb);
$y = imagesy($thumb);
if(($max_x/$max_y) < ($x/$y))
{
$eind = imagecreatetruecolor($x/($x/$max_x), $y/($x/$max_x));
}
else
{
$eind = imagecreatetruecolor($x/($y/$max_y), $y/($y/$max_y));
}
imagecopyresized($eind, $thumb, 0, 0, 0, 0, imagesx($eind), imagesy($eind), $x, $y);
imagegif($eind, $thumb_dir.$_FILES[$key]['name']);
imagedestroy($thumb);
imagedestroy($eind);
$i++;
$result = "[IMG]".$thumb_dir.$_FILES[$key]['name']."[/IMG]";
}
}
$objResponse->addPrepend("inhoud","value",$result);
return $objResponse;
}
$xajax = new xajaxExtend;
$xajax->registerFunction("uploadFiles");
$xajax->processRequests();
?>
<html>
<head>
<title>xajax 0.2.4 File Upload Demo</title>
<script language="Javascript">
function checkUploadForm()
{
// You can do some checks here
return xajax.upload('uploadFiles','uploadForm');
}
</script>
</head>
<body>
<textarea id="inhoud" rows="10" cols="10"></textarea>
<form id="uploadForm" name="uploadForm" onsubmit="return checkUploadForm()" method="POST" enctype="multipart/form-data">
<input type="file" name="somefile"/><br/>
<input type="submit" value="Upload Files"/>
</form>
</body>
</html>
Hoi,
Bovenstaand script werkt perfect, het upload een afbeelding naar de server zonder je pagina te refreshen.
Dit script wou ik integreren in mijn CMS. De bedoeling was dat de afbeeldingnaam bij het textfield werd bijgevoegd... In dit script werkt dat, maar niet in mijn CMS omdat daar ook een submitknop staat.
Het gevolg is, dat wanneer ik nu op de submitknop van deze afbeeldingenuploader klik, worden de acties gelinkt aan de submitknop van mijn cms ook uitgevoerd. Kan ik de submit van dit script niet vervangen door iets anders?
Dit lijkt niet te werken, het script blijft maar lopen:
<form id="uploadForm" name="uploadForm" enctype="multipart/form-data">
<input type="file" name="somefile"/><br/>
<input type="button" value="Upload Files" onClick="return checkUploadForm();"/>
</form>
Iemand een idee?
Er zijn nog geen reacties op dit bericht.