質問編集履歴

1

コードを加筆しました。

2021/12/01 15:32

投稿

tom_gy88
tom_gy88

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,113 @@
1
1
  スマートフォンから画像をアップロードした際に画像が回転してしまいます。
2
2
 
3
3
  exif情報を取得後にどのように処理をしてフォルダに移動させればよいのでしょうか?
4
+
5
+
6
+
7
+ iphone からのフォーム送信で縦向きの画像が横向きになってしまいます。
8
+
9
+
10
+
11
+ php 5.6
12
+
13
+ mysql 5.7
14
+
15
+
16
+
17
+ ```php
18
+
19
+ コード
20
+
21
+ define('IMAGES_DIR', dirname($_SERVER['SCRIPT_FILENAME']).'/images');
22
+
23
+ define('THUMBNAIL_DIR', dirname($_SERVER['SCRIPT_FILENAME']).'/thumbnils');
24
+
25
+
26
+
27
+ define('THUMBNAIL_WIDTH', 300);
28
+
29
+ define('MAX_FILE_SIZE', 5*1024*1024); // 2MB
30
+
31
+ error_reporting(E_ALL & ~E_NOTICE);
32
+
33
+
34
+
35
+ $image = $_FILES['c_day_file'];
36
+
37
+ $tmpname = $image['tmp_name'];
38
+
39
+
40
+
41
+
42
+
43
+ $size = filesize($tmpname);
44
+
45
+ $imagesize = getimagesize($tmpname);
46
+
47
+
48
+
49
+ switch($imagesize['mime']){
50
+
51
+ case 'image/gif':
52
+
53
+ $ext = '.gif';
54
+
55
+ break;
56
+
57
+ case 'image/jpeg':
58
+
59
+ $ext = '.jpg';
60
+
61
+ break;
62
+
63
+ case 'image/png':
64
+
65
+ $ext = '.png';
66
+
67
+ break;
68
+
69
+ case 'image/heic':
70
+
71
+ $ext = '.jpg';
72
+
73
+ break;
74
+
75
+ default:
76
+
77
+ exit;
78
+
79
+ }
80
+
81
+
82
+
83
+ $imageFileName = sha1(time().mt_rand()) . $ext;
84
+
85
+
86
+
87
+ //画像の保存
88
+
89
+ $imageFilePath = IMAGES_DIR . '/' . $imageFileName;
90
+
91
+
92
+
93
+ /*$imagick = new Imagick($imageFilePath);
94
+
95
+ $imagick -> stripImage();
96
+
97
+ $imagick -> writeImage($imageFilePath);*/
98
+
99
+
100
+
101
+ $rs = move_uploaded_file($tmpname, $imageFilePath);
102
+
103
+ if (!$rs) {
104
+
105
+ echo "cloud not upload";
106
+
107
+ exit();
108
+
109
+ }
110
+
111
+
112
+
113
+ ```