web-dev-qa-db-ja.com

_POST経由でデータを送信しない単純なフォーム

うわー、これは恥ずかしいです。これは、もう1つの退屈なWebフォームになるはずです。私は以前にたくさんやったことがありますが、何らかの理由でこの特定のものは協力したくありません。何かが欠けていますか?私はこれを何時間も理解しようとしました。私は運が悪いのに、すべてをトラブルシューティングしてみたことを誓います。

基本的に、私は$ _POST経由でPHPファイルに送信します。最終的にはAJAXを使用しますが、今のところ、POSTに愚かなことを取得することもできません。送信をクリックすると、それは正しいページに移動します。しかし、「Undefined Index(次に、私の$ _POST変数を呼び出す行を指します。)というエラーが表示されます。PHP側( signup1.php)これで、すべてがvar_dump($_POST);になり、_POSTから何も取得できなくなり、愚かなことが空になっています。問題はHTML側にあると思います。私のコードを正確に投稿します。スタイルとレイアウトの目的で大量のdivが追加されます。エラーの原因である場合に備えて、それらすべてをそこに保持します。私はブートストラップを使用していることに気付くかもしれませんが、それは何かかもしれませんか?私は以前にフォームとその機能にbootstrapを使用しましたが、誰が知っていますか。

<form action="actions/signup1.php" method="post">
        <div class="row">
            <div class="col-md-6">
                <div class="form-group">
                    <label for="name">Name:</label>
                    <input type="text" id="name" class="form-control" placeholder="John Smith">
                </div>
            </div> <!-- end of name input column -->
            <div class="col-md-6">
                <div class="form-group">
                    <label for="phone">Phone Number:</label>
                    <input type="text" id="phone" class="form-control" placeholder="801-321-9876">
                </div> 
            </div> <!-- end of phone number input column -->
        </div> <!-- end of first .row of inputs -->

        <div class="row">
            <div class="col-md-6 column-sm-12">
                <div class="form-group">
                    <label for="email">Email Address:</label>
                    <input type="text" id="email" class="form-control" placeholder="[email protected]">
                </div>
            </div> <!-- end of email address input column -->

            <div class="col-md-3 col-sm-6">
                <div class="form-group">
                    <label for="city">City:</label>
                    <select id="city" class="form-control">
                        <option>Las Vegas</option>
                        <option>Salt Lake City</option>
                        <option>I'll Choose a Default Later...</option>
                    </select>
                </div>
            </div> <!-- end of city dropdown -->

            <div class="col-md-3 col-sm-6">
                <div class="form-group">
                    <label for="type-of-phone">Type of Phone:</label>
                    <select id="type-of-phone" class="form-control">
                        <option>iPhone</option>
                        <option>Android</option>
                        <option>Windows Phone</option>
                        <option>Blackberry</option>
                        <option>Other Cellphone</option>
                        <option>Landline</option>
                    </select>
                </div>
            </div> <!-- end of Smartphone Question Dropdown -->
        </div> <!-- end of second .row of inputs -->
        <div class="row">
            <div class="col-md-12"><input type="submit" value="Submit"></div>
        </div>
    </form>

誰かアイデアがあれば教えてください。髪を抜いています。データベースへのクエリの問題、またはAJAXをいじって洗練させるために問題が発生するため、一晩中起きていると思いましたが、代わりにRAWデータを送信するフォームを通過することさえできません。 !非常にイライラします。誰かが問題を目にすることを期待しています.

記録のために、これはフォームがsignup1.phpにリダイレクトした後の私の正確なメッセージです(そう、それは正しいページに行きます)。 PHPにあるのは、$ _ POST変数全体のVar_dumpだけです。

var_dump($_POST);

そしてそれは私にこれを示しています:

array(0) { } 
12
jacurtis

フォームフィールドにname属性を追加する必要があります。

例えば:

<input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876">
64
Code Monkey

各inputタグとselectタグにname属性を追加してみてください。それで十分でしょう。

3
Elvis Chidera

入力フィールドのすべてのフィールドに名前を付け、送信ボタンに名前を付けてください。だからあなたの問題は解決されます。

0
rocky gupta

編集されたスクリプトを使用:

<form action="actions/signup1.php" method="post">
        <div class="row">
            <div class="col-md-6">
                <div class="form-group">
                    <label for="name">Name:</label>
                    <input type="text" id="name" name="name" class="form-control" placeholder="John Smith">
                </div>
            </div> <!-- end of name input column -->
            <div class="col-md-6">
                <div class="form-group">
                    <label for="phone">Phone Number:</label>
                    <input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876">
                </div> 
            </div> <!-- end of phone number input column -->
        </div> <!-- end of first .row of inputs -->

        <div class="row">
            <div class="col-md-6 column-sm-12">
                <div class="form-group">
                    <label for="email">Email Address:</label>
                    <input type="text" name="email" id="email" class="form-control" placeholder="[email protected]">
                </div>
            </div> <!-- end of email address input column -->

            <div class="col-md-3 col-sm-6">
                <div class="form-group">
                    <label for="city">City:</label>
                    <select id="city" name="city" class="form-control">
                        <option>Las Vegas</option>
                        <option>Salt Lake City</option>
                        <option>I'll Choose a Default Later...</option>
                    </select>
                </div>
            </div> <!-- end of city dropdown -->

            <div class="col-md-3 col-sm-6">
                <div class="form-group">
                    <label for="type-of-phone">Type of Phone:</label>
                    <select id="type-of-phone" name="type-of-phone" class="form-control">
                        <option>iPhone</option>
                        <option>Android</option>
                        <option>Windows Phone</option>
                        <option>Blackberry</option>
                        <option>Other Cellphone</option>
                        <option>Landline</option>
                    </select>
                </div>
            </div> <!-- end of Smartphone Question Dropdown -->
        </div> <!-- end of second .row of inputs -->
        <div class="row">
            <div class="col-md-12"><input type="submit" value="Submit"></div>
        </div>
    </form>

出力:

enter image description here

0
Pank