明日は我が身。

2024.01.02

Logging

正月早々に大地震が発生しました。ある程度、情報統制がXでは取れているようです、逆に言えば地震の甚大なことがわかります。このブログは一週間ほど停止します。いま自分ができることは募金ぐらいしか思いつきませんが出来ることをします。現場では情報が錯綜していると思います、安易にRTをするのはご控えください。二次被害三次被害が起きぬように。

災害など緊急時の”ホットライン”としてLINEを活用しましょう

https://guide.line.me/ja/features-and-columns/emergency-tips.html

タグ

line, rt, X, ブログ, ホットライン, 一週間, 二次被害三次被害, 募金, 地震, 大地震, 情報, 情報統制, 正月早々, 災害, 現場, 緊急時, 自分,

わざわざ対策した、これでも。

2020.06.18

Logging

非同期通信する部分にデータ投げてアクセスカウンターをわざわざ増やしてくれる人がいたので、わざわざ対策した、これでも抜けてくるようだと違法な領域かと思います。
わざわざ対策しないといけないというのが、自分としては変だなと思うところ。
何故、そこまでするのか・・・。
意味がわからないが…。

そもそもあんぽんたんな自分に関わっても意味がないのではと思っている。トイレで目が覚めてアレ、アクセスが増えていると思って・・・。

一時間ばかり、ぼーけーってして10分ぐらい、対策用のコードを書いてバグとりして、まぁネタになるので今、ブログを書いています。

話全然変わるけど、Twitterで音声投稿が可能になるだってさってのをタイムラインで見てすぐにRTしました。

実装されたら面白そうだけど、いろいろと問題も出てきそうだと思います。デジタルツールってそういう所がありますよね。

ちなみに話戻して、ページを切り替えるとアクセスカウンターは増えます。その対応は出来ますがしません。どうぞアクセスカウンターを増やしてください。SEO的にもとても有り難いことなので・・・。

アクセスカウンターが増えて得することはあるけど、損することはないじゃないかと思います。初めて訪問されるユーザーにとってはアクセス数が多いページは信頼されやすいです。仕様的にはアクセスカウンター増えやすい仕様にあえてしてますよ。

数字マジック、数の印象は大体あると思います。客が並んでいるお店はもしかしたら美味しいかもと思い込むのと同じです。

タグ

10, rt, Twitter, アクセス, アクセスカウンター, アレ, あんぽんたん, いろいろ, コード, これ, そこ, タイムライン, ツール, データ, デジタル, トイレ, ところ, ネタ, バグ, ブログ, ページ, わざわざ, , , , 可能, 同期, 問題, , 実装, 対策, 意味, , 投稿, , 自分, , 通信, 違法, 部分, 音声, 領域,

javascriptでテキストファイルやCSVファイルを読み込む方法。

2018.11.13

Logging

javascriptでテキストファイルやCSVファイルを読み込む方法は下記になります。
この他に、jqueryだとajaxを使用して読み込む方法などもありますが、あえて
javascriptで記述しています。

rt();
function rt(){
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.open("GET","xxx.txt",true);
    xmlHttp.send(null);
    xmlHttp.onload = function(){
        var data = xmlHttp.responseText;
    }
}

追記:アクセス数が結構あるのでサンプルを作りました。
下記のコードをお試しください。
デモページはこちらになります。
https://zip358.com/tool/demo13/ 【改良前】
https://zip358.com/tool/demo13/index2.php 【ちょっと改良】
https://zip358.com/tool/demo13/index3.php 【もうちょっと改良】
https://zip358.com/tool/demo13/index4.php 【もっと改良】
https://zip358.com/tool/demo13/index5.php 【もっともっと改良】2022年度版


※文字の中にカンマ区切りがあるのには対応してません?

"use strict";
var csv = {
	load:async function(filename,id){
		await fetch(filename).then(data=>data.text()).then((res)=>{
			let result = (res.split("\r\n").map(value=>{
				return "<tr>" + (value.split(",").map(val =>{
					return "<td>" + val.slice(1, -1) + "</td>";
				})).join("") +"</tr>";
			})).join("");
			if(result){
				document.getElementById(id).innerHTML = result;
			}
		}).catch(m =>{
			console.error(m);
		});
		return true;
	}
}

csv.load("xxx.csv", "table");
"use strict";
var csv = {
	load:async function(filename,id){
		const res = await fetch(filename);
		const data1 = await res.text();
		let separate1 = /\r\n/;
		let separate2 = ",";
		let data_tbl = (data1.split(separate1)).map(function(value){
			return (value.split(separate2)).map(function(value1){
				return value1.slice(1, -1);
			});
		});
		var str = "";
		for (const key in data_tbl) {
			str+=`<tr>`;
			for (const key1 in data_tbl[key]) {
				str+=`<td>${data_tbl[key][key1]}</td>`;
			}
			str+=`</tr>`;
		}
		document.getElementById(id).innerHTML = str;
		return "OK";
	}
};

csv.load("xxx.csv", "table");
"use strict";
var csv = {
    load: function (filename, id) {
		fetch(filename).then(
			Response=>{
				return Response.text();
			}).then(data1 =>{
                let separate1 = /\r\n/;
                let separate2 = ",";
				let data_tbl = (data1.split(separate1)).map(function(value){
					return (value.split(separate2)).map(function(value1){
						return value1.slice(1, -1);
					});
				});
				var str = "";
				for (const key in data_tbl) {
					str+=`<tr>`;
					for (const key1 in data_tbl[key]) {
						str+=`<td>${data_tbl[key][key1]}</td>`;
					}
					str+=`</tr>`;
				}
				document.getElementById(id).innerHTML = str;
				return "OK";
			}).catch(error=>{
				console.log("失敗しました" + error);
			})
    }
};

csv.load("xxx.csv", "table");
"use strict";
var csv = {
    load: function (filename, id) {
        var xmlHttp = new XMLHttpRequest();
        xmlHttp.open("GET", filename, true);
        xmlHttp.send(null);
        xmlHttp.onload = function () {
            if (xmlHttp.status === 200) {
                let separate1 = /\r\n/;
                let separate2 = ",";
				let data1 = xmlHttp.responseText;
				let data_tbl = (data1.split(separate1)).map(function(value){
					return (value.split(separate2)).map(function(value1){
						return value1.slice(1, -1);
					});
				});
				var str = "";
				for (const key in data_tbl) {
					str+=`<tr>`;
					for (const key1 in data_tbl[key]) {
						str+=`<td>${data_tbl[key][key1]}</td>`;
					}
					str+=`</tr>`;
				}
				document.getElementById(id).innerHTML = str;
				
            }
        };
    }
};

csv.load("xxx.csv?123", "table");
"use strict";
var csv = {
    load: function (filename, id) {
        var data = {};
        var xmlHttp = new XMLHttpRequest();
        xmlHttp.open("GET", filename, true);
        xmlHttp.send(null);
        xmlHttp.onload = function () {
            if (xmlHttp.status === 200) {
                let separate1 = /\r\n/;
                let separate2 = ",";
                let data_org = xmlHttp.responseText;
                let data_en = data_org.split(separate1);
                for (let d in data_en) {
                    data[d] = data_en[d].split(separate2);
                }
                //data load
                var t = document.getElementById(id);
                var h = "<table>";
                for (var o in data) {
                    h += "<tr>";
                    for (var r in data[o]) {
                        h += "<td>";
                        h += data[o][r].slice(1, -1);
                        h += "</td>";
                    }
                    h += "</tr>";
                }
                h += "</table>";
                t.innerHTML = h;
            }
        };
    }
};
csv.load("xxx.csv", "table");

タグ

358, ajax, com, CSV, data, function, GET, https, javascript, jquery, new, null, onload, open, quot, responseText, rt, send, too, true, txt, var, xmlHttp, XMLHttpRequest, xxx, zip, アクセス, コード, こちら, サンプル, テキスト, デモ, ファイル, ページ, 下記, , 使用, 方法, 記述, 追記,

現状のアクセス数を報告。今後の野望。

2016.06.27

Logging


現状のアクセス数を報告。今後の野望。
現在のアクセス数の平均は100人弱ぐらいです。BOTを始めて
アクセス数は伸びたのですが、いまは日によってムラが出てきしました。
記事が見に来てくれている人に答えてないのか
一見さんが多いのも自分のサイトの課題なんですが
コレばかりは、なかなか難しい。
BOTを改良してRTを行えば
アクセス数は伸びるとは思いますが
そうではない方法で今は
アクセス数を伸ばしたいなという感じです。
今後の野望は最低でも500超のアクセス数が
日に欲しいなという気持ちがあります。
このサイトを掲載しだしてから
500を超えたのは一回ぐらいしか
無かったか、全然、無かったかの
どちらかだと思います。
なので、日に500人超のなれば
それだけ今は良いかなという気持ちですね。

タグ

100人弱, 500人超, 500超, BOT, rt, アクセス数, コレ, サイト, それだけ今, どちらか, むら, 一見, 報告, 平均, 方法, , 気持ち, 現状, 課題, 野望,

1日1万PVとかある人より地方のブロガーが何か納得できる。

2015.11.10

Logging


1日1万PVとかある人より地方のブロガーが何か納得できる。
ありんど高知さんが書かれているイケダハヤトの倒し方(http://kochi-arindo.com/etc/2015/11/09/8452)を読んでみてふと思ったことは何か変だなと思った。1万PVあるのにRT率が少ないとかいいねの数が少ないとか・・・。
何か変だなと感じるようになったのです。イケダハヤト氏のブログは約1万PVある
のに・・・そんなに共感はされていない。むしろ炎上でもっている。
炎上記事を読むより、ありんど高知さんが書かれている記事を読むほうが
高知県を再発見できて面白い。特にお店の紹介やイベントものの記事が
充実しているので良い感じです。良い感じなんだけど
PV数は断然、イケダハヤト氏の方が断然多い。
そういう現状を見てしまうと何だかなぁと思ってしまう。
これが差というものなのかなぁと
感じるものの、ありんど高知さんには頑張って欲しいです。
ちなみに、高知県にはありんど高知さんと高知のWEBメディアZEYO
(旧:土佐メディア)二分しているのですが、今のところ、高知新聞にも
紹介されたありんど高知さんに軍配が上がっている模様です。
どちらも食レポとイベントレポが主なのです。
あとはオリジナリティのある記事のカテゴリを掲載すれば
当たれば伸びると思いますが、今のところ独自路線てきな要素が
無いのが、アクセス数が伸び悩んでいるひとつの問題かと思います。
まさに自分のアクセス数を棚に上げて 記事を書いているのですが・・・・。
追記:紙媒体で代表するメディアはほっとこうちさんなんでしょうね。これがWEBにシフトすれば
あっという間に食われてしまいそうです。
何だか、その兆しがあるような気がします。
ちなみに、もうひとつ紙媒体があります。
とさぶしです。こちらはWEBやアプリまで作っています。
こちらも強そうです。無料媒体なのでこちらも注目です。
 

タグ

09, , 11, 2015, 8452, com, etc, http, kochi-arindo, PV, rt, ありん, イケダハヤト, イベント, お店, こと, これ, ブロガー, ブログ, もの, , , 充実, 共感, 地方, , , 感じ, , , 炎上, , 現状, 発見, 納得, 紹介, 記事, 高知, 高知県,