質問編集履歴

5

文章追記

2016/09/26 17:26

投稿

123daaa
123daaa

スコア69

test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
 
18
18
 
19
- 取得RLを
19
+ 取得URLを
20
20
 
21
21
  http://localhost/phpkiso/questions/items2.php
22
22
 
@@ -28,7 +28,29 @@
28
28
 
29
29
  補足ですが、Xcode側のSwift記述は正しいです。
30
30
 
31
+
32
+
33
+ Xcode側で、(Swiftで)
34
+
35
+
36
+
37
+ let baseURL = "http://localhost/phpkiso/questions/items2.php"
38
+
39
+
40
+
41
+ Alamofire.request(.GET, baseURL)
42
+
43
+ .responseJSON { (response) in
44
+
45
+ print(response.result.value)
46
+
47
+
48
+
49
+ この時点で、「response.result.value」は「nil」が返ります。
50
+
51
+
52
+
31
- おそらく原因は、PHPの扱い方だろうと予測しています。
53
+ そのため、原因はおそらく、PHPの扱い方だろうと予測しています。
32
54
 
33
55
 
34
56
 

4

タグを追加

2016/09/26 17:26

投稿

123daaa
123daaa

スコア69

test CHANGED
File without changes
test CHANGED
File without changes

3

問題点を整理しました。

2016/09/26 17:20

投稿

123daaa
123daaa

スコア69

test CHANGED
@@ -1 +1 @@
1
- ApacheサーバーにおいてPHPでJSON化。そのデータを以下のswiftでクライアントに取得しようとしていますが、
1
+ ApacheサーバーからJSON取得→Xcodeで表示
test CHANGED
@@ -1,102 +1,40 @@
1
- XAMMPを使ったApacheサーバーにおいて、PHPでJSON化しました。
1
+ ApacheサーバーからJSON取得→Xcodeで表示する際、
2
-
3
- そのデータを以下のswiftでクライアントに取得しようとしていますが、
4
2
 
5
3
 
6
4
 
7
- ```swift
5
+ 取得URLを
8
6
 
9
- Alamofire.request(.GET, baseURL).responseJSON { (response) in
7
+ http://localhost/phpkiso/questions/items2.json
10
-
11
- ```
12
8
 
13
9
 
14
10
 
15
- この辺りのJSONデータ取得がうまくいきません
11
+ とすれば当然、取得きま
16
12
 
17
13
 
18
14
 
19
- 結果Xcode側で上記JSONデータを取得ようとすると
15
+ しかし今回はPHPを使ってjsonデータを生成たいので
20
-
21
- エラーは出ないのですが、取得できず、「let object」がnilになっています。
22
16
 
23
17
 
24
18
 
25
- どなたか助けてください。。
19
+ 取得RLを
20
+
21
+ http://localhost/phpkiso/questions/items2.php
26
22
 
27
23
 
28
24
 
29
-
30
-
31
- ```swift
32
-
33
- func getArticles() {
25
+ としましたが、クライアント側(Xcode側)で取得できません。
34
26
 
35
27
 
36
28
 
37
- let baseURL = "http://localhost/phpkiso/questions/questions.php"
29
+ 補足ですが、Xcode側のSwift記述は正しいです。
38
30
 
39
-
40
-
41
- Alamofire.request(.GET, baseURL).responseJSON { (response) in
31
+ おそらく原因は、PHPの扱い方だろうと予測しています。
42
32
 
43
33
 
44
34
 
45
- // guard文を使ってvalueがnilだった場合は早期リターン
46
-
47
- guard let object = response.result.value else {
48
-
49
- return
50
-
51
- }
52
-
53
-
54
-
55
- let json = JSON(object)
56
-
57
- print(json)
58
-
59
-
60
-
61
-
62
-
63
- // ループ処理
64
-
65
- for i in 0 ..< json.count {
66
-
67
- let article = [
35
+ PHPコードは以下の通りです。
68
-
69
- "title": json[i]["Body"] as! String,
70
-
71
- "display_name": json[i]["Name"] as! String
72
-
73
- ]
74
-
75
- self.articles.append(article)
76
-
77
- }// ループ処理完了
78
-
79
-
80
36
 
81
37
 
82
-
83
- // 記事を全て取得後、テーブルリロード。
84
-
85
- self.table.reloadData()
86
-
87
- }
88
-
89
- }
90
-
91
-
92
-
93
- ```
94
-
95
-
96
-
97
-
98
-
99
- <追記>
100
38
 
101
39
  ```PHP
102
40
 
@@ -144,10 +82,8 @@
144
82
 
145
83
  </html>
146
84
 
147
-
148
-
149
85
  ```
150
86
 
87
+ ブラウザ上で上記、PHPを表示させた場合
151
88
 
152
-
153
- ![ブラウザのPHP表示](1dcd9e38cb76a58ff343f998684fbee9.png)
89
+ ![](1dcd9e38cb76a58ff343f998684fbee9.png)

2

ブラウザのPHP表示を追加(画像)

2016/09/26 17:20

投稿

123daaa
123daaa

スコア69

test CHANGED
File without changes
test CHANGED
@@ -147,3 +147,7 @@
147
147
 
148
148
 
149
149
  ```
150
+
151
+
152
+
153
+ ![ブラウザのPHP表示](1dcd9e38cb76a58ff343f998684fbee9.png)

1

PHPコードを追加しました。

2016/09/26 12:30

投稿

123daaa
123daaa

スコア69

test CHANGED
File without changes
test CHANGED
@@ -91,3 +91,59 @@
91
91
 
92
92
 
93
93
  ```
94
+
95
+
96
+
97
+
98
+
99
+ <追記>
100
+
101
+ ```PHP
102
+
103
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
104
+
105
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
106
+
107
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
108
+
109
+ <head>
110
+
111
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
112
+
113
+ <title>PHPテスト</title>
114
+
115
+ </head>
116
+
117
+ <body>
118
+
119
+
120
+
121
+
122
+
123
+ <?php
124
+
125
+
126
+
127
+ $Array = array(
128
+
129
+ 'Name' => '山田',
130
+
131
+ 'Body' => 'あいうえお',
132
+
133
+ );
134
+
135
+
136
+
137
+ echo json_encode($Array);
138
+
139
+
140
+
141
+ ?>
142
+
143
+ </body>
144
+
145
+ </html>
146
+
147
+
148
+
149
+ ```