PHP简单形式$ _POST是空的,即使它不应该是

时间:2015-01-26 17:18:35

标签: php forms

我有一个相当简单的形式;

<form method="post">
<div class="row-fluid">
    <div class="span3 sidebarBox" style="padding: 20px;">
        <div>
            <h3 style="border-bottom: 1px solid #ccc; padding-bottom: 20px; margin-bottom: 10px;">New Post</h3>
        </div>
        <div class="mainSidebar">
            <div class="row-fluid form-field">
                <h5>Game</h5>
                <select class="span12" name="edition">
                    <option value="0">Any</option>
                    <option value="1">DnD 3rd Edition</option>
                    <option value="2">DnD 3.5th Edition</option>
                    <option value="3">DnD 4th Edition</option>
                    <option value="4">DnD Essentials</option>
                    <option value="5">DnD 5th edition</option>
                </select>
            </div>

            <div class="row-fluid form-field">
                <h5>Item Type</h5>
                <select class="span12" name="subject">
                    <option value="Traps">Traps</option>
                    <option value="Puzzles">Puzzles</option>
                    <option value="Encounters">Encounters</option>
                    <option value="Areas">Areas</option>
                    <option value="Characters">Characters</option>
                    <option value="Loot">Loot</option>
                </select>
            </div>

            <div class="row-fluid form-field">
                <h5>Category</h5>
                <select class="span12" name="category">
                    <option value="animate">Animate</option>
                    <option value="neast">Beast</option>
                    <option value="humanoid">Humanoid</option>
                    <option value="magical">Magical</option>
                    <option value="aberrant">Aberrant</option>
                    <option value="elemental">Elemental</option>
                    <option value="fey">Fey</option>
                    <option value="immortal">Immortal</option>
                    <option value="natural">Natural</option>
                    <option value="shadow">Shadow</option>
                </select>
            </div>

            <div class="row-fluid form-field">
                <h5>Subcategory</h5>
                <select class="span12" name="subcategory">
                    <option value="Animate">Animate</option>
                    <option value="Beast">Beast</option>
                    <option value="Humanoid">Humanoid</option>
                    <option value="Magical">Magical</option>
                    <option value="Aberrant">Aberrant</option>
                    <option value="Elemental">Elemental</option>
                    <option value="Fey">Fey</option>
                    <option value="Immortal">Immortal</option>
                    <option value="Natural">Natural</option>
                    <option value="Shadow">Shadow</option>
                </select>
            </div>

            <div class="row-fluid form-field">
                <h5>Tags</h5>
                <input name="tags" class="span12" type="text" placeholder="Seperate tags with Commas">
            </div>

            <div class="row-fluid form-field">
                <h5>Description</h5>
                <textarea name="description" class="span12" type="text" placeholder="Summary of what the post is about..."></textarea>
            </div>
        </div>
        <div>
            <input class="btn btn-success span12" style="margin-top: 20px;" type="submit" value="Save" />
        </div>
    </div>
    <div class="span9" style="overflow: auto; height: 100%;">

        <div>
            <div class="controls controls-row">
                <input name="title" class="span12 title" type="text" placeholder="Title...">
            </div>
            <div class="controls controls-row">
                <textarea name="content" class="span12 wysiwyg" type="text"></textarea>
            </div>
        </div>
    </div>
</div>

提交表单时,数据始终为空。如您所见,我已经给所有字段指定了正确的名称。这就是提交代码的样子(在同一页面上):

if($_SERVER['REQUEST_METHOD'] == 'POST') {

    $title = $snowLogin->sanitize($_POST['title']);
    $content = $snowLogin->sanitize($_POST['content']);
    $edition = $snowLogin->sanitize($_POST['edition']);
    $tags = $snowLogin->sanitize($_POST['tags']);
    $subject = $snowLogin->sanitize($_POST['subject']);
    $category = $snowLogin->sanitize($_POST['category']);
    $subcategory = $snowLogin->sanitize($_POST['subcategory']);
    $description = $snowLogin->sanitize($_POST['description']);

    if ($title != "" && $content != ""  && $edition != "" && $tags != "" && $subject != "" && $category != "" && $subcategory != "" && $description != "") {
        if ($snowLogin->createPost($title, $content, $edition, $edition, $tags, $subject, $category, $subcategory, $description) == true) {
            $_SESSION['message']='
            <div class="alert span12 alert-success">
                <button type="button" class="close" data-dismiss="alert">×</button>
                <strong>The post has been created.</strong>
            </div>
            ';
            $snowLogin->redirect('newPost');
        } else {
            $_SESSION['message']='
            <div class="alert span12 alert-error">
                <button type="button" class="close" data-dismiss="alert">×</button>
                <strong>Something went wrong.</strong> The post has not been created.
            </div>
            ';
            $snowLogin->redirect('newPost');
        } 
    } else {
        $_SESSION['message']='
        <div class="alert span12 alert-error">
        <button type="button" class="close" data-dismiss="alert">×</button>
        <strong>A field was left empty.</strong> The post has not been created.
        </div>
        ';
        $snowLogin->redirect('newPost');
    }
}

首先检查是否有Post请求,确实找到了。但是,它始终在第一个If语句中返回false。不仅如此,使用var_dump($ _ POST);结果为array(0){}

清理功能无关紧要,即使没有它也不会返回任何内容。

我不能为我的生活弄清楚出了什么问题。我在不同的页面上使用大致相同的代码,实际上它可以正常工作。

请帮帮我!

0 个答案:

没有答案