質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

4回答

5472閲覧

ボタンが押されるとカウントアップするシンプルなHTMLを作りたい

koikogarey

総合スコア52

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2019/06/02 04:09

編集2019/06/02 04:10

やりたいこと

ボタンをクリックして1つずつカウントアップするHTMLをつくりたい

ためしたけどできないこと

自分で実際にソースを書きためしたが、画面がクリアするとゼロになってしまう。
そうではなく、タブレットやブラウザが変わってもひたすらカウントアップする仕組みをつくりたい。
例えば同時にカウントアップした場合など、正確性は問わないのでだいたいカウントアップされればいいです。

やりたいことを1分で示すと

ボタンをクリックすると1ずつカウントアップ
日本でブラウザを閉じて、ひらいたら2からスタートしクリック
アメリカでブラウザひらいたら3からスタート

ボタンがクリックされる度にカウンターがあがるイメージです。
何度もいいますが正確性はあまり問いません。同時にブラウザをひらいちゃった時は無視でも良いです。
それよりも実装の簡易性を優先します。できるだけSQLではなく簡単な仕組みで実装したいです。

ご教示ください。宜しくお願いします。

やったこと・ためしたこと・実際にかいたコード

<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="center"> <p>何回かカウント</p> <p>カウント回数: <span id="countsample">0</span></p> <div><input type="button" value="カウント" onclick="CountUp();"></div> </div> <script language="javascript" type="text/javascript"> var kaisu = 0; function CountUp() { document.getElementById( "countsample" ).innerHTML = ++kaisu; } </script> </body> </html> ```css

/**/

body {
background-color: white
}
img { width: 100%; }

.center {
margin-top: 0.5em;
text-align: center;
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/06/02 06:55

タグにあるJavaはどのように関係するのでしょうか。
退会済みユーザー

退会済みユーザー

2019/06/02 11:58

JavaとJavaScriptは名前は似てますが中身は結構別物ですよ
guest

回答4

0

HTMLだけでは作成できないかと思います。
アクセスした際のカウンター数をDBやサーバーに持っておく必要があるのではないでしょうか。
以下サイト様などが参考になるかもしれません。
https://www.web-jozu.com/php/counter_s.html

以下も見てみるといいと思います。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1248395782

投稿2019/06/02 04:29

Ebonights

総合スコア33

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

0

「タブレットやブラウザが変わっても」という条件なら、なんらかの方法でその「タブレットやブラウザ」の間で情報を引き継ぐ必要があるので、HTMLだけでは無理です。

「なんらかの方法」というのは、通常は「インターネット上でアクセス可能なサーバー(WEB,DBサーバー)を用意する」という意味です。

投稿2019/06/02 05:24

gentaro

総合スコア8949

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

koikogarey

2019/06/02 05:30

webサーバーは用意しました。
gentaro

2019/06/02 05:37

つまりサーバーサイドをどう作ったら良いのかわからない、という意味ですか? 質問内容からはそのあたりが読み取れませが、「SQLではなく」というのはDBを使わずにサーバー側でデータを保存する方法が知りたいという趣旨ですか?
koikogarey

2019/06/02 12:45

サーバー側でデータを保存する方法が知りたいという趣旨ですか? そうです。そういうことです。
guest

0

できるかどうかわからない&セキュリティ上の問題が発生しそうだけどphpファイルとtxtファイルでいけそうな気がするのは私だけでしょうか?
例えばtxtファイルに書き込んだ値をphpで読み込んでそれに1を足した値をtxtに上書きするとか...

###追記
PHP使えるならfopenあたり?って思います。

投稿2019/06/02 12:00

編集2019/06/02 22:59
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi_takatsuk

2019/06/02 13:32 編集

横槍失礼します。 昔、サイト訪問カウンターで同じロジック組んでました。思い出しました。 それならSQLもFirebaseも使わないでいけますね。 質問者さん、失礼しました・・・。
退会済みユーザー

退会済みユーザー

2019/06/02 22:47

コメントありがとうございます。 よかったです。可能なのですね...
退会済みユーザー

退会済みユーザー

2019/06/02 23:00

CGI(PERL) カウンターの基本だな
退会済みユーザー

退会済みユーザー

2019/06/02 23:24

そうなのですね... 勉強しておきます。
koikogarey

2019/06/03 00:29

まさにそれですね。tyt用意してphpでカウントするイメージです。ただカウンターではなくソースのようにボタンクリックでアップですが。正確性はいりません。ファイルオープンなら実装もらくですね。
miyabi_takatsuk

2019/06/03 01:25

dfjileさん>カウントアップの時に、ajaxで、カウントアップ用phpに送信し、ファイルに書き込み、って感じで行けるかと。 HTML側では、最初、ソースコード上で、PHP出力するか、ajaxで、カウント数取得用のphpからカウント数返してもらい、ってやるといいかなと。(カウントアップとカウント数取得は、一つのPHPファイルで行うほうがいいかも) ソースコード付きの回答でお願いするならば、まずはご自分で、調査し、やってみて、わからない部分、うまくいかない部分を、質問本文に記載するのはどうでしょうか? 今の質問状態で、PHPロジック付きの回答を求めるのは、丸投げと思われてしまうかもしれません・・・。
koikogarey

2019/06/10 10:20

あ、それならいけますね。
guest

0

そうではなく、タブレットやブラウザが変わってもひたすらカウントアップする仕組みをつくりたい。

この時点で、HTML、JavaScript(クライアントサイド)側だけでは、不可能になります。
また、IndexedDBという、サーバーのデータベースを使わずにブラウザ上でデータベースを扱い、アクセス毎ではクリアさせない方法がありますが、
それも、ブラウザベースなので、ブラウザ、デバイスが変われば、当然値は引き継げません。

できるだけSQLではなく簡単な仕組みで実装したいです。

ここに関して、yoshi0819さんのおっしゃる通り、HTML、javascriptだけではできませんが、
phpや、Perlなど、サーバーサイドを使えば、テキストファイルなどを、カウントアップの度に書き換える、とすれば、デーテベースないし、SQLや、Firbbaseを使わなくても、可能です。

-------- 以下元回答 --------
となると、サーバーのデータベースは使わないで、ということでよろしいですよね?
それであれば、Firebaseを使うという方法があります。
これは、通常のWebサーバーとは違い、クラウド上でサーバーと同様のものを扱うことができるというもので、
サーバーを自身で構築する必要がなく、かなりフロントエンドエンジニア向けのものとなっています。
Firebaseにて、データベースを使い、ユーザーのアクセス、そのユーザーのカウントアップを残しておくという手法だといかがでしょうか。
ただし、SQL覚えて使う以上に難しいんじゃないかな?と個人的にはお見受けします。(というか、使ったことがあるわけではないので、どれだけの難易度かはわからない・・・)

ようは、クライアントサイドだけで、難しいことをせず、質問者さんの意図するようなものを作成することはできない、ということになります。

投稿2019/06/02 07:28

編集2019/06/02 13:47
miyabi_takatsuk

総合スコア9528

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi_takatsuk

2019/06/03 01:15

閉口なさった通り、firebase、多分、ハードル高いんですよね。 勝手な印象でなんとも言えませんが。。。 yoshi0819さんのご回答通り、サーバーのtxtファイルなどの書き込みで実装されるのが一番簡単かと思います。 だいたいのサーバーサイド(PHP、Perlなど、ようはCGIスクリプト)で行うことができるはずです。
退会済みユーザー

退会済みユーザー

2019/06/03 01:43

横から失礼します。以前顧客からの相談でfirebaseを使った簡単なチャットサービスを実装しましたがかなり簡単でした。自分で組み立てるのは多少労力がかかりますが不可能ではありません。 ぜひお調べください。
miyabi_takatsuk

2019/06/03 01:46

yoshi0819さん>大変にありがとうございます・・・! やはり、勝手な印象でモノ言ってはいけませんね・・・。 私自身、使って体感してみようと思います。 dfjileさん>どうか、挑戦してみてはいかがでしょうか??
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問