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

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

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

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

Q&A

解決済

3回答

18220閲覧

inputのvalueを変数に代入できないのでしょう?

退会済みユーザー

退会済みユーザー

総合スコア0

PHP

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

0グッド

2クリップ

投稿2015/06/05 09:38

編集2015/06/05 09:38

echo "<input type='submit' value='ログイン' id='open1'><input type='button' value='ログアウト' id='open1'>";

valueをどうにかして変数に代入できないでしょうか?

考えていることはactionで飛んだベージでログインしたいのか
ログアウトをしたのかを判別させるためどうにかしてでも変数に
代入をさせたいのです。

毎回質問ばかりで大変恐縮ではございますがご回答頂けたら幸いです。
引き続きツールバー&メニューバーの判別に回答お待ちしております。

以上よろしくお願いします。

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

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

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

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

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

guest

回答3

0

かつて、JavaScript が使えない状況でボタンが2つのフォームをどうにかした時の小技。

lang

1<form method="post" action="index.php"> 2 <input type="submit" name="action[login]" value="ログイン" class="open1"> 3 <input type="submit" name="action[logout]" value="ログアウト" class="open1"> 4</form>

サブミットボタンにこのような name 属性を付けると、次のようにポストされます(例えばログインボタンを押したとき)。

lang

1$_POST = array( 2 'action' => array( 3 'login' => 'ログイン', 4 ), 5);

ポストされた先の PHP で次のようにすると login とか logout という値がとれます。

lang

1if (isset($_POST['action']) && is_array($_POST['action'])) { 2 $action = key($_POST['action']); 3 var_dump($action); // "login" または "logout" 4}

投稿2015/06/05 13:17

ngyuki

総合スコア4514

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

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

0

ベストアンサー

フォーム部品は name 属性が無いと値が渡されません。

echo "<input type='submit' value='ログイン' id='open1' name='open1'><input type='submit' value='ログアウト' id='open2' name='open2'>";

今回は関係ありませんが、idは重複できません。

どちらもtypeはsubmitにしておきます。

これで「ログイン」がクリックされると
$_POST["open1"] に "ログイン" という値が渡ります。
ログアウトをクリックした場合は $_POST["open2"] = "ログアウト" となります。
クリックされないボタンは$_POSTには渡されませんので判断が可能かと思います。

お試しください。

投稿2015/06/05 10:50

packet1024

総合スコア342

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

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

DAIDAI

2015/06/05 11:18

あー、、、name属性忘れてますね。失礼しました。 そしてありがとうございます。
退会済みユーザー

退会済みユーザー

2015/06/05 22:55

ありがとうございます。解決致しました。 今後もよろしくお願いします。
guest

0

idがともにopen1で重複してますがそこは置いといて

送った先でログイン/アウトを判別できればいいと考えれば、
javascriptでhiddenにセットして送るとかダメですかね?

lang

1<input type='button' value='ログイン' class='open1'> <!-- sumitをbuttonにしました --> 2<input type='button' value='ログアウト' class='open1'> 3<input type='hidden' value='' id='hidden_mode'>

としておいて、jQueryで

lang

1$('.open1').click( function(){ 2 $('#hidden_mode').val( this.value ); // 押されたほうのボタンのvalueを取得 3 $('#form1').submit(); // formをsubmit 4});

後は送り先で受けて判断すればいいかと。

投稿2015/06/05 10:48

DAIDAI

総合スコア17

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問