質問編集履歴

4

kintoneタグ追加

2021/01/12 05:05

投稿

t-yknow
t-yknow

スコア4

test CHANGED
File without changes
test CHANGED
File without changes

3

誤記訂正

2021/01/12 05:05

投稿

t-yknow
t-yknow

スコア4

test CHANGED
@@ -1 +1 @@
1
- goGuzzle ファイル名が日本語のファイルをアップロードするとファイル名が消える
1
+ Guzzle ファイル名が日本語のファイルをアップロードするとファイル名が消える
test CHANGED
File without changes

2

内容修正

2021/01/12 03:38

投稿

t-yknow
t-yknow

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,6 @@
1
1
  Guzzleを使ってフォームからファイルをアップロードさせる機能を作っています。アップロード先はkintoneで、Excel,Word,pdf,jpgなどをアップロードします。表題の通りファイル名が日本語の時にファイル名が正しく出ず、docxでは開けなくなってしまいます。
2
+
3
+ (追記)kintoneのドキュメントに「※日本語ファイル名の場合は UTF8 でエンコードした内容を指定して下さい。」と記載がありました。
2
4
 
3
5
 
4
6
 
@@ -9,6 +11,8 @@
9
11
  Upload_test.docx → 問題なし(アップロード後のファイル名:Upload_test.docx)
10
12
 
11
13
  テスト.docx → 問題あり(アップロード後のファイル名:.docx)
14
+
15
+ ファイル名をエンコードしてみましたが同じ結果でした。
12
16
 
13
17
 
14
18
 
@@ -70,7 +74,7 @@
70
74
 
71
75
  となっておりました。
72
76
 
73
- 調べてもドキュメントをみても解決方法が見つからず困っています。
77
+ エンコードの仕方が間違っていますでしょうか。調べてもGuzzleドキュメントをみても解決方法が見つからず困っています。
74
78
 
75
79
  初心者なため簡単な解決法をどうかご教授いただければ幸いです。
76
80
 
@@ -102,6 +106,8 @@
102
106
 
103
107
 
104
108
 
109
+ $filename = mb_convert_encoding($_FILES['resume']['name'], "UTF-8", "auto");
110
+
105
111
 
106
112
 
107
113
  $res = $client->request('POST', $Url,[
@@ -114,7 +120,7 @@
114
120
 
115
121
  'contents' =>fopen($_FILES['file']['tmp_name'], 'r'),
116
122
 
117
- 'filename' => $_FILES['file']['name'],
123
+ 'filename' => $filename,
118
124
 
119
125
  ]
120
126
 

1

誤記訂正

2021/01/12 01:48

投稿

t-yknow
t-yknow

スコア4

test CHANGED
@@ -1 +1 @@
1
- Guzzle ファイル名が日本語のファイルをアップロードするとファイル名が消える
1
+ goGuzzle ファイル名が日本語のファイルをアップロードするとファイル名が消える
test CHANGED
@@ -112,7 +112,7 @@
112
112
 
113
113
  'name' => 'file',
114
114
 
115
- 'contents' =>fopen($_FILES['resume']['tmp_name'], 'r'),
115
+ 'contents' =>fopen($_FILES['file']['tmp_name'], 'r'),
116
116
 
117
117
  'filename' => $_FILES['file']['name'],
118
118