質問編集履歴

2

見やすくしました

2019/12/20 02:37

投稿

hiro-chan
hiro-chan

スコア18

test CHANGED
@@ -1 +1 @@
1
- phpからpdoでmysalにユーザーの登録を実施したらエラーとなる
1
+ phpからpdoでmysqlにユーザーの登録を実施したらエラーとなる(位置情報を格納するgeometry型を使っています)
test CHANGED
@@ -1,36 +1,12 @@
1
- phpからpdoでmysalにユーザーの登録を実施したらエラーとな
1
+ phpからpdoでmysqlにユーザーの登録を実施したら以下のようにエラーとなります。
2
2
 
3
3
 
4
4
 
5
- Fatal error: Uncaught PDOException: SQLSTATE[22003]: Numeric value out of range: 1416 Cannot get geometry object from data you send to the GEOMETRY field in /var/www/html/.vscode/adduser.php:49 Stack trace: #0 /var/www/html/.vscode/adduser.php(49): PDOStatement->execute(Array) #1 {main} thrown in /var/www/html/.vscode/adduser.php on line 49
5
+ > Fatal error: Uncaught PDOException: SQLSTATE[22003]: Numeric value out of range: 1416 Cannot get geometry object from data you send to the GEOMETRY field in /var/www/html/.vscode/adduser.php:49 Stack trace: #0 /var/www/html/.vscode/adduser.php(49): PDOStatement->execute(Array) #1 {main} thrown in /var/www/html/.vscode/adduser.php on line 49
6
6
 
7
7
 
8
8
 
9
-
10
-
11
- mysql> show columns from User2;
12
-
13
- +-----------+---------------------+------+-----+---------+----------------+
14
-
15
- | Field | Type | Null | Key | Default | Extra |
16
-
17
- +-----------+---------------------+------+-----+---------+----------------+
18
-
19
- | id | int(11) unsigned | NO | PRI | NULL | auto_increment |
20
-
21
- | user_name | varchar(64) | NO | UNI | | |
22
-
23
- | password | varchar(255) | NO | | | |
24
-
25
- | latlng | geometry | NO | MUL | NULL | |
26
-
27
- | zoom | tinyint(2) unsigned | YES | | NULL | |
28
-
29
- +-----------+---------------------+------+-----+---------+----------------+
30
-
31
-
32
-
33
- 問題部分
9
+ ```問題部分のコード
34
10
 
35
11
  $pdo = connect();
36
12
 
@@ -62,6 +38,32 @@
62
38
 
63
39
 
64
40
 
41
+ ```
42
+
43
+ ```mysqlのレコード
44
+
45
+ mysql> show columns from User2;
46
+
47
+ +-----------+---------------------+------+-----+---------+----------------+
48
+
49
+ | Field | Type | Null | Key | Default | Extra |
50
+
51
+ +-----------+---------------------+------+-----+---------+----------------+
52
+
53
+ | id | int(11) unsigned | NO | PRI | NULL | auto_increment |
54
+
55
+ | user_name | varchar(64) | NO | UNI | | |
56
+
57
+ | password | varchar(255) | NO | | | |
58
+
59
+ | latlng | geometry | NO | MUL | NULL | |
60
+
61
+ | zoom | tinyint(2) unsigned | YES | | NULL | |
62
+
63
+ +-----------+---------------------+------+-----+---------+----------------+
64
+
65
+ ```
66
+
65
67
 
66
68
 
67
69
  エラーが出ないようにしたいです。

1

説明追記

2019/12/20 02:37

投稿

hiro-chan
hiro-chan

スコア18

test CHANGED
File without changes
test CHANGED
@@ -65,3 +65,7 @@
65
65
 
66
66
 
67
67
  エラーが出ないようにしたいです。
68
+
69
+ とりあえず上記のコードでユーザ名とパスワードを登録して、からログイン後のtop画面に行きたいですが、エラーが出ます。top画面に行った後に、その画面でのボタンをクリックすると現在位置を取得してUser2テーブルに格納するため、「geometry」typeのlatlngカラムを作っておいてます。
70
+
71
+ ログインの際にはユーザ名とパスワードを格納するだけなので、上記コードではとりあえず、latlngは空にしておいたという経緯です。