回答編集履歴

3

追記修正

2016/09/08 13:32

投稿

yambejp
yambejp

スコア114845

test CHANGED
@@ -40,37 +40,31 @@
40
40
 
41
41
 
42
42
 
43
- # 追記
43
+ # 追記(修正)
44
44
 
45
- ざっとサンプル書きます。
45
+ サンプル送信部分もいておきます。
46
46
 
47
47
 
48
48
 
49
49
  ```PHP
50
50
 
51
- $infilename=$_FILES['image']['tmp_name'];
51
+ <?PHP
52
52
 
53
- $img= createnewimage($infilename);
53
+ if(isset($_FILES['image'])){
54
54
 
55
- //$imgに画像データが入ります。
55
+ $infilename=$_FILES['image']['tmp_name'];
56
56
 
57
+ $img= createnewimage($infilename);
57
58
 
59
+ $sql="INSERT INTO hoge VALUES(?)";
58
60
 
59
- $sql="INSERT INTO hoge VALUES(?)";//のようなprepare処理でDB投入
61
+ header('Content-Type: image/jpeg');
60
62
 
63
+ print $img;
61
64
 
65
+ exit;
62
66
 
63
- //出力するときはheaderをつけます
64
-
65
- header('Content-Type: image/jpeg');
66
-
67
- //UTF8で保存するとBOMが悪さをするのでUTF8Nにすること
68
-
69
- print $img;
70
-
71
- exit;
67
+ }
72
-
73
-
74
68
 
75
69
 
76
70
 
@@ -106,6 +100,14 @@
106
100
 
107
101
  }
108
102
 
103
+ ?>
109
104
 
105
+ <form enctype="multipart/form-data" method="post">
106
+
107
+ <input type="file" name="image" >
108
+
109
+ <input type="submit" value="go">
110
+
111
+ </form>
110
112
 
111
113
  ```

2

追記

2016/09/08 13:32

投稿

yambejp
yambejp

スコア114845

test CHANGED
@@ -37,3 +37,75 @@
37
37
  ちなみにバイナリデータをsprintfで処理するのは厳しいので
38
38
 
39
39
  PDOなどでプレースホルダを利用してください
40
+
41
+
42
+
43
+ # 追記
44
+
45
+ ざっとサンプル書きます。
46
+
47
+
48
+
49
+ ```PHP
50
+
51
+ $infilename=$_FILES['image']['tmp_name'];
52
+
53
+ $img= createnewimage($infilename);
54
+
55
+ //$imgに画像データが入ります。
56
+
57
+
58
+
59
+ $sql="INSERT INTO hoge VALUES(?)";//のようなprepare処理でDB投入
60
+
61
+
62
+
63
+ //出力するときはheaderをつけます
64
+
65
+ header('Content-Type: image/jpeg');
66
+
67
+ //UTF8で保存するとBOMが悪さをするのでUTF8Nにすること
68
+
69
+ print $img;
70
+
71
+ exit;
72
+
73
+
74
+
75
+
76
+
77
+ function createnewimage($infilename)
78
+
79
+ {
80
+
81
+ if(!file_exists($infilename)) die("no file");
82
+
83
+ list($width, $height) = getimagesize($infilename);
84
+
85
+ $newwidth =240;
86
+
87
+ $newheight = 70;
88
+
89
+ $newimage = imagecreatetruecolor($newwidth, $newheight);
90
+
91
+ $source = imagecreatefromjpeg($infilename);
92
+
93
+ imagecopyresampled($newimage, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
94
+
95
+ ob_start();
96
+
97
+ imagejpeg($newimage);
98
+
99
+ $outimage=ob_get_contents();
100
+
101
+ ob_end_clean();
102
+
103
+ imagedestroy($newimage);
104
+
105
+ return $outimage;
106
+
107
+ }
108
+
109
+
110
+
111
+ ```

1

修正

2016/09/08 12:22

投稿

yambejp
yambejp

スコア114845

test CHANGED
@@ -31,3 +31,9 @@
31
31
  - imagejpeg()
32
32
 
33
33
  - imagedestroy()
34
+
35
+
36
+
37
+ ちなみにバイナリデータをsprintfで処理するのは厳しいので
38
+
39
+ PDOなどでプレースホルダを利用してください