YOU.comの驚異。 #YOUcom

2023.01.26

Logging

おはようございます、木曜日の朝、月曜日の朝は雨模様でしたね。

さて、自分の記事で何度か紹介しているYOU.comという検索サイト、GUI(グラフィックユーザーインターフェース)は英語仕様ですけど、日本語検索にも対応していて検索精度も結構高いです。今までの検索とは全然違うところはAIによる対話式の検索ができることです。その対話式も日本語で質問することより文章で回答してくれるという優れもの。

Looking for a Private Search Engine You Control? You.com Shows How to Search Privately
YOU.com

YOU.comでは何のAIがベースにあるのか分かりませんが、この原理はchatGPTの流れと同じです。地球の大きさはどのぐらい、何で空が青いのなど、子供の疑問にもちゃんと答えてくれる優れものです。

因みに、これがYOU.comに答えてもらった結果です。

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

AI, ChatGPT, GUI, YOU.com, グラフィックユーザーインターフェース, ベース, 何度, 優れもの, 原理, 地球, 対話式, 文章, 月曜日, 木曜日, 検索精度, 疑問, , 英語仕様, 雨模様, 青い,

サイトが無くなるのは悲しいな。まるで一つの…😶。

2022.08.31

Logging

こんにちは、2022年の8月は今日で最後です。

そんな日にスマホに撮り溜めた写真を初めて振り返って見ています、自分が撮った写真は大体、空か花ですがたまに旅先の写真なんか混ざっていたりして、そういうのを見ていると懐かしい気持ちになります。

そんな写真の中に駆け出しの芸術家の展覧会に見に行っていた時の写真を発見しました、その人の作品をぐぐってみるとFBページと商品ストアは発見したもののコロナ禍で何だか活動を辞めたみたいで、ホームページなどは見えなくなっていた。そういうサイトが消えるのをみると何か、悲しい気持ちになりますね。夢半ばで諦める人が多い、それも花が開きそうなそんな人達がなんか辞めていく、そういうのを見ると本当にもったいなって・・・。

売れっ子にならなくても良いので続けるべきです、とても大事なことや好きな事は売れっ子にならなくても、あなたの人生にとって大切なことになる、続けることと発信する事を辞めないことは人生を後から振り返った時、絶対あの時、諦めなくて良かったと思うときが決ます。なので好きなものは手放さない方が良い、人生は一度きりだから。

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

2022, 8, FB, あなた, こと, コロナ, サイト, ストア, スマホ, それ, たま, ページ, ホームページ, 一つ, , , , 人生, 今日, 作品, 写真, 半ば, 商品, 売れっ子, , 大事, 大体, 大切, 展覧会, 旅先, , , 最後, 本当, 気持ち, 活動, 発信, 発見, , , 自分, , 芸術家, 駆け出し,

自身がフォローしているTwitterアカウントでリスト自動仕分けする方法!?

2022.01.24

Logging

昨日は雨がシトシトと降っていた高知県ですが、あまり寒さを感じなくなってきていますね😌。早く春になれば良いのになって思っております。

ソースコードを読んでいただければ大体分かるかとも思いますが、そんなに難しいコードではありません。タイトル通りの処理をしています。コマンドからファイルを叩くと処理が実行されてそれぞれのリストに仕分けされます、ここでポイントなのはlist_idはどうやって導けばよいのという疑問とTwitterOAuthって何という疑問ぐらいかと思います。

list_idは事前に空のリストを生成すると自動的に割り振られるご自身のリストURLの数値部分になります。次にTwitterOAuthというのは何かというと、これはTwitterAPIを簡単に叩けるライブラリになります。これを事前にインストールすることにより簡単に処理ができます。

尚、ソースコードはTwitterAPI2.0バージョンではありません。そのうち廃止される方で書いています。

<?php
require_once("../vendor/autoload.php");

use Abraham\TwitterOAuth\TwitterOAuth;

if ($argv[0]) {
    require_once "./tw-config.php";

    date_default_timezone_set('Asia/Tokyo');
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
    $response_followers = $connection->get("friends/ids", array(
        'screen_name' => 'zip358com',
        'count' => 1000
    ));
    if ($response_followers->ids) {
        foreach ($response_followers->ids as $key => $val) {
            $response_users = $connection->get("users/show", array(
                'user_id' => $val
            ));
            if(preg_match("/(機械学習|人工知能|AI|Learning)/",$response_users->description)){
                print "[機械学習|人工知能|AI|Learning]". $response_users->id . PHP_EOL . $response_users->description . "," . PHP_EOL;
                $connection->post("lists/members/create", array(
                    'list_id'=>1485120628206497798,
                    'user_id'=>$response_users->id
                ));
            }
            if(preg_match("/(web|WEB|Web|プログラマー|エンジニア|プログラム|プログラミング|API)/",$response_users->description)){
                print "(web|WEB|Web|プログラマー|エンジニア|プログラム|プログラミング|API)". $response_users->id . PHP_EOL . $response_users->description . "," . PHP_EOL;
                $connection->post("lists/members/create", array(
                    'list_id'=>1485121383101526018,
                    'user_id'=>$response_users->id
                ));
            }
            if(preg_match("/(イラスト|写真|デザイン|art|Art|絵|漫画)/",$response_users->description)){
                print "(イラスト|写真|デザイン|art|Art|絵|漫画)". $response_users->id . PHP_EOL . $response_users->description . "," . PHP_EOL;
                $connection->post("lists/members/create", array(
                    'list_id'=>1485121210816294912,
                    'user_id'=>$response_users->id
                ));
            }
            if(preg_match("/(電車|メトロ|運行情報)/",$response_users->description)){
                print "(電車|メトロ)". $response_users->id . PHP_EOL . $response_users->description . "," . PHP_EOL;
                $connection->post("lists/members/create", array(
                    'list_id'=>1485121509320687619,
                    'user_id'=>$response_users->id
                ));
            }            
            if(preg_match("/(高知県|高知市)/",$response_users->description)||preg_match("/(高知県|高知市|kochi)/",$response_users->location)){
                print "(高知県|高知市)". $response_users->id . PHP_EOL . $response_users->description . "," . PHP_EOL;
                $connection->post("lists/members/create", array(
                    'list_id'=>1485121289165893632,
                    'user_id'=>$response_users->id
                ));
            }                        
        }
    }
}

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

ID, LIST, Twitte, Twitter, TwitterAPI, TwitterOAuth, url, アカウント, インストール, コード, ここ, こと, コマンド, これ, ご自身, ソース, それぞれ, タイトル, ファイル, フォロー, ポイント, ライブラリ, リスト, 事前, , 処理, 実行, 数値, 方法, , 昨日, 生成, 疑問, , 簡単, 自動, 自身, 部分, , 高知県,

少しjava言語を勉強中。自分の勉強方法はこんな感じになります。

2021.08.18

Logging

最近、雨が続いていてあの暑さを忘れかけていますが、いま夏なんですよね。。。天気が回復したら空の良い写真が取れそうな気がします。

さて、先日からjava言語をまともに勉強しだしました、アプリ制作をしながらjavaに触れようかなと最初は思ったのですが、考え直して基本から始めた方が遠回りだけど近道に思えたので、そちらを選びました。

今までPHP言語ばかりしていたので正直な所、java言語はとっつきにくいですけど、オブジェクト指向の王様を勉強していると他の言語にかなり応用が効くみたいなので今更ですが、勉強しているですね。

自分の勉強方法は参考書などを手にして勉強するのではなくて、実際に手を動かしながらネットで調べつつ勉強スタイルです、これが一番自分には向いている勉強方法なのかなと思います。参考書は一番最後に開くようにしているという感じです。手を動かしながら学ぶときに重要なのはお題を見つけることなのですが、この頃はアルゴリズムの問題を提供しているサイト(競技プログラミング)が山程あるので、そちらを解きながら勉強していくのがベストだと思います。

参考書を読んで、そのまま身につくという人はあまりいないじゃないかなと思いますし、実際に使う関数って限られているので、そのパターンを身につけるには問題を解いていくのが大事になると思います。

因みにjavaのコンパイルと実行方法はこんな感じになります。

javac -encoding UTF-8 example.java
java example

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

java, php, アプリ, いま, オブジェクト, かなり, こと, これ, スタイル, そちら, とき, ネット, まとも, 今更, , 先日, 写真, 制作, 勉強, 参考書, 回復, 基本, , 天気, 実際, 少し, 応用, 感じ, , , 指向, , 方法, 最初, 最後, 最近, 正直, , 王様, , 自分, 言語, 近道, 重要, , , ,

映画、記憶にございませんを観ましたよ。

2020.10.28

Logging

映画『記憶にございません!』予告

映画、記憶にございませんを観ましたよ、プライムで毎度のことながら観ました、朝のウオーキングで2日間にわけてみたのですが、あまり笑えなかったです、前の内閣をブラックユーモアで描いているところもあったかもしれませんが、全体を通してなんか笑いのキレが無かったように思えてならない。

ちょっとストーリーが良い方向へ進み過ぎなのかなという事と、キャラが全て良い人過ぎたのがこの作品の問題なのかもしれない。もう少し癖のあるキャラや嫌キャラがいても良かったように思えます。良いところは小学生低学年が見ても安心して見れる映画になっている所です。

三谷幸喜監督の作品はヒットする時はかなりヒットするだけど空振るときは大きな空振りになるということ・・・。これからも喜劇を撮ってほしいので辛口な評価にします?

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

2, ウォーキング, かなり, キャラ, キレ, こと, これ, ストーリー, とき, ところ, ヒット, プライム, ブラックユーモア, 三谷幸喜, , , 作品, 全て, 全体, 内閣, , 問題, 喜劇, 学年, 安心, 小学生, , 方向, 映画, , , 毎度, , 監督, , 空振り, 笑い, 記憶, 評価, 辛口,

明日へ続く愚痴。

2020.05.28

Logging

この頃、体調不良です。睡眠は大切ですよと本当に思います・・・。
自分の場合、平均的に8時間睡眠が必要となり、3、4時間の睡眠を毎日続けていると食欲不振になります。また寝ることを我慢していると今度は眠りが浅くすぐ目覚めてしまうという悪循環になることがわかりました。なので、明日からは規則正しい生活習慣に戻します。

この頃、お空からお金が舞い込んでこないので、自分でなにか無料のシステムを作り上げてそこから広告収入を得ようかなと考えています。例えばアプリを大量生産してそれで生計を立てているひとも世の中にはいます。自分はアプリではなくWEBシステムで生計を立てようと思っています。その他にもクラウドからお仕事もやらないといけなくなるでしょう、それに付いては明日書きますね。

まぁこの頃、プログラミングを頑張ってレベル上げして毎日頑張っていろいろ取り組んできたのですが、少々、アクセルを踏みすぎた感があります。ちなみにプログラミングは好きなので、休み無くコードを書く癖があります。凄い集中というか、そういう生き物なのだけです。仕事をしていたときからそういう感じでした。真面目ではないですよ…暗いわけでもないですよ。集中するとそうなるだけなんですよね。

逆に電話がなると仕事を中断しないといけないし時間を使うので自分はテキストが非常に良いと感じます。ホリエモンほど極端ではないものの、やはり電話は仕事を奪うという感覚はあります。もし自分が会社の社長になったなら、プログラマーさんには電話には出なくて良いといいますし、打ち合わせにもリーダー以外出なくて良いといいます。生産性を上げるには最初の上流工程でちゃんと設計するという事が大事になります。それをせず口頭だけでやっといて丸投げするような会社は使えないシステムが生産されます。そういう会社は逃げたほうが良いです。責任だけを負わされるだけで何のメリットも生まれません。そんなわけでプログラマーの生産性を上げるには徹底した効率的な職場が必要かと思います。

明日に続く。

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

, 4, 8, web, アクセル, アプリ, お仕事, お金, クラウド, コード, こと, システム, そこ, その他, それ, ひと, プログラミング, レベル, 不振, 不良, , , 今度, 休み, 体調, 収入, 場合, 大切, 大量, 少々, 広告, 循環, 必要, 愚痴, , 我慢, 明日, 本当, 毎日, 無料, 生活, 生産, 生計, , 睡眠, , 習慣, 自分, , 食欲,

夢と現実と幻想。

2018.05.04

Logging


ココで言う夢とは、睡眠時に夢のことです。
ふと、思ったのですがもし2つの世界を行きているとしたら
変な夢の意味がわかるのかなと思います。
睡眠時に別の世界へ行きアバターとし生活をしている
としたら、目が覚めるころこちらの世界と
あちらの世界が混合して夢を見る。
あちらの世界の記憶は脳には記憶されるけど
それをこちらの記憶としては取り出すことがあまり出来ないと
したらどうでしょう。変な夢をみる意味がわかるのかなと
ふと思ったのですが・・・。
常識的な話ではないけれど
夢というのはいつも不思議な気がします。
全然知らない人が夢に現れることも有る、はたまたSF映画のような
夢を見ることもじぶんはあります。
死んだ人が語りかけてくることもあります。
それが時として、こちらの人生に影響を与えることも
あったり、夢なのに正夢だったりする事があります。
ホントに夢って不思議な気がします。
確か自分の記憶が正しければ何故、人が夢を見るのかは
分かっていないそうです。それと同じぐらい不思議なのは
何故、鳥が空を飛べるのかということ、骨の形状がスポンジ状に
なっているだけで、あんなにもいとも簡単に空を飛べるのかという疑問。
本当は人が知らない何かの力を得て空を飛んでいるのかなと
自分は思っています。

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

B01561XFDQ, Blu-ray, SF映画, アバター, ころこちら, じぶん, スポンジ状, マトリックス ワーナー, 世界, 初回限定生産, 幻想, 形状, 意味, 正夢, 睡眠時, , 記憶,

空を見上げるおっさんに見える世界。

2017.10.19

Logging


空を見上げるおっさんに見える世界。
この頃、忙しくて空をみあげる事がなくなっている自分、
むかしは朝方や夕方、いい感じの景色になっていたら、空の写真を
撮影していたのですけど、この頃、そんな事もない。
空をみあげて思うことと言えば、
地球と言われる惑星に住んでいるのだなぁということ。
そこから、ズッ?っと見上げて何百年後には人類も他の惑星に住んでいるのだなぁと
思うと、あと最低でも200年は生きたいなという思いなります。
ちなみに実際、あと200年生きるということは
可能なんじゃないのかなと思い始めている今日此の頃、
理由は下記。
医療技術の進歩:とくに今は再生医療があつい!、この技術は
あと30年もすれば各臓器を大量生産できるようになるじゃないのかと
そうなると、おそらく臓器を入れ替えるというのは当たり前の世界になり
寿命は飛躍的に伸びると思います。飛躍的に伸びることにより
そのひとたちは、また新たな医療技術の恩恵をうけることが出来ます。
そうなると人の寿命は飛躍的に伸びると
あと200年は生きられるだろうと、そして最終的にひとはロボットと融合するだろうと。
ここまで生きられるかじぶんも分かりませんが、おそらく
あと30年もすれば臓器再生は当たり前の世界になっていると思います。

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

おっさん, じぶん, シンギュラリティ, ズッ, そのひとたち, むかし, ロボット, 世界, 人類, 今日此の頃, , 医療技術, 各臓器, 寿命, 惑星, , 臓器, 臓器再生, 近いエッセンス版,

映画、三度目の●人を観てきました。

2017.09.09

Logging


映画、三度目の●人を観てきました。
この映画は最後の最後まで真実か嘘なのかという事を
考える映画でした。やはり人が人を裁くのは限界があるなと言う
のが、映画を通して思えた感想ですね。人の一生がこんな理不尽に決められるというのは
非常に何とも言えない感情をいだきました。
この映画を観て人の心とは何なんだろうか?と考えてみました。
映画の後半、「器」という言葉を弁護士役の福山雅治 氏が加害者役の役所広司 氏に
投げかける所があるのだけど、それが答えであり答えではないように思えたのです。
自分の言葉で言えば「空」であり「空」でないと言えばよいのか・・・。
最後にこの映画、おすすめ度は高いです。
ヴェネチア国際映画祭でスタンディングオベーション(Standing ovation)だったらしいですが
映画を観るとその意味がよくわかります。重い映画ですが観る価値は十分ある
大人な映画なのかもしれません。

映画『三度目の殺人』予告編

 

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

Standing ovation, ヴェネチア国際映画祭, おすすめ度, スタンディングオベーション, 一生, 価値, 加害者役, 大人, 始末, 弁護士役, 役所広司, 後半, 感情, 感想, 最後, 福山雅治, , 答え, 言葉, 重い映画, 限界,

高知竜馬空港の近くにある前浜と吉川の間に行ってきたよ。

2017.08.13

Logging


高知県の前浜という場所に朝っぱらから行ってきました。
高知県の飛行場から目と鼻の先にある場所にある海辺ですが砂浜にゴミがなぁ結構多いですね。
海辺の近くには公園やテニスコートなどもあり良い環境だと思うのですけど、、、ちょっとゴミがある。
それが少し問題な感じがしますね。

それとは別に海と空きれいです。
ちなみに海岸の近くには車を停める場所(無料の駐車場)もあるので休日は子供連れやカップルが多い感じです!!
くどいけど「ゴミがなければ」もっと人が来るのではないかなぁと思ってしまいます。

 
最後に動画も載せときます。

夜明けの海

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

カップル, きれい, コード, ゴミ, それ, テニス, , 休日, 公園, 前浜, 動画, 吉川, 問題, 場所, 子供連れ, 少し, 感じ, 最後, 朝っぱら, , 海岸, 海辺, 無料, 環境, 目と鼻の先, 砂浜, , 空港, 竜馬, , 近く, , 飛行場, 駐車場, 高知, 高知県,

未だに鳥が空を飛べることが不思議でたまらない。

2016.11.21

Logging


未だに鳥が空を飛べることが不思議でたまらない。鳥はなぜ空を飛ぶ事ができるのか?
鳥の骨はスポンジ状の構造になっていている事など鳥の体は軽量に作られている為、羽ばたくだけで
空を飛ぶことが出来るらしいなのだけど、未だにこの事が不思議でたまらないのだ。
まだ、飛行機が空を飛ぶ事ができている方が理解できる、要するに
飛行機は離陸する時にかなりエネルギーをかけて、地面から離れているので
納得するのだけど、鳥はどう見ても大したエネルギーを消費していない。
それが納得出来ない理由なのだけど・・・。
本当は鳥は未だ発見されていない反重力のエネルギーを
うまく使って空を飛んでいるのではないかと妄想する時がある・・・。
なんて言えば、良い歳、何だから、そんな恥ずかしい発言よしてくれと
他人に言われることは間違いないだが、基本的に良い歳って
「ナンデスカ」って話になる。
 
トイウコトデで鳥がなぜ空を飛ぶ事が
出来るか完結に自分に教えてくれる方、
ツイッターにMessageくださいな。待ってます。
二三日なら書いた記事のこと覚えているのですが
数ヶ月過ぎると忘れ去っているので、記事リンクも
一緒に貼っていただくと有り難いです_(:3」∠)_
 

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

Message, エネルギー, かなりエネルギー, スポンジ状, ツイッター, トイウコトデ, ナンデスカ, 人工衛星, 反重力, 地面, 完結, 恥ずかしい発言, 未だ, , 良い歳, 飛行機, ,

(´ι _` )アッそうなんだそうなんだPHP fileメソッド

2015.11.09

Logging


PHPのfileメソッドっていうのが便利です。
ファイルを配列として引っこ抜いてくれる。こんな関数便利だなと
おそらく他の言語でも常識的にある関数なんだろうけど
自分はあまり知らなかったので便利だなと。
もうひとつ便利な関数は配列の中に空の値があったりすると
その配列を削除してくれるarray_filterとかいうものです。
これは便利・・・何故かってPHP、配列の中が空でも
値があるよって判断するです。そういう時に少し便利です。
emptyは使えないので・・・。もし配列が空でも必要な場合は
strlenとかでバイト数を数えるなどで対応するしか無いですね。
そういう事でメモがてらに残しときます。

$hoge = file("hoge.txt");
for($i=0;$i<sizeof($hoge);$i++){
echo hoge[$i]."<br>\n";
}
print($hoge);
$hoge2 = array_filter($hoge);
print($hoge2);

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

0, 2, array, br, echo, empty, file, filter, For, gt, hoge, lt, php, print, sizeof, strlen, txt, アッ, これ, バイド, ファイル, メソッド, メモ, もうひとつ, もの, , , , 便利, , 判断, 削除, 場合, 対応, 少し, 必要, , , 自分, 言語, 配列, 関数,

Accessのさんぷるコードができましたので(´Д`)貼っときます。

2014.08.21

Logging

突貫工事で作ったのでバグは多少あると思いますが{例えばsql インジェクション対策とか。}、Accessのsampleコードができましたので貼っときます。なお、これで何が出来るかって言えばDBの修正、追加、削除といった基本的な動きをします{挙動不審ぎみ嘘!?}。若干、ソースコードを弄くれば使い回しが出来るようにしております。飯くったり他のことをしながらもガリガリとコードを書きました。ちなみにAccessのViewerをマイクロソフトからダウンロードすると動作すると思います。ファイルは下記からダウンロードください。 追記:暇な時に改良していきますので( ゚д゚)ノ ヨロシクとコメントも暇があれば書いときます。そして無駄なコードがありますが、それも軽量していくつもりです(`・ω・´)。ちなみにいまはDBを空にすると落ちますので・・・・(直しました。)。?samplezip358.zip?[https://zip358.com/tool/samplezip358.zip][08/21 11:26]

Option Compare Database
Public db_x As Long
Public max As Variant
Function sel_all(tablename As Variant, tal_valname As Variant) As Variant
    Dim x As Long
    Dim y As Long
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge(999, 999) As Variant
    Dim val_n As Variant
    Dim val As Variant
    Set db = CurrentDb
    sql = "SELECT * FROM " & tablename & " ORDER BY ID ASC;"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    Do Until RS.EOF
        For y = 0 To UBound(tal_valname)
            hoge(x, y) = RS.Fields(tal_valname(y))
        Next y
        RS.MoveNext
        x = x + 1
    Loop
    Set db = CurrentDb
    sql = "SELECT MAX(ID) as maxs  FROM " & tablename & ";"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    max = RS.Fields("maxs")
    db_x = x - 1
    Set db = Nothing
    sel_all = hoge
End Function
Function up_in(chk As Boolean, tablename As Variant, tal_valname As Variant, tal_val As Variant, ID As Long) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge_valname As String
    Dim hoge_val As String
    Dim hoge As Variant
    If chk = True Then
        For i = 0 To UBound(tal_valname)
            hoge_valname = hoge_valname & tal_valname(i) & ", "
        Next i
        hoge_val = sql_str(tal_val, "", "", True)
        sql = "INSERT INTO " & tablename & " (" & Left(hoge_valname, Len(hoge_valname) - 2) & ")VALUES (" & hoge_val & ");"
    Else
        hoge_valn_val = sql_str("", tal_valname, tal_val, False)
        sql = "Update " & tablename & " Set " & hoge_valn_val & " WHERE ID = " & ID & ";"
    End If
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    up_in = True
End Function
Function del(tablename As Variant, tal_valname As Variant, tal_val As Variant) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge As Variant
    sql = "DELETE FROM " & tablename & " WHERE " & tal_valname & " = " & tal_val & ";"
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    del = True
End Function
Function sql_str(hoge As Variant, tal_valname As Variant, tal_val As Variant, chk As Boolean) As Variant
    Dim i As Long
    Dim hoge_str As Variant
    If chk = True Then
        For i = 0 To UBound(hoge)
            If IsNumeric(hoge(i)) Then
                hoge_str = hoge_str & hoge(i) & ", "
            Else
                hoge_str = hoge_str & "'" & hoge(i) & "', "
            End If
        Next i
    Else
        For i = 0 To UBound(tal_valname)
            If IsNumeric(tal_val(i)) Then
                hoge_str = hoge_str & tal_valname(i) & " = " & tal_val(i) & ", "
            Else
                hoge_str = hoge_str & tal_valname(i) & " = '" & tal_val(i) & "', "
            End If
        Next i
    End If
    sql_str = Left(hoge_str, Len(hoge_str) - 2)
End Function

↑クラスdbソースコード

Option Compare Database
Dim max As Long
Dim ID As Long
Dim val_val As Variant
Private Sub Form_Load()
lod
End Sub
Sub lod()
    Dim db As db_db
    Dim val_name As Variant
    Dim x As Long
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    val_val = db.sel_all("tableone", val_name)
    max = db.max + 1
    If cmb.ListCount > 0 Then
        For x = 0 To cmb.ListCount - 1
            cmb.RemoveItem 0
        Next
    End If
    For x = 0 To db.db_x
        cmb.AddItem val_val(x, 1)
    Next
    Set db = Nothing
End Sub
Private Sub cmb_Click()
    If cmb.ListIndex >= 0 Then
        Viw cmb.ListIndex
    End If
End Sub
Private Sub del_btn_Click()
    Dim db As db_db
    Dim hoge As Variant
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    If ID > 0 And max > 1 Then
        hoge = db.del("tableone", "ID", ID)
    End If
    Set db = Nothing
    lod
End Sub
Private Sub in_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("ID", "表題", "数値", "文字")
    val = Array(max, cmb, suuzi, moji)
    Set db = New db_db
    hoge = db.up_in(True, "tableone", val_name, val, max)
    Set db = Nothing
    lod
End Sub
Private Sub upd_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("表題", "数値", "文字")
    val = Array(cmb, suuzi, moji)
    Set db = New db_db
    If ID > 0 And max > 1 Then
        hoge = db.up_in(False, "tableone", val_name, val, ID)
    End If
    Set db = Nothing
    lod
End Sub
Sub Viw(i As Long)
    ID = val_val(i, 0)
    suuzi = val_val(i, 2)
    moji = val_val(i, 3)
End Sub
Sub chkchk()
    If IsNumeric(suuzi) Then
        If suuzi > 9999 Then
            suuzi = 9999
        End If
    Else
        suuzi = 0
    End If
    If IsNumeric(moji) Then
        moji = "文字が不正>" & moji
    End If
    If IsNumeric(cmb) Then
        cmb = "文字が不正>" & cmb
    End If
End Sub

↑formソースコード

著者名  @taoka_toshiaki

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

タグ

35, 358, access, db, https, sample, samplezip, SQL, Viewer, www, zip, いま, インジェクション, コード, こと, コメント, これ, サンプル, ソース, それ, ダウンロード, つもり, バグ, ファイル, マイクロソフト, ヨロシク, 下記, , , 修正, 削除, 動作, , 対策, 工事, 改良, , , 無駄, , 突貫, 若干, 軽量, 追加, 追記, ,