ソースは、K_app2に有り。
K_app2 mysql DB 読み出し(JSON DATA)
–>> ContentView3
K_app2 –>> ContentView (別府温泉道 読み込み)
naver_maps_20211230App –>> ◊Http_POST_mysql5
平成4年(2022) 1月15日(土)
Get data from API and show in List – Swift UI, PHP
APIからデータを取得し、リストに表示– SWIFT UI、PHP
Xcode –> office70… 試験アクセスerror
The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
対処:以下によりok!!
NSAppTransportSecurity(dict)
その階層下にNSAllowsArbitraryLoadsを置く。 true or false
URLSessionデータの表示:
let outputStr = String(data: data, encoding: String.Encoding.utf8) as String?
Swift return data from URLSession
温泉データ表示ok!!
引数有り参考:
/details/?text1=’.$row[‘no’]
/spa9syu_details.php/?text1=1
customsearch/v1?q=%@&cx=%@&key=%@”,search_str,searchEngineId, apiKey)
//$input_data = $_GET[‘text1’];
//print(‘入力した値は’.$input_data.'<br>’);
//print(‘帰ってきた値の型は’.gettype($input_data));
//if(is_null($input_data)){$input_data=1;}
平成4年(2022) 1月16日(日)
温泉道への引数付きアクセス、数字、アルファベットは問題無し。
URLエンコードで引っかかる模様!!
How can I convert a string to Unicode in swift?
関連:
addingPercentEncoding(withAllowedCharacters:)
mysql wildcard
パターンマッチングを行う(LIKE演算子)
//var itemString = “%” //大分県
var itemString = “%佐賀県%” //大分県
$sql = “SELECT * FROM ” . $db_name[‘kyusyu’] . ” WHERE pref LIKE “.”‘”.$input_data1.”‘” . ” AND quarity=”.”‘”.$input_data2.”‘” . ” ORDER BY no”;
mysql 二項目でのselect そしてワイルドカード利用 OK!!
これで、K_appに関して、ほぼ問題点はクリアか
平成4年(2022) 2月11日(金)
navermapsが一段落し、昨日(旅からの翌日)からサーバーへのPOST関係。
試行錯誤したものの、JSONSerializationは、結局不要で、そのままUserDefaults(既にJSON)を送ることで解決。
このあとは、サーバー側にて、PHP部分の作成か(DB格納部分)
サーバにPOPして、若干操作して、JSONリターンまでOK!!
あとは、DB格納か。
参考
How to access a json response in SwiftUI?
How to decode a property with type of JSON dictionary in Swift [45] decodable protocol
How to parse JSON using JSONSerialization
naver_maps_20211230内にHttp_POST_mysql有り。
UserDefaultsをK_app3.phpに送り、dbに格納。
K_app2.phpにて、読み込み json出力。
試行錯誤:phpからのjson読み込みのmodelは、オールstringにてok!!
次はmysqlの削除!!
★MYSQL DELETE UPDATE
PHP Delete Data From MySQL w3schools.com
MySQL DELETE Statement
DELETE FROM table_name;
平成4年(2022) 2月12日(土)
LISTの削除で検索いろいろ。
id: \.self)が必要。そのためには、codableは必要、解決策みつからず。。。
最終的に以下サイト、最後の部分は、id: \.self)を使用せずに済むかなど検討。
Listの行を削除する方法
How to delete multiple rows from List in SwiftUI?
List(apple site)有用な情報
List(apple site)有用な情報
リスト削除
K_app2内に、ListDelete ListDelete2 有り!!
平成4年(2022) 2月13日(日)
K_appD.php削除 OK!!
SQL文に間違いありで、ちょいもたもた。
DELETE FROM `k_list` WHERE
DELETE FROM ‘k_list’ WHERE <<– 不可!!
平成4年(2022) 2月14日(月)
phpMyAdmin mysql AUTO_INCREMENT
phpMyAdmin で自動的に連番をつけてくれる、AUTO_INCREMENT を設定する
LISTの削除で検索いろいろ。
id: \.self)が必要。そのためには、codableは必要、解決策みつからず。。。解決!! 以下2サイト Hashable Equatable 。
How to conform to the Equatable protocol
How to conform to the Hashable protocol
平成4年(2022) 3月2日(水)
もろもろ片付き、本日より再びSEVER関係。
まずは、MYSQLの構造と書き込みを詰めること。
Http_POST_mysql5をK-APPに組み込みから、
K_app2内に読み込みあり。(MYSQLより)
平成4年(2022) 3月3日(木)
本日予定:
サーチ機能に、韓日の切り替え追加
サーバー版のdelete削除昨日追加
DBのnoを削除し、IDを主KEY設定。
INSERT … ON DUPLICATE KEY UPDATEを使えば、うまくいきそう。
MySQLのINSERT … ON DUPLICATE KEY UPDATEでレコードの挿入/更新を便利に実行
Insert into a MySQL table or update if exists
DBとの連携delete削除OK
INSERT INTOに ON DUPLICATE KEY UPDATE ID = ‘”.$value->ID.”‘”;
に変更。これで、重複データを送っても、格納されることは無い。
これまでで、一段落か!! あとは、SELECT文を使った表示の組み込み。
重要パーセントエンコード
// SELECT * FROM `k_list` WHERE category LIKE '%'
// 重要!! パーセントエンコードが必要!!!!
//
let itemEncodeString = select_str.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed)
let str1 = itemEncodeString
平成4年(2022) 3月4日(金)
K-appRについて、SELECT文にWHEREがある無し追加。
DB書き込みのUPDATA不足分追加。
Http_GET_mysqlのMODEL化、これによって、SERCH BAR表示までOK!!
search barの機能追加は、これから。あとはカテゴリーの選択をどうするか? filterでokか?
HTTP 読み 書き 更新等は、MODEL化する必要ありか。
平成4年(2022) 4月12日(火)
async/await 以下採用
Loading JSON data with async/await
async/awaitを使用したJSONデータの読み込み 日本語