@Blog
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。

ページ無限スクロールの作り方 #インフィニティ#InfinityPageScroll #JavaScript
2022.09.22
おはようございます、台風14号が過ぎ去ってからいきなり秋模様ですね🫠。
さて、先日ツイートしたページ無限ループが出来るJavaScriptコードを書きました。これを作ろうと思ったキッカケは、自分が運営しているWordPressサイトに巷のページ無限スクロールプラグインが尽く(ことごとく)使用出来なかったので自分で自作した訳です。因みにページ無限スクロールプラグインとはページを送りをしなくてもページの最下までスクロールすると次頁を読み込んでくれるプラグインの事を指します。

下記のコードは自サイト専用なのでそのまま使用することは出来ませんが、重要な部分だけ抜き取って再利用すれば、独自のページ無限ループに対応することは可能かと思います。
コードを読んで頂ければ分かることですが、重要なポイントはページを読み込む方法とそれをDomに変換する方法だと思います。まず、ページを読み込む方法は下記のファンクションで可能です。
fetch(next_url).then(
response => response.text()
).then(data => {
そしてDomに置き換えている所はこの部分になります。これら2つの箇所が重要になります。
const parser = new DOMParser();
const doc = parser.parseFromString(data, 'text/html');
これらの事に注意して独自コードを書いてみてください。最後に全コードを記載しときます。
let cnt = 2;
let blk = 0;
async function nextpage() {
if (cnt !== blk) {
blk = cnt;
await (async () => {
let next_url = "https://fox-black.com/blog/page/" + cnt;
return await fetch(next_url).then(
response => response.text()
).then(data => {
const parser = new DOMParser();
const doc = parser.parseFromString(data, 'text/html');
let blogs = doc.querySelectorAll('.blogpage');
cnt++;
if (blogs[0].innerHTML !== undefined) {
document.querySelector(".foxpage").insertAdjacentHTML("beforeend", (function (elm) {
let str = "";
for (const key in elm) {
const element = elm[key];
if (element.innerHTML !== undefined) {
str += "<div class=\"blogpage\">" + element.innerHTML + "</div>";
}
}
return str;
})(blogs));
} else {
if (document.querySelector("#fin") === null) {
document.querySelector(".foxpage").insertAdjacentHTML("beforeend", "<div id=\"fin\"></div>");
}
}
}).catch(error => {
if (document.querySelector("#fin") === null) {
document.querySelector(".foxpage").insertAdjacentHTML("beforeend", "<div id=\"fin\"></div>");
}
});
})();
}
}
if (navigator.userAgent.match(/iPhone|Android.+Mobile/)) {
window.addEventListener("scroll", async function () {
let s = (() => {
let tgt;
if ('scrollingElement' in document) {
tgt = document.scrollingElement;
} else if (this.browser.isWebKit) {
tgt = document.body;
} else {
tgt = document.documentElement;
}
return tgt;
})();
if (document.querySelector("#fin") === null && s.scrollTop >= (s.clientHeight - 650)) {
await nextpage();
}
});
} else {
document.querySelector(".foxpage").addEventListener("scroll", async function () {
if (document.querySelector("#fin") === null && document.querySelector(".foxpage").scrollTop >= (document.querySelector(".foxpage").scrollHeight - 300)) {
await nextpage();
}
});
}
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
14, dom, InfinityPageScroll, javascript, WordPress, インフィニティ, キッカケ, コード, こと, これ, サイト, スクロール, それ, ツイート, プラグイン, ページ, ポイント, ループ, 下記, 事, 作り方, 使用, 先日, 利用, 可能, 台風, 変換, 対応, 専用, 巷, 方法, 最下, 模様, 次頁, 無限, 秋, 自, 自作, 自分, 訳, 運営, 部分, 重要,

一週間の予約が出来るデモコードです。良かったらどうぞ😌。 #php #code
2022.09.17
おはようございます、今日から台風接近らしいですね。この投稿は昨日書きました。
さて、一週間の予約(時刻表から)が出来るデモコードを書きました。これを書いたキッカケは昔の職場の方がこんな感じのUIを作られていたのを見て、自分も書いてみようと思いDEMOコードを朝起きて調べながら書きました。調べたことは選択を解除する方法だけで、後はオリジナルコードです、設計書も何もなく組み立ていきましたので、欠陥があるかもです。また、Qiitaにも記載しましたが、コメントをほぼ書いていません。書かずともプログラマーなら分かるだろうという感覚です。
肝心の確認部分は記載していないのにも訳があります。営業妨害になっては駄目だからです。そういう理由で確認部分以降は書いていません。
こちらにもソースコードを掲載しときますね。
<?php
ini_set("display_errors",0);
/**
* @param array $holiday
* @return string $str
*/
function fn_header($holiday = [])
{
$str = "";
$date = new DateTime();
for ($i = 0; $i < 7; $i++) {
!$i ? "" : $date->modify('+1 day');
$w = $date->format("w");
$tabindex = $i*7;
$ho = (function ($days, $holiday = []) {
return (array_search($days, $holiday) !== false) ? "holiday" : "";
})($date->format("Y-m-d"), $holiday);
$str .= "
<th tabindex=$tabindex>
<span class='header_no week_no_$w $ho'>" . $date->format("Y-m-d") . "</span>
</th>";
}
return $str;
}
/**
* @param int $h_min
* @param int $h_max
* @param int $m_interval
* @param array $cnt
* @param array $reserve
* @param array $holiday
* @return string $str
*/
function fn_time($h_min, $h_max, $m_interval,$cnt=[],$holiday = [], $reserve = [])
{
$str= [];
for ($h = $h_min; $h <= $h_max; $h++) {
for ($m = 0; $m < 60; $m = $m + $m_interval) {
print("<tr>\n");
$date = new DateTime();
for ($i = 0; $i < 7; $i++) {
$cnt[$i]=!$cnt[$i]?(((($h_max - $h_min)+1)*(60/$m_interval))*($i))+7:(++$cnt[$i]);
!$i ? "" : $date->modify('+1 day');
$w = $date->format("w");
$ho = (function ($days, $holiday = []) {
return (array_search($days, $holiday) !== false) ? "holiday" : "";
})($date->format("Y-m-d"), $holiday);
$time = sprintf("%02d:%02d",$h, $m);
if ($ho) {
print("
<td class='' tabindex={$cnt[$i]}>
<span class='header_no week_no_$w $ho'>" . $time . "</span>
</td>");
} else {
$r = (function ($days, $reserve = []) {
return (array_search($days, $reserve) !== false) ? "reserve" : "";
})($date->format("Y-m-d") . "_" . $time, $reserve);
if (!$r) {
print("
<td class='date_" . $date->format("Y-m-d") . "_{$time}' tabindex={$cnt[$i]} data-date='" . $date->format("Y-m-d") . "_{$time}'>
<a class='time_{$m}_" . $date->format("Y-m-d") . "_{$time}' data-sortno={$cnt[$i]} href='#?data=" . $date->format("Y-m-d") . "_{$time}'><span class='header_no week_no_{$w} {$h}'>{$time}</span></a>
</td>");
} else {
print("
<td class='' tabindex={$cnt[$i]}>
<span class='header_no week_no_$w $r'>" . $time . "</span>
</td>");
}
}
}
$date = null;
print("</tr>\n");
}
}
return "";
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<title>予約-時刻表(デモ版)</title>
<style>
table,tr,td{
user-select: none;
}
</style>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-12 text-center">
<h1 class="display-1">予約-時刻表<br></h1>
<h5>{予約:時刻をクリックするか、<br>
左クリック選択状態で複数選択可能です<br>
(日付またぎは禁止しています)}</h5>
<h5>{ダブルクリックすると予約画面に遷移します。<br>
※DEMO版ですので予約登録画面は御座いません}</h5>
</div>
</div>
</div>
<div class="container-fluid text-center">
<div class="row">
<div class="col-12">
<table class="shadow-lg table table-hover table-bordered">
<thead>
<tr>
<?= fn_header() ?>
</tr>
</thead>
<tbody>
<?=fn_time(10, 20, 10,[],["2022-09-18","2022-09-23"],["2022-09-19_10:40","2022-09-19_10:50"]) ?>
</tbody>
</table>
</div>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/2.9.2/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.0/js/bootstrap.min.js"></script>
<script src="./assets/js/main.js?<?=time()?>"></script>
</body>
</html>
let date_obj = document.querySelectorAll("td");
let submit_url = "https://example.com";
let is_date_data = [];
let cnt = 0;
date_obj.forEach(function (elm, key) {
elm.addEventListener("mouseout", select_in_value);
elm.addEventListener("click", sp_select_in_value);
elm.addEventListener("touchend", sp_select_in_value);
elm.addEventListener("dblclick", select_out_value);
});
function check_value(o, e) {
if (is_date_data.length === 0) {
return true;
}
let d = o.getAttribute("data-date");
return d ? ((d) => {
let f = is_date_data.find(element => {
let pattern = new RegExp(d.split("_")[0]);
return !element.match(pattern);
}) ? false : true;
if (!f) {
select_clear(o, e);
is_date_data = [];
cnt = 0;
}
return f;
})(d) : false;
}
function select_in_value(e) {
if (e.buttons === 1 && check_value(this, e)) {
if (this.getAttribute("data-date")) {
this.style.backgroundColor = "#555";
this.children[0].style.color = "#fff";
if (is_date_data.indexOf(this.getAttribute("data-date")) && is_date_data.indexOf(this.getAttribute("data-date"))) {
is_date_data[cnt] = this.getAttribute("data-date");
cnt++;
}
}
}
}
function sp_select_in_value(e) {
if (check_value(this, e)) {
if (this.getAttribute("data-date")) {
this.style.backgroundColor = "#555";
this.children[0].style.color = "#fff";
if (is_date_data.indexOf(this.getAttribute("data-date")) && is_date_data.indexOf(this.getAttribute("data-date"))) {
is_date_data[cnt] = this.getAttribute("data-date");
cnt++;
}
}
}
}
function select_out_value(e) {
if (is_date_data.length) {
let is_data = is_date_data.map(function (elm, index) {
return "date[" + index + "]=" + elm;
});
window.location.href = submit_url + "?" + is_data.join("&");
}
}
function select_clear(o, e) {
let is_ClassName = [];
is_ClassName = is_date_data.map(function (d) {
return "date_" + d;
});
is_ClassName.map(class_name => {
document.getElementsByClassName(class_name)[0].style.backgroundColor = "#fff";
document.getElementsByClassName(class_name)[0].children[0].style.color = "#0d6efd";
})
}
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
0, Code, com, demo, https, ligaLgY-uZ, php, qiita, UI, watch, www, youtube, オリジナル, キッカケ, コード, こちら, こと, コメント, これ, ソース, デモ, プログラマー, 一, 予約, 今日, 台風, 営業, 妨害, 後, 感じ, 感覚, 投稿, 接近, 掲載, 方, 方法, 昔, 昨日, 時刻表, 朝, 欠陥, 理由, 確認, 職場, 肝心, 自分, 解除, 記載, 設計書, 訳, 選択, 部分, 駄目,

1万件のCSVを読み込みテーブルに保存する雛形コード #PHPCode
2022.09.08
おはようございます、徐々に秋ぽっい日差しになってきましたね(まだ暑いけども😌)。
今日は、1万件のCSVを読み込みテーブルに保存する雛形コードを昨日、ちょちょっと書きましたので記載します。ファイルをダウンロードして使いたい方はGithubのリンクを下に貼っときますので、ご使用頂けたらと思います。尚、テーブルなどはCSVを参考にご自身で構えてください。
※動作環境はPHP8系です、なのでPHP7系では一部エラーが出ます。fgetcsv…nullを0へ変更。
Githubのリンクはこちら
Qiitaの方に記載しようかどうしようか、迷ったのですが第一弾目がアクセス数がそこそこ伸びたのでこれ以上、注目されるのは嫌なのでブログの方に記載しました。1万件のCSVを簡単に読み込ませる方法はPHPコードを書くのではなく、SQLのコマンドで実行した方が実は早いですけど・・・。
早いですけど、その場合、CSVがちゃんとしたファイルではないと上手くテーブルに保存されない場合や、そもそもコマンドラインで操作出来ない場合もあったりしてPHPコードなどで制御しないと駄目な事もあります。そんな時に、このコードをサンプルとして使って頂ければ良いなと思い作りました。
そんなにコードを書かなくてもまぁ動くんですよ。ちなみにソースコードには、あまりコメントを書いていないですが、プログラマーなら大体の人が理解できるレベルかと思います。
<?php
//ini_set("display_errors","On");
session_start();
require "db_config.php";
//読み込みCSVファイル名セット
class csv
{
/**
* @param string $filename
* @param int $cnt
* @return Object
*/
public function ini_csv($filename = "", $cnt = 0)
{
return new csv_read($filename, $cnt);
}
}
//CSVデータを読み込ます
class csv_read
{
var $max = 10000;
var $cnt = 0;
var $handle = null;
/**
* @param string $filename
* @param int $cnt
*/
public function __construct($filename = "", $cnt = 0)
{
$this->cnt = $cnt;
$this->handle = fopen($filename, "r");
$_SESSION["offset"] ? fseek($this->handle, $_SESSION["offset"]) : $this->handle;
}
/**
* @param int $header_skip
* @return Object
*/
public function reader($header_skip = 0)
{
if ($this->handle !== FALSE) {
$response = null;
$data = fgetcsv($this->handle, null, ",");
if (!$header_skip || $_SESSION["offset"]) {
if ($data !== FALSE) {
$_SESSION["offset"] = ftell($this->handle);
$response["data"] = $data;
$response["cnt"] = $this->cnt > $this->max ? 0 : ($this->cnt + 1);
$flag = true;
} else {
$_SESSION["offset"] = null;
$flag = false;
}
} else {
$_SESSION["offset"] = ftell($this->handle);
$response["cnt"] = $this->cnt > $this->max ? 0 : ($this->cnt + 1);
$flag = false;
}
} else {
$_SESSION["offset"] = null;
$flag = false;
}
return new table_save($flag, $response);
}
}
//tableにCSVデータを保存
class table_save
{
var $flag = false;
var $result = null;
/**
* @param boolean $flag
* @param array $response
* @return void
*/
public function __construct($flag, $response)
{
$this->flag = $flag;
$this->result = $response;
$this->column_name = "name,,...";
}
/**
* @param string $column_name
* @return void
*/
public function tbl_save($column_name = "")
{
if ($this->flag) {
$column = $column_name ? $column_name : $this->column_name;
$is_column = explode(",", $column);
foreach ($is_column as $key => $val) {
$is_value[$val] = $this->result["data"][$key];
}
try {
$pdo = new PDO(DSN, USERNAME, PASSWORD);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = (function ($is_column) {
$INSERTFIRST = null;
$INSERTLAST = null;
foreach ($is_column as $key => $val) {
$INSERTFIRST[] = "$val";
$INSERTLAST[] = ":$val";
}
$INSERTSQL = "(" . implode(",", $INSERTFIRST) . ")values(" . implode(",", $INSERTLAST) . ")";
$UPDATESQL = null;
foreach ($is_column as $key => $val) {
$UPDATESQL[] = "$val = :$val";
}
return "INSERT INTO " . TABLENAME . $INSERTSQL . " ON DUPLICATE KEY UPDATE " . implode(",", $UPDATESQL) . ";";
})($is_column);
$stmt = $pdo->prepare($sql);
foreach ($is_value as $key => &$value) {
$is_type = ($key === "test3" || $key === "test13") ? PDO::PARAM_INT : PDO::PARAM_STR;
$stmt->bindValue(":$key", $value, $is_type);
}
$this->result["sql"] = $stmt->execute();
} catch (\Throwable $th) {
//throw $th;
$this->result = null;
print $th->getMessage();
}
}
print json_encode($this->result);
}
}
//RUN...POST DATA
if (isset($_POST["csrf_token"]) && d_xss($_POST["csrf_token"]) === $_SESSION['csrf_token']) {
$_SESSION["offset"] = (int)d_xss($_POST["reset_flag"]) === 1 ? null : d_xss($_SESSION["offset"]);
$filename = d_xss($_POST["filename"]);
$cnt = (int)d_xss($_POST["cnt"]);
$column_name = "test1,test2,test3,test4,test5,test6,test7,test8,test9,test10,test11,test12,test13,test14,test15";
$header_skip = 1;
$csv = new csv();
$csv->ini_csv($filename, $cnt)->reader($header_skip)->tbl_save($column_name);
$csv = null;
} else {
print "";
}
function d_xss($data){
$data = strip_tags($data);
$data = htmlspecialchars($data,ENT_QUOTES);
return $data;
}
<?php
// ログインした状態と同等にするためセッションを開始します
session_start();
// 暗号学的的に安全なランダムなバイナリを生成し、それを16進数に変換することでASCII文字列に変換します
$toke_byte = openssl_random_pseudo_bytes(16);
$csrf_token = bin2hex($toke_byte);
// 生成したトークンをセッションに保存します
$_SESSION['csrf_token'] = $csrf_token;
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<title>CSV</title>
</head>
<body>
<input type="hidden" name="csrf_token" value="<?=$csrf_token?>">
<span class="h3" id="cnt"></span><br><br>
<span class="h4" id="read_csv"></span><br><br>
<span class="h4" id="debug"></span><br><br>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.1/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
<script>
window.onload = function(){
read_csv(0,1);
};
function read_csv(cnt,reset_flag){
try{
$.ajax({
type: "post",
url: "./assets/php/class_csv.php",
async: false,
data: {csrf_token:document.getElementsByName("csrf_token")[0].value,reset_flag:reset_flag,filename:"dummy.csv",cnt:cnt},
dataType: "json",
success: function (response) {
if(response){
cnt = response.cnt;
document.getElementById("cnt").innerText = cnt;
if(response.data){
document.getElementById("read_csv").innerText = response.data[0] + response.sql;
document.getElementById("debug").innerText = cnt ===21?response.data:document.getElementById("debug").innerText;
}
setTimeout(function(){read_csv(cnt)},0);
}
}
});
}catch(e){
console.warn(e);
read_csv(cnt);
}
}
</script>
</body>
</html>
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
0, 1, 7, 8, CSV, fgetcsv, github, null, php, PHPCODE, qiita, SQL, アクセス, エラー, コード, こちら, コマンド, これ, ご使用, ご自身, ダウンロード, ちょ, テーブル, ファイル, ブログ, リンク, 一, 一部, 万, 下, 今日, 保存, 動作, 参考, 変更, 実行, 方, 方法, 日差し, 昨日, 有言実行, 注目, 環境, 秋, 簡単, 記載, 雛形,

submit(サブミット):送信させない4つの方法です🙄。#javascript #サブミットキャンセル
2022.09.07
おはようございます、台風一過が去りましたね😌。
さて、今日はsubmit(サブミット):送信させない4つの方法を記載します、方法は大きく分けて2つの方法があり、それを細分化して4つの方法になります。まず、一番目は“送信する際(form側)”にてキャンセルする方法です。この場合、addEventListener(アッドイベントリスナー)でキャンセル処理する場合とonsubmitを使用してキャンセルする方法があります。
サンプルコード例1と例3にあたるコードが上記のコードになります。

次に”ボタンをクリック”した際にサブミット(送信)処理をキャンセルする方法です、この方法でも送信を阻止する事ができます。
サンプルコード例2と例4にあたります、自分としてはフォームで処理した方が良いかなと思いますが、こちらでも送信をキャンセルする事ができます。

尚、ソースコードは下記になります。また、参考にしたサイトのリンクを貼っときます。MDNのリンクです。
<form id="frm" method="post" action="./example/">
<input type="hidden" name="example" value="data">
<button type="submit" class="btn btn-primary">Submit1</button>
</form>
<form method="post" action="./example/">
<input type="hidden" name="example" value="data">
<button id="btn" type="submit" class="btn btn-primary">Submit2</button>
</form>
<form method="post" action="./example/" onsubmit="return func1()" >
<input type="hidden" name="example" value="data">
<button type="submit" class="btn btn-primary">Submit3</button>
</form>
<form method="post" action="./example/" >
<input type="hidden" name="example" value="data">
<button type="submit" class="btn btn-primary" onclick="return func2()" >Submit4</button>
</form>
//例1
document.getElementById("frm").addEventListener("submit",function(event){
event.preventDefault();
});
//例2
document.getElementById("btn").addEventListener("click",function(event){
event.preventDefault();
event.stopPropagation();//インターフェイスのメソッドで、キャプチャおよびバブリング段階において現在のイベントのさらなる伝播を阻止します。
});
//例3
function func1(){
return false;
}
//例4
function func2(){
return false;
}
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 2, 3, 4, addEventListener, Form, javascript, onsubmit, submit, アッド, イベント, キャンセル, クリック, コード, こちら, サブミット, サンプル, それ, フォーム, ボタン, リスナー, 一, 上記, 事, 今日, 使用, 例, 側, 処理, 台風一過, 場合, 方, 方法, 次, 細分化, 自分, 記載, 送信, 阻止, 際,

基本情報技術者試験を無料で勉強する方法を教えます🤔。
2022.09.02
おはようございます、マスクをすると直ぐに肌に痒みを感じます💦。
前置きとして基本情報技術者試験は来年(2023年)からいつでも基本情報技術者試験が受けれるようになります。年二回の試験は今年で最後です、最後の試験も予約してCBT(Computer Based Testing(コンピュータ ベースド テスティング))で受ける形になります。CBTとは簡単に言えばパソコンを使用して回答するものになります、回答は選択式なので今までの筆記試験と変わりません。全問回答した後、直ぐに正答率が分かります。そこが筆記試験とは違う形になります😶。
さて、基本情報技術者試験を無料で勉強する方法を教えます。まずはYOUTUBEを使います。YOUTUBEで基本情報技術者などと検索すると基本情報の午前(A)問題や知識を解説しているYOUTUBERがいますので自分が分かりやすいなと思った人の動画を見ると良いでしょう。
次に動画解説を見た後に基本情報技術者の過去問を徹底に解くことが大事になります。因みに基本情報の午前は過去問題集を9割解けるようになれば確実に本試験でも7割は取れます。過去問題を解くのに最適なサイトで一夜漬け情報処理サイトがありますのでそちらを活用ください。
午前は大体、この方法で合格出来ますが、問題は午後(B)です。午後を解説しているサイトは少ない理由は午前は暗記問題ですが、午後は自分で考える力が大事になってきます。アルゴリズムの概念やデーターベースの概念、プログラムを読む力、また文章の読解力も必要になってきます。その為、まずは午後の問題をひたすら自分で解く事により解く力を身につけましょう。分からないことは自分で調べ、再度、問題を解くという反復学習により午後の試験を解く力が身につきます。尚、最初は時間制限を設けずに解くようにして、最後まで自分で解く力を養うようにしましょう。
このような事に気をつけながら勉強することで確実に合格に近づきます。後は毎日、勉強することですね。皆様、基本情報技術者試験頑張って下さい。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2023, Based, CBT, Computer, https, Testing, www, YO, youtube, YOUTUBER, いつ, コンピュータ, そこ, テスティング, パソコン, ペースト, マスク, もの, 予約, 二, 人, 今年, 使用, 全問, 前置き, 勉強, 動画, 午前, 問題, 回答, 基本, 年, 形, 後, 情報, 技術者, 方法, 最後, 来年, 検索, 正答, 無料, 知識, 筆記, 簡単, 肌, 自分, 解説, 試験, 選択,

わらわらわら(www)をのけました。キャッシュこワい🙄
2022.08.23
こんにちは、今日は朝少しサーバーをイジって朝食後、外出しておりました。
まだ、不安定ですがwwwを除けてzip358.comに戻しました。除けた理由は気まぐれです、DNSのキャッシュが意地悪していて切り替えに時間を費やしてしまいましたが、一応無事に変更した形になります。
これが仕事だったら嫌だなって感じます、数ヶ月使用しているとキャッシュがDNSサーバーに蓄積されているので、その切替は各サーバー頼み。特に大企業じゃない限りDNSサーバーのキャッシュを削除してくれないでしょうね。
WEBサイトやWEBアプリを扱っている企業の担当者にとってサイト移行は胃が痛む仕事かと思います。お客様には見えないと言われたり上司からは早く見えるようにしてとか言われたりする場合もありますからね。因みに自分は徐々に移行する方法でサイト移行を済ませます。まずはDBを移行し、その後、ファイルなどを移行しホストを変えてみて上手く動作しているか確認後、IPアドレスを変更するという形です。
尚、メールサーバは大体、以前のサーバーを使用して頂けるならそうして貰います。
零細企業の場合、インフラからバックエンド、フロント全てに関わることもあるので良い経験になります。良い経験ですが大変です、言うがやすし行うは難しです。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
358, com, db, DNS, web, www, zip, アプリ, いし, お客様, キャッシュ, これ, サーバー, サイト, ファイル, ホスト, ワ, ワラ, 上司, 不安定, 今日, 仕事, 企業, 使用, 削除, 動作, 場合, 変更, 外出, 少し, 形, 後, 意地悪, 担当者, 数, 方法, 時間, 朝, 朝食, 気まぐれ, 無事, 理由, 確認, 移行, 胃, 自分, 蓄積, 限り,

カウントダウンしなくても片手で数えれる日数。
2022.07.11
おはようございます。毎日の事を淡々とこなしていたら、もうあと数日で今の会社を退職することになります。
先日いろいろな動画を見て結局のところ何か自分が掲げた目標で成功する方法はコレだなと思いましたので書いていきます。
何か自分が掲げた目標で成功する方法は、熱意をもって毎日のことをこなしていく事だと誰かが言っていました。ある程度、目標は必要ですがやり続ける熱意や努力がある人のほうが実になる人が多いだとか、逆に計画的に物事を進めようとしても上手くいかない事が多く、失敗するケースが多いのだとか。
これを聞いて「確かにそうだよな」と感じましたね、人生って思い通りにいかないものですよね。自分の思い通りにならないのが人生だと。思い通りになるとある意味、それは怖い事なのかもしれません。
あと掲げた目標に到達したいのならば、小さな目標をいくつも掲げると良い、例えば毎日のアクセス数をいついつまでに、10人、10人の目標が達成できたら次は20人と少しだけ目標を上げる、その連続で目標に近づく、もしくは達成することが出来ます。目標の修正と見直し(改善)も大事です。
目標に達成したければもう一つ大事になるのが、己を知るという事らしいです。自分はどんな人であるのかを深掘りしていき、欠点や優位性を箇条書きにして俯瞰することが大事になるらしいです。
そして達成するかどうかは徹頭徹尾の力がないと無理なのかも。
以上、動画を見て自分なりにまとめてみました。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, 2, アクセス, いくつも, いろいろ, カウントダウン, ケース, こと, これ, コレ, それ, ところ, もの, 事, 人, 人生, 今, 会社, 何か, 先日, 到達, 努力, 動画, 失敗, 必要, 思い通り, 意味, 成功, 数日, 方法, 日数, 次, 毎日, 熱意, 片手, 物事, 目標, 自分, 誰か, 退職, 逆, 達成,

先日、サーバーを移行しました。AWSさようなら。
2022.06.30
おはようございます。初夏らしいですが初夏? 増暑です…😆。映画、SLAM DUNKが待ち遠しいです。
其れはさておき、サーバーをAWSからさくらVPSサーバーに移行しました、迷っている暇は無かった・・どんどんと経費がかさむので止む得なく急遽、平日の休みを使用してサーバーを移行しました。移行したんだけど、少しミスってアクセスの多いサーバーを見えなくなるという現象が出てしまいました。40分ほど閲覧できなくなってしまっていた。
結構焦りますよね。
閲覧できない状態が数時間とか続いたら大変ですよ本当に…。仕事では失敗したくないなって思います。今回の反省点はやはりサーバー移行すると何かしら環境が違うので動かなかったりする。
そういう時は落ち着いて深呼吸でもして、ログを見ることが大事、結局のところログに答えが載っていることが多いです。今回もそんな感じでした。
因みに以前書いた、サーバー移行時にscpを使う方法。これはFTP使用するよりも時間短縮になるから覚えていたほうが賢明です。
scp -irp /~/example.pem /var/www/html/* root@example.com:/var/www/html/
# scp -irp [鍵.pem] [転送元ディレクトリ] [ユーザー@ホスト:転送先ディレクトリ]
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
40, AWS, DUNK, SCP, SLAM, VPS, アクセス, こと, サーバー, さくら, ところ, ミス, ログ, 今回, 仕事, 以前, 休み, 使用, 先日, 其れ, 初夏, 反省点, 増, 大事, 大変, 失敗, 少し, 平日, 感じ, 数, 方法, 映画, 時, 暇, 本当, 深呼吸, 状態, 現象, 環境, 移行, 経費, 閲覧,

Windows10~起動時にアプリ(ソフト)を自動起動させる方法です。
2022.06.23
おはようございます。隠しフォルダーが見える環境です。
さて、今日のお題はITエンジニアなら朝飯前のことだと思います。「Windows10~起動時にアプリ(ソフト)を自動起動させる方法です。」知らなかったら恐らくとても運の良いITエンジニアかと思います。方法を箇条書で記載しますねーーー😌。
- 隠しフォルダが表示できるようにエクスプローラーの設定を変更します(ググって)。
- 下記のフォルダ場所まで移動します(ユーザー名はご自身の環境によって違います)。
- 移動したフォルダにご自身が自動起動したいアプリのショートカットリンクファイルをコピペ(コピーアンドペースト)します。
- 再起動してみてアプリが自動起動している事を確認する。
C:\Users\ユーザー名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
職場のPCが変わったりした時は必ず最初にやっていた作業になります。これをすることで出社しPC立ち上げ後、アプリの立ち上げなどは全くしなくて良くなります。因みにショートカットリンクにパラメーターを与えてあげることで、もっと短縮できる可能性があります。そこは割愛します。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, AppData, IT, menu, microsoft, PC, Programs, Roaming, start, Startup, users, Windows, アプリ, アンド, エクスプローラー, エンジニア, こと, コピー, コピペ, ご自身, ショートカット, ソフト, ファイル, フォルダ, フォルダー, ペースト, ユーザー, リンク, 下記, 事, 今日, 再起動, 場所, 変更, 方法, 時, 朝飯, 環境, 確認, 移動, 箇条書, 職場, 自動, 表示, 記載, 設定, 起動, 運, 題,

開発環境はクラウドに持つべきか?いなか?悩ましすぎる問題🤔。
2022.05.29
おはようございます。
今まで開発環境はオンプレでしていましたが、外で開発した時やパソコンを買い替えるとデータなどをそのたびに移行しないといけなくなるという手間が発生したり、今ではあまり起きないのですがデータが消えたりする場合もありますよね。そう思うともうクラウドに開発データを移行しようかなって思っています。
いろいろ調べた結果、開発データは手持ちのデータを使用してクラウドを使用する方法はあったのだけども全部クラウドで完結できる方法はイマイチ・・・、クラウドPCの中で開発するしか無さそうですね。実際、クラウドPCを使用したことがないのでなんとも言えないですが、それだと遅延などが発生しそう。
よってこの方法がベストかと思いました。
- 個人開発なのでローカルのデータをクラウドサーバーに転送後、削除。
- VScode拡張機能のsftpをインストールしてリモートでサーバーに接続。
- リモート側のデータを直接修正する。
- デプロイしたい場合はデプロイしたいサーバーへ転送。
因みにこんなサービスあるにはあります。githubを使用したりして・・・。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
PC, SFTP, VScode, いなか, いまいち, いろいろ, インストール, オン, クラウド, こと, サーバー, それ, たび, データ, パソコン, プレ, ベスト, リモート, ローカル, 中, 今, 使用, 修正, 個人, 全部, 削除, 問題, 場合, 外, 完結, 実際, 手持ち, 手間, 拡張, 接続, 方法, 時, 機能, 環境, 発生, 移行, 結果, 転送, 遅延, 開発,

デジタルマネーへシフトしようとか言っているのかな?
2022.04.15
おはよう御座います。
今日はこの一週間の中で一番手抜きな記事ですが、一番、いま自分が思っていることです。
英語がわかれば世界が広がるのになぁと思うことがあります。下記の動画をみてあぁーどんな会話をしているのか、わかればなぁって思いました。
英語がわかれば世界が広がる、英語が話せればもっと世界が広がると感じます。英語を理解できればremoteok.comなどからお仕事を調達することも可能になるからね、本当に英語を理解したいのでなんとか三日坊主でも勉強できる方法を模索しています。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
com, remoteok, いま, お仕事, こと, シフト, デジタル, マネー, 一, 三日坊主, 下記, 世界, 中, 今日, 会話, 勉強, 動画, 可能, 手抜き, 方法, 本当, 模索, 理解, 自分, 英語, 記事, 調達,

仮想通貨で自動売買するシステムはAPI知ってたら
2022.04.10
仮想通貨で自動売買するシステムはAPI考え方知ってたら大体の人が作れるのですが、問題は取引で儲けを出せるかどうかです。そのためにはダミー取引をシステムで作ることから、オススメします😂。
いきなりAPIを取引所で走らせるのはリスクが高いです、ですのでまずは本当に取引はしないで、ダミーで売買をするシステムを作ることからはじめてください。そこで利益が一定指数のあれば実際に取引してみるというのが一番、安全な取引方法かなって思っております。
尚、エンジニアの横山さんがコインチェックのダミー取引のAPIをGithubで公開しています。これでダミー取引部分は作らなくても良くなったと思います。
あとはご自身が取引部分を作るとダミー取引が出来るのでとても便利かと思います。尚、バックテストの部分も自分で作りたい場合は、CryptowatchのAPIを使用することで簡単に過去の取引を収集できるので便利かと思います。
こんな事をしないで、仮想通貨取引所がバックテスト環境も対応してくれたら良いのですがね😌。
因みに自分はまだ自動売買の取引はしていません、いまは自動売買の開発に向けて調査中ってぐらいです。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
API, Cryptowatch, github, あと, エンジニア, おすすめ, コイン, こと, これ, ご自身, システム, ダミー, ため, チェック, テスト, バック, リスク, 一定, 事, 人, 仮想, 使用, 便利, 公開, 利益, 収集, 取引, 取引所, 問題, 場合, 売買, 大体, 安全, 実際, 指数, 方法, 本当, 横山, 簡単, 考え方, 自分, 自動, 通貨, 過去, 部分,

素晴らしいコードに出会うという事はとても大事ですよね。夜も眠れません😏
2022.03.22
おはよう御座います。
素晴らしい世界を聴きながら。
プログラマーにとって技術力を上げるのは多分、向上心があるからだと思います。
さてプログラミングをするにあたって素晴らしいコードに出会うという事はとても大事です。素晴らしいプログラマーをフォローして終わりにしていませんか、彼ら彼女たちのgithubなどを見てみてください。素晴らしいコードに必ず出会います。最初は何を書いているのかわからない事もあるかもしれませんが、その技術を理解すればするほど、これは美しくて素晴らしいコードだという事が理解できるはずです。
プログラミングは書けば書くほど、上達するというよりはシンプルで無駄のないような方法を見つけ出す思考身につけると上達するという事だと自分は思っています。闇雲に書くだけではそのコードを書く技術力は上がらないと思います。世の中には強者がゴロゴロといます。それらのコードから技術を習得するのが一番の手っ取り早い技術力の上げ方かと思います。そしてそのベースとなるのは基礎が身についているかどうかだと思っています。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
8, com, github, https, TWo, vwLaT-, watch, www, youtube, コード, これ, シンプル, パス, フォロー, プログラマー, プログラミング, 上達, 世界, 事, 何, 向上心, 夜, 大事, 彼ら, 彼女, 思考, 技術, 技術力, 方法, 最初, 無駄, 理解, 自分, 身,

自分のサーバーが落ちる原因がわからないのでとりあえず。
2022.03.17
自分のサーバーが落ちる原因がわからないのでとりあえず。増強しましたがこれは良い対策ではないと思っています。原因は一応Netで調べましたが調べ方がナンセンスです。本当はログ解析してそこからネットでググるなどの方法を行って原因を追求しないといけない所、ネットで検索して安易にサーバーを増強するなんて、何の問題解決になっていません。
そんぐらい毎日、忙しいので自分のサーバーに関われません。休日以外は目まぐるしく一日が経過するので当分は自分のサーバーは落ちたりすると思いますが対策はお待ち下さいませ…。
このサーバーが落ちる件でGさんからは、お叱りを受けていてSEO的に良くないよと教えていただきました…。サーバーに負荷がかかり「504 Gateway Timeout」が発生していることは分かっているものの、どうしてそうなっているのかは未だにわからないままなんですね。
もしかしたら、ロシアとウクライナとの戦争に関係しているのかもしれないなって・・・。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
504, Gateway, net, SEO, timeout, ウクライナ, お叱り, お待ち, こと, これ, サーバー, そこ, そん, ナンセンス, ネット, まま, ログ, ロシア, 一, 件, 休日, 何, 原因, 問題, 増強, 対策, 当分, 戦争, 所, 方法, 未だ, 本当, 検索, 毎日, 発生, 的, 経過, 自分, 解析, 解決, 調べ, 負荷, 追求, 関係,

お店のホームページ(サイト)の作り方その弐
2022.03.05
おひさしぶりです。
ブログを数日休んでいました。こらからは不定期という感じでブログを書いてきます。
このブログはお店のホームページ作り方その壱の続きになります。
下記が予約ボタンと地図の作成手順です、こちらの変更部分をindex.phpのファイルを書き換えてください。予約には予約システムSelectType (セレクトタイプ)を使用しているのでアカウントを作りご自身のお店に合わして管理画面から設定してみてください。
会社の地図に関しては、GoogleMapを使用しています、こちらをindex.phpに貼り付けるのですが必要ない部分があるのでその部分を削除して貼り付けています。動画を注視してみるとわかるかと思います。
今回はここまでです。次回はさくらレンタルサーバにファイルをアップロードする方法とSSLの設定を行い完了となります。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
6, com, GoogleMap, https, index, php, SelectType, SSL, vMSy-CCthA, watch, www, youtube, アカウント, アップロード, お店, ここ, こちら, ご自身, サーバ, サイト, さくら, システム, セレクト, タイプ, ファイル, ブログ, ホームページ, ボタン, レンタル, 下記, 不定期, 予約, 今回, 作り方, 作成, 使用, 削除, 動画, 地図, 壱, 変更, 弐, 感じ, 手順, 数日, 方法, 次回, 注視, 画面, 管理, 設定, 部分,

お店のホームページ(サイト)の作り方を解説していきます。
2022.02.28
おはよう御座います。
今日は昨日よりも暖かくなるそうですね☀。
さて、突然ですがお店のホームページ(サイト)の作り方を解説していきます。次回の記事から何回かにわけてお店のホームページ(サイト)の作り方を文字と動画により解説していきますね。今では無料でお店のホームページを作ることが出来てしまいますが、無料でサイトを作った場合は広告などが表示されお店のブランドを損ねてしまう可能性大なので、月額131円で静的なサイトを構築していく方法を教えます(予約機能付き:一部有料)。
尚、プログラムを全て解説すると言うよりかは雛形のサイトを提供しますので、そちらの雛形のサイトに記載している文字や画像を差し替えてオリジナルテンプレートをご自身で作ってもらうという形になります。それも難しいという方に向けて文字や画像をサイトから差し替えできるサービスを作っていこうと思っていますが開発は未定です、そのサービスは無料で提供するつもりでいます。
無料で提供して見返りも求めないという自分には何にもメリットがないものです。ただ、このサイトのアクセス数がもっと増えたらなという思いがあります😌。
追伸:無料で提供するテンプレートの中に、こちらのリンクを貼っていただければ有り難いですがこれもご自身で判断してください。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
131, オリジナル, お店, こと, ご自身, サービス, サイト, そちら, それ, つもり, テンプレート, ブランド, プログラム, ホームページ, 一部, 予約, 今, 今日, 何回か, 作り方, 全て, 動画, 可能性, 場合, 大, 広告, 形, 提供, 文字, 方, 方法, 昨日, 月額, 有料, 未定, 構築, 機能, 次回, 無料, 画像, 表示, 解説, 記事, 記載, 開発, 雛形,

WEBサービス(掲示板)をデプロイ(リリース)してから、数日経過するも。
2022.02.24
おはよう御座います。
今日の朝はかなりの冷え込みです😱。
さて、数日前、WEBサービス(YOUTUBE貼り付け掲示板)をデプロイしましたが、鳴かず飛ばずのまま放置しています。要するに作ったは良いが宣伝が全然していないので使用する人が全然いない状態が続いているわけです。これを回避する方法は2つぐらいあります、一つは広告やSNSで宣伝する、2つ目は集客があったドメインを購入してそのドメインで運用するということです。
この2つの方法はありますが、自分はSNSで少し宣伝して放置しています。もともと予想通りの状態なのでこのまま放置して見ることにします。一年ぐらい放置して何も変わらないならこのサービスは廃止します。使ってくれないならば置いとく意味ないですからね。
今、違うサービスを思いついたので、今度はそちらのサービスを作っていければなって思っています、有料サービスとして作るため個人事業主の届けが必要になるかもしれません。作ったものはTwitterで宣伝するつもりでいます。値段は月額費用500円という破格の値段でサービスを提供できればなって思っています。ただ作っている最中に仕事が決まればこのサービスは世に出ずに終わってしまう可能性があります。
ともあれ、YOUTUBE貼り付け掲示板広めて頂けると有り難いです。
どうぞ、よろしくお願いいたします🙇。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2, SNS, web, youtube, かなり, こと, このまま, これ, サービス, そちら, ため, デプロイ, ドメイン, まま, リリース, 一, 一つ, 予想, 事業主, 人, 今, 今度, 今日, 何, 使用, 個人, 回避, 宣伝, 少し, 広告, 廃止, 必要, 意味, 掲示, 放置, 数日, 方法, 有料, 朝, 状態, 経過, 自分, 購入, 運用, 集客,

自身がフォローしているTwitterアカウントでリスト自動仕分けする方法!?
2022.01.24
昨日は雨がシトシトと降っていた高知県ですが、あまり寒さを感じなくなってきていますね😌。早く春になれば良いのになって思っております。
ソースコードを読んでいただければ大体分かるかとも思いますが、そんなに難しいコードではありません。タイトル通りの処理をしています。コマンドからファイルを叩くと処理が実行されてそれぞれのリストに仕分けされます、ここでポイントなのは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
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
ID, LIST, Twitte, Twitter, TwitterAPI, TwitterOAuth, url, アカウント, インストール, コード, ここ, こと, コマンド, これ, ご自身, ソース, それぞれ, タイトル, ファイル, フォロー, ポイント, ライブラリ, リスト, 事前, 何, 処理, 実行, 数値, 方法, 春, 昨日, 生成, 疑問, 空, 簡単, 自動, 自身, 部分, 雨, 高知県,

WebでTwitterのスペースを聞く方法は2つぐらいある。
2022.01.22
WebでTwitterのスペースを聞く方法は2つぐらいあります。一つ目はスペースを開催しているアカウントのアイコンをクリックしスペースを聞くこと、もう一つはスペース開催しているまとめサイトからスペースを聞く方法だと思います。因みにスペースまとめサイトを一つ紹介します。
spaces.bzというスペースまとめサイトが良い感じです。このサイトはリスナー数が多い順に表示されているので有名なひとがスペースを使った際に見つけやすい仕様になっていますよ。尚、自分は朝、よく放送されている佐渡島 庸平(コルク代表)さんのスペースやお昼前頃から放送されているイケダハヤトさんのWEB3.0 の放送を聞いたりしています。二人のスペースをよく聴きますがファンではないです。
どちらも有益な情報や気づきがあるのでよく聴いているという感じですかね。
一応、二人のTwitterアカウントのリンクを貼っときますね。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2, 3.0, BZ, spaces, Twitter, web, アイコン, アカウント, イケダハヤト, クリック, こと, コルク, サイト, スペース, どちら, ひと, ファン, まとめ, もう一つ, リスナー, リンク, 一つ, 一つ目, 二人, 仕様, 代表, 佐渡島, 庸平, 情報, 感じ, 放送, 方法, 昼前, 有名, 有益, 朝, 紹介, 自分, 表示, 開催, 際, 順,

YOUTUBEプレミアムの年間契約キャンペーンはあと3日で終了する。
2022.01.20
YOUTUBEプレミアムの年間契約キャンペーンはあと3日で終了するので、契約したい方はこの方法で契約してみてくださいな。ここをクリックして年間契約の手順に沿って契約してみてくださいな。
因みに年間契約にすると支払いがお得になります。何でもそうだけど長く使用するサブスクは年間契約の方がお得になります。YOUTUBEプレミアムは3540円の割引になります、尚、YOUTUBEプレミアム年間契約キャンペーンは1月23日に終了します。
もしかすると日本でも今年中にYOUTUBE Premium Liteという定額サービスが始まるかもしれません、YOUTUBEプレミアムはYOUTUBEの広告無しやYOUTUBEミュージックがセットになったサービスです、それに対してYOUTUBE Premium LiteというのはYOUTUBEミュージックがなく、YOUTUBEの広告無しだけのサービスです。
音楽をよく聞く人で、他に音楽のサブスクリプションを契約していないのならばYOUTUBEプレミアムをおすすめします、逆にSpotifyなどのサービスを使用しているのならば、YOUTUBEライトのサービスが日本で始まるのを待つのも良いかもしれませんね。
自分は月契約から年契約に変更しました。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 23, 3, 3540, LITE, Premium, youtube, キャンペーン, クリック, ここ, サービス, サブ, スク, セット, それ, プレミアム, ミュージック, 今年, 使用, 割引, 契約, 定額, 年間, 広告, 手順, 方, 方法, 日本, 終了, 音楽,

YOUTUBERになりたい人、必見の動画かもしれない!?
2022.01.16
どうやればYOUTUBEチャンネル登録が伸びるのか中田敦彦さんが解説動画がタメになるから、是非チェックしてみてください。中田敦彦さんが古舘伊知郎チャンネルにアドバイスしている動画を見てなるほどなぁって思えました。これはブログにも通じる所があると思います。
いろいろなジャンルを片っぱしに書いてみて当たった上位ベスト30の記事に注目して、それと似たような記事を書けばブログも同じようにヒットするサイトになるかもなって思えました。要するに中田敦彦さんの例えを借りて言うとコンビニエンスストアと同じく売れる商品ばかり並べるって事が一番の正攻法な方法なのだな…って😌。
自分が再生回数やビュー数が伸びて欲しい物をよりもユーザーやお客さんが欲しい情報を提供することが良いだってさ。これを聞いてなるほどなぁって思えました。当たり前のことの何だけど確かに難しいというのは何かよく分かるは・・・。ついつい自分が押している物を投稿したくなるだよなぁ。趣味なら良いけどそれで生活するならソコラヘンは切り替えないとなって感じました。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
30, youtube, YOUTUBER, アドバイス, いろいろ, お客さん, こと, これ, コンビニエンス, サイト, ジャンル, ストア, それ, ため, チェック, チャンネル, ヒット, ビュー, ブログ, ベスト, ユーザー, 一, 上位, 中田敦彦, 事, 人, 何, 再生, 動画, 古舘伊知郎, 商品, 回数, 当たり前, 必見, 情報, 所, 提供, 方法, 正攻法, 注目, 物, 登録, 自分, 解説, 記事,

ぶんぶん文章を読まない人が失敗することコマンド編!!。
2022.01.15
SSLの期限が切れる前に更新するように自動更新を設定したのに何故か、更新されない貴方、コマンドが下記のような記述をしていませんか?
certbot renew --dry-run
このような記述になっていると一生、SSLは更新されないままです。これはコマンドテストに使う方法ですので、残念!!!、正しくは下記のような感じで記載してあげてくださいませ😁。
certbot renew
巷ではこの他に強制的に更新するコマンドをオプションでつけて、更新させたら良いよとか書かれたサイトもありますが、それはlet’s encryptサーバ側に負荷をかけてしまうし、アク禁にされる場合もあるので辞めといた方が良いです。
因みにSSLの期限が21日前になった時点で更新処理が実行されます、それまではコマンドを叩いても処理はスキップされます。
尚、自分は文章を読めない、読まないひとです。大体、仕様書は人に読んでもらいます😱
ということで現場からでした。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
--dry-run, 21, Certbot, encrypt, Let's, renew, SSL, アク禁, オプション, こと, コマンド, これ, サーバ, サイト, スキップ, それ, それまで, テスト, まま, 一生, 下記, 人, 仕様書, 他, 処理, 前, 場合, 大体, 失敗, 実行, 巷, 感じ, 文章, 方, 方法, 時点, 更新, 期限, 残念, 自分, 自動, 記載, 記述, 設定, 負荷, 貴方,

2021年、大晦日ですね!?、今年は○■△だった年!!
2021.12.31
もう大晦日ですね?、皆さんに、とって今年一年どうだったでしょうか?
自分は今年の2月まで仕事をしていましたが、それから仕事を失い仕事探しをしていましたが、まだ仕事が見つからず大晦日を迎えております。結構、波乱の一年でした、こうも次の仕事が決まらないと齢をとるというのは、あまりメリットが無いように思えてならないですね。
中国から世界に広まったコロナは一体いつまで、続くのだろうかと思いますよね。恐らくコロナに打ち勝つ方法が見つかった時点でウイルスに打ち勝つことが方法が見つかった事になると思っています。なので、あと数年はマスクや消毒といった事を日本は行うと思います。
コロナ対応を見ていて日本と海外では大きく違いを感じます。特に欧米とアジア圏とはコロナの対応には大きな差があるように思えます。欧米などはコロナに打ち勝つ方法を行うという考えの元で動いているように感じますが、アジア圏はコロナに打ち勝つというよりはコロナと共に生きていくような考えの元で動いている気がします。
昔、西洋医学と東洋医学があったように病気に対しての考え方が、アジア圏と欧米とは違うのではないかなと。数年後には西洋医学によってウイルスに打ち勝つという事が出来ているかもしれませんが、それまではアジア圏の考え方で生きていくのがベストな感じがします、欧米人などはそれがストレスになるかもしれないと思いますが・・・。
全然、関係ないですが映画「ドント・ルック・アップ」はオススメな映画です。因みにこの映画はネットフリックスで見れます。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2, 2021, アジア圏, いつ, ウィルス, こと, コロナ, マスク, メリット, 一, 一体, 世界, 中国, 事, 今年, 仕事, 元, 大晦日, 対応, 差, 年, 数, 方法, 日本, 時点, 次, 欧米, 波乱, 海外, 消毒, 皆さん, 自分, 違い, 齢,

映画、マトリックス・レザレクションズ、やっぱ今日観に行きます(AM11時)! #マトリックス
2021.12.17
映画、マトリックス・レザレクションズを本日、11時に始まる字幕版を観に行きます?、感想につきましては映画を見終わった後に、ネタバレなしでツイートします。日本語版の方が上映数が多いのは少し残念ですね。
マトリックス三部作の中で印象的だったのが、やっぱあのバレットタイム撮影方法だと思います、ぐるぐるとスローモーションのキアヌリーブスを・・・。この映像はとても衝撃的でした、今までこんな映像は見たことがなかったので。そしてマトリックスの世界観がとても良かったですが、今回の新章は予告を見る限りでは前回を完璧に超えていいるストーリー展開が見れそうな気がします。今からマトリックス観るのが楽しみです。では観に行ってきます!!
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
11, AM, com, https, mBRWwAqJ--U, watch, www, youtube, キアヌリーブス, こと, ストーリー, スローモーション, タイム, ツイート, バレット, マトリックス, レザレクションズ, 三部作, 上映, 世界観, 中, 予告, 今, 今回, 今日, 前回, 字幕, 完璧, 少し, 展開, 後, 感想, 撮影, 新章, 方, 方法, 日本語版, 映像, 映画, 本日, 楽しみ, 残念, 気, 観, 限り,

あと7年から10年は続くだろうなと思う今日この頃。
2021.12.01
ペスト菌は5年ぐらいおさまったからコロナウィルスも5年ぐらいおさまると最初はそう信じていたのだけど、菌とウィルスは違うから、コロナウィルスに打ち勝つ方法を人類が見出すまでずっとこんな感じの状況が続くというのが答えではないだろうか。コロナを打ち勝つ方法を人類が見出すということは、他のウィルスにも打ち勝つ方法になるかもしれないと思っています。
ウィルスに打ち勝つために、人類は恐らく遺伝子を改造するようになるのではないかと。遺伝子を改造し人類2.0になるのだと思います、毎年のようにコロナワクチン接種は現実的ではないと思いますし、万能な特効薬でも見つかれば良いのだけど・・・なかなか難しいじゃないのかと思っています。
日本は他の国と違って未だにコロナ前に戻ると思っている人が多いと思いますが、コロナウイルスを根絶させない限りコロナ前に戻ることは無いと思います。数十年後にはコロナ前に戻るでしょうけど、それまではこんな社会が続くというのが現実的な予想だと思います。
一番、ハズレくじを引いている感覚が強いのは非正規雇用で働いている氷河期世代や無職、低所得の人々かなと思います。バブルが弾け、リーマンショック、そしてコロナ・・・。自分も氷河期世代なので、何とも言えない憤りを感じることがあります。
それでも悲観的にならず前を向いていきましょうという事ですね。いづれはコロナに打ち勝つ日が来ると思っていますが、残念ながら今ではないです。
最後に“ジャマおじ”“ジャマおば”を回避せよ?安宅和人さん語るのリンクを貼っときます。
https://www.nhk.jp/p/nw9/ts/V94JP16WGN/blog/bl/pKzjVzogRK/bp/prkDQebeb9/
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, 2.0, 5, 7, ウィルス, おさ, こと, コロナ, コロナウイルス, それまで, ため, ペスト菌, まる, ワクチン, 万能, 人, 人類, 今日この頃, 他, 国, 感じ, 接種, 改造, 数十, 方法, 日本, 最初, 未だ, 根絶, 毎年, 特効薬, 状況, 現, 社会, 答え, 菌, 遺伝子, 限り,