• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:postによる、phpとの受け渡し???)

postによる、phpとの受け渡し

AsarKingChangの回答

回答No.2

前の質問もほぼ内容同じだったが、 とりあえずヒント、 <?php if( $mode == 'input' ){ ?> ここをよく見る! >フロントサイドは完璧ではないですけどOKです。 ほんとですか? <input id="category" type="category" name="categoryl"> なぜ使いもしないIDを設定したのか? 次に、"category" なんていうTYPEをなぜ設定したのか? nameだけ"categoryl"最後に"L"がついてるけど。 https://developer.mozilla.org/ja/docs/Web/HTML/Element/input おまけ <center><input id="name" type="text" name="name"></center> もう<CENTER>タグは使いませんよ。<FONT>などと同様に事実上廃止です。 <form action = "./Blog.php" method = "post"> なぜ、カレントなのか、Bだけがなぜ大文字なのか? この質問をあげる状態なら、Bだけが大文字なのはおかしく わかって使ってるのであれば、正しいが。 Windowsは大文字小文字を区別せずに使えますが、 Linux系のファイルシステムはしっかり区別しますよ。 という感じで、まずデファクトスタンダードにまず 持っていくことです。 色々かいて動きませんでした?のレベルではないので。 まずは、確実に動くソースだけを書くのを原点に してください。 それと、私に個人的なメッセージ送るのはいいんですが、 特に特別な間柄ではないので、その部分は無視してますので。

kouzou250
質問者

お礼

ご回答誠にありがとうございます。 $_mode='input'は他の所で定義されていました。 Blogはblogに直しました。 同じフォルダー内にあるから カレントとしたのですが、同じフォルダー内はどう表現すればいいのですか? 度々申し訳ございません。 ご回答のほど宜しくお願い申し上げます。

関連するQ&A

  • htmlとphpのデータ受け渡し???

    いつもお世話になり誠にありがとうございます。 標記の件。 まだ、ボク自身、解っていないようです。 htmlとphpのソースコードを提示します。 どうすればデータの受け渡しができるか? 添削してくださらないでしょうか? html <!--入力画面--> <form action = "./Blog.php" method = "get"> <label class="label" for="name">お名前(ニックネーム)</label> <center><input id="name" type="text" name="name"></center> <label class="label" for="e-mail">メール</label> <input id="e-mail" type="e-mail" name="e-mail"> <label class="label" for="category">カテゴリー</label> <input id="category" type="category" name="categoryl"> <label class="label" for="message">本文</label> <textarea name="area1" style="color:rgb(8, 8, 8); font-size:100%;" cols="50" rows="30"></textarea><br> <input type="submit" name="confiem" value="確認"> </form> CSS <meta charset="utf-8"> <?php session_start(); $mode = 'input'; if( isset($_POST['back']) && $_POST['back'] ){ //何もしない } else if( isset($_POST['confirm']) && $_POST['confirm'] ){ $_SESSION['name'] = $_POST['name']; $_SESSION['e-mail'] = $_POST['e-mail']; $_SESSION['category']= $_POST['category']; $_SESSION['message'] = $_POST['message']; $mode = 'confirm'; } else if( isset($_POST['send']) && $_POST['send'] ){ $mode = 'send'; } else { $_SESSION['name'] =""; $_SESSION['e-mail'] =""; $_SESSION['category']=""; $_SESSION['message'] =""; } ?> <!--確認画面--> <?php if( $mode == 'input' ){ ?> お名前(ニックネーム)<?php echo $_POST['name'] ?><br> Eメール<?php echo $_POST['e-mail'] ?><br> カテゴリー<?php echo $_POST['category'] ?><br> 本文<br> <?php echo nl2br($_POST['message']) ?><br> <input type="submit" name="back" value="戻る" /> <input type="submit" name="send" value="送信" /> <?php } else { ?> <!--完了画面--> <?php } ?> 上記の通りです。 全然ダメだと思います。 添削のほど、宜しくお願い申し上げます。

    • ベストアンサー
    • PHP
  • form変数の初期化

    <br /><b>Notice</b>: Undefined index: your_name in <b>C:\xampp\htdocs\test\index.php</b> on line <b >83</b><br /> 入力画面で上記のエラーが解決しません。 どうすればいいでしょうか? 入力画面 <?php $_POST = array(); ?> <form method="post" action="./form_check.php"> <div class="element_wrap"> <label>氏名</label> <input type="text" name="your_name" value="<?php echo $_POST["your_name"]?>"> </div> <div class="element_wrap"> <label>メールアドレス</label> <input type="text" name="email" value=""> </div> <input type="submit" name="btn_confirm" value="入力内容を確認する"> </form> 確認画面 <?php $your_name = $_POST["your_name"]; ?> <form method="post" action="./test.php"> <div class="element_wrap"> <label>氏名</label> <p><?php echo $your_name; ?></p> </div> <div class="element_wrap"> <label>メールアドレス</label> <p><?php echo $_POST['email']; ?></p> </div> <input type="submit" name="btn_submit" value="送信"> </form> <form method="post" action="./index.php"> <!--<input type="button" name="btn_back" onclick="history.back()" value="戻る">--> <input type="submit" name="btn_back" value="戻る"> <input type="hidden" name="your_name" value="<?php echo $_POST['your_name']; ?>"> <input type="hidden" name="email" value="<?php echo $_POST['email']; ?>"> </form>

    • 締切済み
    • PHP
  • php $_SESSIONで値が消える。

    いつもお世話になり誠にありがとうございます。 標記の件。 インプット画面ー>確認画面ー>戻るー>インプット画面 インプット画面に戻った時、どうしても最初のインプット画面で打った内容が消えてしまいます。 プログラムを診て、誤りを指摘して頂けないでしょうか? どうぞよろしくお願い致します。           記 <?php session_start(); $mode = 'input'; if( isset($_POST['back']) && $_POST['back'] ){ //何もしない } else if( isset($_POST['confirm']) && $_POST['confirm'] ){ $_SESSION['name'] = $_POST['name']; $_SESSION['email'] = $_POST['email']; $_SESSION['category']= $_POST['category']; $_SESSION['message'] = $_POST['message']; $mode = 'confirm'; } else if( isset($_POST['send']) && $_POST['send'] ){ $mode = 'send'; } else { $_SESSION['name'] =""; $_SESSION['email'] =""; $_SESSION['category']=""; $_SESSION['message'] =""; } ?> <!DOCTYPE html> <html lang="ja"> <head> </head> <body> <div class="v_line_fix"> <h1>Blog K・T</h1> <h2><a href="index.html">トップページ</a></h2> <?php if( $mode=='input'){ ?> <form method=post> お名前(ニックネーム)<br> <input type="text" name="name" value="<?php echo $_SESSION['name'] ?>"><br> Eメール<br> <input type="email" name="email" value="<?php echo $_SESSION['email'] ?>"><br> カテゴリー<br> <input type="text" name="category" value="<?php echo $_SESSION['category'] ?>"><br> 本文<br> <textarea style="font-size:1.5em;" cols="30" rows="80" name="message"><?php echo $_SESSION['message'] ?></textarea><br> <input type="submit" name="confirm" value="確認" /> </form> <?php }else if( $mode=='confirm'){ ?> <!--確認画面--> <form method="post"> <?php echo $_SESSION['name']?><br> <?php echo $_SESSION['email']?><br> <?php echo $_SESSION['category']?><br> <br> <?php echo nl2br($_SESSION['message'])?><br> <input type="submit" name="back" value="戻る"/> <input type="submit" name="send" value="送信"/> } </form> <?php } else { ?> <!--完了画面--> <?php } ?> </body> </html>

    • ベストアンサー
    • PHP
  • テキストリンクでデータの受け渡し。

    PHPの勉強中で、参考書を見ながらショッピングサイトを作成しています。 カテゴリ別に表示したいと思い、データベースに商品の登録をし、 WEBページでカテゴリでの絞込みをしたいのですがうまくいきません。 以下のような、ラジオボタ形式では上手く動きました。 <form method="post" action="hoge.php" enctype="multipart/form-data"> 商品カテゴリーを選択してください。<br> <label><input type="radio" name="category" value="0">0</label> <label><input type="radio" name="category" value="1">1</label> <label><input type="radio" name="category" value="2">2</label> <input type="submit" value="確認"> </form> ラジオボタンでも、確認ボタンを押さなくても、 テキストをクリックすれば受け渡し先のページに飛ぶ形式ならいいのですが。。。 以下のテキストリンクの場合だと、一番下の値しか飛んでくれず、困っています。 <form name="category" action="hoge.php" method="post"> <input type="hidden" name="category" value="1"> <input type="hidden" name="category" value="2"> <a href="javascript:void(0)" onclick="document.category.value='1'; document.category.submit(); return false;">1</a> <a href="javascript:void(0)" onclick="document.category.value='2'; document.category.submit(); return false;">2</a> </form> どなたか詳しい方、ご回答をお願いします。

    • ベストアンサー
    • PHP
  • PHP cookie受け渡しについて

    php 5.16 apache 2.0 フォーム -------------------------------------------------------------- <form method="POST" action="./php_cookie_tm.php"> E-Mail<br> <input type="text" name="mail" value="<?php print($_COOKIE['form_email']); ?>"><br> <input type="submit" value=" 保存 "> </form> -------------------------------------------------------------- 出力 -------------------------------------------------------------- <?php setcookie("form_email",$_POST['form_email'],time()+(60*60*24*90)); ?> クッキー保存 -------------------------------------------------------------- とすると Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\○○.php:4) in ・・・・・・・ というエラーがでます。 既に発信している?みたいなエラーなのですが・・・・ なぜでるのでしょうか? php.iniの設定?等いろいろみてはいるのですが、原因不明にて すごい困っております。 初心者質問ですいません。

    • ベストアンサー
    • PHP
  • POSTでwarning!

    いつも大変お世話になり誠にありがとうございます。 また、同じような質問で申し訳ありません。 標記の件。 ブログフォームのソースは下記です。 表示のソースも下記です。 どうすれば表示されるでしょうか? ご回答のほど宜しくお願い申し上げます。        記 <h2>ブログフォーム</h2> <form action="blog_create.php" method=_POST> <label>ペンネーム:</label> <input type="text" name="name" value=""><br> <label>タイトル:</label> <input type="text" name="title" value=""><br> <label>カテゴリー:</label> <input type="text" name="category" value=""><br> <label>ブログ本文:</label><br> <textarea name="content" id="content" cols="50" rows="80"></textarea><br> <input type="submit" value="確認画面へ"> <?php $name = $_POST["name"]; $title = $_POST["title"]; $category = $_POST["category"]; $content = nl2br($_POST["content"]); echo "ペンネーム{$name}"; echo "タイトル{$title}"; echo "カテゴリー {$category}"; echo "本文 {$content}"; ?> <hr> <br> <input type="submit" action="/kanryou.php" value="送信する"> Warning: Undefined array key "name" in C:\xampp\htdocs\blog_create.php on line 13 Warning: Undefined array key "title" in C:\xampp\htdocs\blog_create.php on line 14 Warning: Undefined array key "category" in C:\xampp\htdocs\blog_create.php on line 15 Warning: Undefined array key "content" in C:\xampp\htdocs\blog_create.php on line 16 ペンネームタイトルカテゴリー 本文

    • ベストアンサー
    • PHP
  • php $_SESSIONでデータが残らない。

    いつもお世話になり誠にありがとうございます。 標記の件。 インプット画面ー>確認画面ー>戻るー>インプット画面 インプット画面に戻った時、どうしても最初のインプット画面で打った内容が消えてしまいます。 プログラムを診て、誤りを指摘して頂けないでしょうか? 今度はCSSなども書きます。 どうぞよろしくお願い致します。 記 <?php session_start(); $mode = 'input'; if( isset($_POST['back']) && $_POST['back'] ){ //何もしない } else if( isset($_POST['confirm']) && $_POST['confirm'] ){ $_SESSION['name'] = $_POST['name']; $_SESSION['email'] = $_POST['email']; $_SESSION['category']= $_POST['category']; $_SESSION['message'] = $_POST['message']; $mode = 'confirm'; } else if( isset($_POST['send']) && $_POST['send'] ){ $mode = 'send'; } else { $_SESSION['name'] =""; $_SESSION['email'] =""; $_SESSION['category']=""; $_SESSION['message'] =""; } ?> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta http-equiv="content-type" content="text/html" charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>ブログ</title> <meta name="description" content="このWebサイトは、初めてHTMLで作るブログページです。"> <link rel="stylesheet" href="./css/style.css"> <style> body{ width: 100%; max-width: 800px; margin-top: auto; margin-left: auto; margin-right: auto; background-color: rgb(71, 133, 157); padding: 10px; text-align: center; } div{ background-color: rgb(247, 248, 245); padding: 2em; } script{ margin-top: 12em; } p { margin-left: 2em; text-align: left; font-size: 25px; font-weight: bold; color: rgb(10, 10, 10); } form { font-size: 25px; font-weight: bold; color: blue; } input { font-size: 25px; margin:auto; } </style> </head> <body> <div class="v_line_fix"> <h1>Blog K・T</h1> <h2><a href="index.html">トップページ</a></h2> <?php if( $mode=='input'){ ?> <form method=post> お名前(ニックネーム)<br> <input type="text" name="name" value="<?php echo $_SESSION['name'] ?>"><br> Eメール<br> <input type="email" name="email" value="<?php echo $_SESSION['email'] ?>"><br> カテゴリー<br> <input type="text" name="category" value="<?php echo $_SESSION['category'] ?>"><br> 本文<br> <textarea style="font-size:1.5em;" cols="30" rows="80" name="message"><?php echo $_SESSION['message'] ?></textarea><br> <input type="submit" name="confirm" value="確認" /> </form> <?php }else if( $mode=='confirm'){ ?> <!--確認画面--> <form method="post"> <?php echo $_SESSION['name']?><br> <?php echo $_SESSION['email']?><br> <?php echo $_SESSION['category']?><br> <br> <?php echo nl2br($_SESSION['message'])?><br> <input type="submit" name="back" value="戻る"/> <input type="submit" name="send" value="送信"/> } </form> <?php } else { ?> <!--完了画面--> <?php } ?> </body> </html>

    • ベストアンサー
    • PHP
  • Formを使ったPHP間での受け渡しについて

    いつもお世話になっています。 PHP間での変数の受け渡しで・・ <form action="<?= test.php ?>" method="POST">   <input type="hidden" name="id" value="aaa"/>   <input type="submit" name="submit" value="送信"> </form> と記述するとtest.phpには渡したいaaaが渡されるのですが、 これだとsubmitを押さないと渡せないため困っています。 したいことをまとめると、submitを使わずにページが表示されたら スグに変数が渡されるようにしたいです。 いろいろ試してみましたが、力不足で出来ませんでした。 宜しくお願いします!

    • ベストアンサー
    • PHP
  • 問い合わせフォームからPHPを使って、、、、、

    問い合わせフォームからPHPを使って指定のアドレスにメールを送ろうとしているのですが、届きません、、、、、、 原因が分かりません。助けていただけないでしょうか。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>お問い合わせページ</title> <link rel="stylesheet" href="styles.css"> </head> <body> <h1>お問い合わせページ</h1> <form action="send_email.php" method="post"> <label for="name">お名前:</label> <input type="text" id="name" name="name" required><br><br> <label for="email">メールアドレス:</label> <input type="email" id="email" name="email" required><br><br> <label for="message">お問い合わせ内容:</label><br> <textarea id="message" name="message" rows="4" cols="50" required></textarea><br><br> <input type="submit" value="送信"> </form> </body> </html> \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ 以下がPHPのプログラムです。 <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = $_POST["name"]; $email = $_POST["email"]; $message = $_POST["message"]; // 送信先のメールアドレス $to = "***@gmail.com"; // 件名 $subject = "お問い合わせがありました"; // 本文 $body = "お名前: $name\n"; $body .= "メールアドレス: $email\n\n"; $body .= "お問い合わせ内容:\n$message"; // メールを送信 mail($to, $subject, $body); // 送信後のリダイレクト header("Location: thank_you.html"); exit; } ?>

    • 締切済み
    • PHP
  • POST からの受け渡しができません・・・

    教えてくださいm(__)m <FORM action="<? echo $PHP_SELF; ?>" method="POST"> :(ここにはif文がはいっています。) : print "お名前:<BR>\n"; print "<input type=\"text\" name=\"handle\" size=\"16\" maxlength=\"30\" value=\"<? echo ($handle); ?>\"><br><br>\n"; print "性別:<BR>\n"; for (reset ($sex_tbl); $key = key ($sex_tbl); next ($sex_tbl)) { echo (" <OPTION value=\"" . $key . "\""); if ($key == $sex) echo (" SELECTED"); echo (">" . $sex_tbl[$key] . "\n"); } print "PRポイント:<BR>\n"; print "<input type=\"text\" name=\"pr\" size=\"16\" maxlength=\"30\" value=\"<? echo ($pr); ?>\"><br><br>\n"; print "<CENTER><input type=\"submit\" value=\"次の人!\"></CENTER><br>\n"; print "<input type=\"hidden\" name=\"page\" value=\"kekkapage\">\n"; print "<input type=\"hidden\" name=\"handle\" value=\"" . $_POST['handle'] . "\">\n"; print "<input type=\"hidden\" name=\"sex\" value=\"" . $_POST['sex'] . "\">\n"; print "<input type=\"hidden\" name=\"pr\" value=\"" . $_POST['pr'] . "\">\n";←80 </FORM> : : ↑なのですが、 「・・・on line 80」エラー表示になりうまくいきません。 の部分が原因と表示にはなっているのですが…。 助けてください。 宜しくお願いしますm(__)m

    • ベストアンサー
    • PHP