質問するログイン新規登録
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

Q&A

解決済

1回答

570閲覧

WEBをリロードするとき、Localstorageに保存されているデーターを自動的にHTMLに入れたいです。

EOU818

総合スコア45

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

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

0グッド

0クリップ

投稿2022/11/10 06:56

0

0

前提と実現したいこと

WEBをリロードするとき、Localstorageに保存されているデーターを自動的にHTMLに入れたいです。

問題と試してみたこと

  1. 下記コード内に「DisplayOutcomes ()」というfunctionを作りました。こうしたら、localstorageからHTMLにデーターを入れることができました。
  2. しかし、下図内の検索ボダンをクリックしないと、「DisplayOutcomes ()」が効かないです。
  3. 僕が実現したいのは、WEBをリロードするとき、Localstorageに保存されているデーターを自動的にHTMLに入れたいです。
  4. 「function DisplayOutcomes ()」を「window.addEventListener('load', () => {})」に入れてみましたが、効かないです。
    どこに問題があるでしょうか?教えて頂きたくお願い致します。

👇イメージと流れ
イメージ説明

該当のソースコード

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link rel="stylesheet" href="style.css" /> </head> <body> <?php include('./user_list.php') ?> <!-- 👇情報登録form --> <form action="./insert.php" method="post" enctype="multipart/form-data"> ID:<input type="text" name="idd"><br> Name:<input type="text" name="user_name"><br> <input type="submit" value="記入"> </form> <!-- 👇檢索form --> <form action="" id="search" method="post" enctype="multipart/form-data"> ID:<input type="text" name="ss" id="ss"><br> <input type="submit" name="submit" value="検索"> </form> <?php // 👇issetを利用して、form内の情報を送ったかを確認する if(isset($_POST['ss'])){ $search = $_POST['ss']; $sql2 = "SELECT * FROM user_list WHERE id = '$search' "; $sth2 = $db -> prepare($sql2); $sth2 -> execute(); $data2 = $sth2->fetch(); $sql10 = "SELECT * FROM `user_list` WHERE ID in ('$search')"; $sth10 = $db -> prepare($sql10); $sth10 -> execute(); $data10 = $sth10->fetchall(); if(empty($_POST['ss'])){ echo '<script> alert("記入してください") </script>'; }else{ if($data10 == null){ echo '<script> alert("まだ登録されていないよ!!!") </script>'; }else{ $ID = $data2["ID"]; $member_name = $data2["member_name"]; } } // header("Location:./form.php"); // exit(); } ?> <section class="search_outcome"> <div class="title"> <div class="col_ID"> <input type="text" value="ID" readonly> </div> <div class="col_name"> <input type="text" value="NAME" readonly> </div> </div> <div class="list_for_all" id="list_for_all"></div> </section> <script> // 👇form的IDを探す LIST_Storage = JSON.parse(localStorage.getItem('LIST_Storage')) || []; const search = document.querySelector('#search'); const outcome_list = { ID_list:'<?= $ID ?>', Member_list:'<?= $member_name ?>'} LIST_Storage.push(outcome_list); localStorage.setItem('LIST_Storage', JSON.stringify(LIST_Storage)); DisplayOutcomes() function DisplayOutcomes () { const outcomeList = document.querySelector('#list_for_all'); outcomeList.innerHTML = ""; LIST_Storage.forEach(outcome_list => { const outcome_one_div = document.createElement('div'); const col_ID = document.createElement('div'); const col_NAME = document.createElement('div'); const col_btn = document.createElement('div'); const revise = document.createElement('button'); const delete_btn = document.createElement('button'); outcome_one_div.classList.add('list_for_one'); col_ID.classList.add('col_ID'); col_NAME.classList.add('col_name'); col_btn.classList.add('col_btn'); revise.classList.add('revise'); delete_btn.classList.add('delete'); col_ID.innerHTML = `<input type="text" value="${outcome_list.ID_list}" readonly>`; col_NAME.innerHTML = `<input type="text" value="${outcome_list.Member_list}" readonly>`; revise.innerHTML = '修正'; delete_btn.innerHTML = '削除'; col_btn.appendChild(revise); col_btn.appendChild(delete_btn); outcome_one_div.appendChild(col_ID); outcome_one_div.appendChild(col_NAME); outcome_one_div.appendChild(col_btn); outcomeList.appendChild(outcome_one_div); console.log(outcomeList); delete_btn.addEventListener('click', (e) => { LIST_Storage = LIST_Storage.filter(LIST_Storage => LIST_Storage != outcome_list); localStorage.setItem('LIST_Storage', JSON.stringify(LIST_Storage)); DisplayOutcomes() }) }) } </script> </body> </html>

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

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

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

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

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

guest

回答1

0

自己解決

下記の方法で解決しましたが、原因がわからないです。
イメージ説明

投稿2022/11/13 10:00

EOU818

総合スコア45

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問