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

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

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

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

JavaScript

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

HTML

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

Q&A

解決済

1回答

1092閲覧

[HTML][JavaScript][PHP] <a>タグでPOST送信したい

mona_beginner

総合スコア33

PHP

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

JavaScript

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

HTML

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

0グッド

0クリップ

投稿2022/01/23 03:16

編集2022/01/23 07:15

実現したいこと

index.phpでヘッダーの「登録」ボタンを押すと$userという変数がtoroku.phpに送られ、画面が遷移する。というプログラムを実現させたいです。

以下のプログラムを実行したところ
Warning: Undefined array key "user" in C:\xampp\htdocs\closet\toroku.php on line 2
NULL
となってしまいます。改善点をご教授いただきたいです。

index.php

1<?php $user='aaaa'; ?>//別のページからPOSTで受け取った引数 2<html> 3<head> 4<script src="index.js"></script> 5</head> 6<body><!--本体--> 7 <header> 8 <h1 class="title"><a href="index.php">closet</a></h1> 9 <nav class="nav"> 10 <ul class="menu-group"> 11 <form> 12 <input type="hidden" id=user name="user" value="<?php echo $user; ?>"> 13 </form> 14 <li class="menu-item" id="toroku"><a href=toroku.php>登録</a></li> 15</header> 16<body>

index.js

1$(function(){ 2 $("#toroku").click( 3 function(){ 4 let user= $("#user").val(); 5 $.ajax({ 6 type: "POST", 7 url: "toroku.php", 8 data:{"user": user}, 9 dataType : "json" 10 }).done(function(data) { 11 alert("ok"); 12 }).fail((XMLHttpRequest, _textStatus, errorThrown) => { 13 alert("error"); 14 }); 15 }); 16 });

toroku.php

1<?php 2$user=$_POST['user']; 3var_dump($user); 4?>

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

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

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

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

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

m.ts10806

2022/01/23 03:46 編集

index.phpの「ページのソースを表示」で想定のコードになっているのでしょうか。 あと、POSTメソッドでの送信できてないように思います。 何を参考にこのコードを書かれたのでしょうか。 open()関数の第2引数が文字列じゃなくそういう変数になってるように見受けられます(たぶんエラー出てます)
mona_beginner

2022/01/23 05:19

https://qiita.com/hanaita0102/items/9e2f7984ecb71440c322 こちらのサイトを参考にコードを大幅改善してみました。$userを「index.js」でどう扱うかがいまいち理解できず、「index.php」内の<input id=user>の部分から参照できないかと思いコードをかきました。しかし、結果に変化はありませんでした。
guest

回答1

0

自己解決

urlパラメータに$userを代入しGETで受け取ることで、当初の目的が果たされたので解決としました

index.php

1<li class="menu-item" id="toroku"><a href=toroku.php?user=<?php echo $user ?>>登録</a></li>

toroku.php

1$user=$_GET['user'];

投稿2022/01/23 08:16

編集2022/01/24 04:34
mona_beginner

総合スコア33

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

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

m.ts10806

2022/01/23 10:46

「POST送信したい」のにGETで送信・取得を解決策としてしまっては意味がないのでは?
mona_beginner

2022/01/24 04:38

質問当初はPOSTとGETの違いを理解できておらず、浅知恵故に誤った質問タイトルをつけてしまいました。申し訳ございません。しかし、コードを書いていくうちにGETのほうがより簡単で目的に合っていると感じ、当初の実現したかったことが果たされたという意味で解決済みとさせていただきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問