Php形式的困难

时间:2014-12-15 08:50:43

标签: php html forms

下面是一个html代码,我尝试编辑以使Form出来但失败了,我无法发送POST请求从It.I添加到html代码下面两件事
1)标记在这个HTML代码的开始和结束
2)Php Part但它仍然无法工作,也许这是我尝试使用此方法制作表单的方式的问题 HTML代码或Php部分....我不知道。有任何想法吗 ???非常感谢任何帮助! 形式本身:

<form action="site.com/formhandler.php" method="POST"> 
    <div class="row">            
        <fieldset id="contactform" class="wow bounce" data-wow-duration="2s" data-wow-delay="0.5s">                
            <div id="form_result"></div>
            <div class="row">
                <div class="col-md-6 col-md-offset-3">
                    <input name="name" type="text" id="name" class="form-control" placeholder="Your Name">
                </div>
            </div>
            <div class="row">
                <div class="col-md-3 col-md-offset-3">
                    <input name="email" type="text" id="email" class="form-control" value="" placeholder="Your email">
                </div>                
                <div class="col-md-3">
                    <input name="phone" type="text" id="phone" class="form-control" value="" placeholder="Your Number">
                </div>
            </div>
            <div class="row">         
                <div class="col-md-6 col-md-offset-3">
                    <textarea name="message" cols="40" rows="5" id="comments" class="form-control" placeholder="Your Message"></textarea>
                </div>
            </div>
            <div class="row">
                <div class="col-md-12 text-center">                    
                    <button type="submit" class="btn btn-default btn-lg" id="submit">SUBMIT</button>    
                </div>
            </div>
        </fieldset>
</form>

我尝试与表单连接的PHP代码:

<?php

class db {
    public function base() {
        $a = mysql_connect('', '', '');
        $b = mysql_select_db('Form', $a);
    }

}
class form {
    public function postt() {
        if ($_POST) {
            mysql_query('INSERT INTO Form SET name="' . $_POST['name'] . '",email="' . $_POST['email'] . '",phone=' . $_POST['phone'] . ',message="' . $_POST['message'] . '"');
        }
    }
}
$q1 = new db;
$q1->base();
$q2 = new form;
$q2->postt();
?>

2 个答案:

答案 0 :(得分:3)

我不确定它是否是主要嫌疑人,但action="site.com/formhandler.php"是问题所在。 action属性需要以两种方式之一路径。有域或无。域名需要以http://开头。如果没有域,则它将附加到当前URL。

示例(让我们说当前网址为http://example.com/users/):

action value                  what browser see
-------------------------------------------------------------------------
foo                           http://example.com/users/foo
foo.php                       http://example.com/users/foo.php
/foo.php                      http://example.com/foo.php
site.com/formhandler.php      http://example.com/users/site.com/formhandler.php 

也许它会告诉你一些错误:)

在我看来,你想要其中一个:

<form action="http://example.com/formhandler.php" method="POST">
<form action="/formhandler.php" method="POST"> -- script is in main webroot
<form action="formhandler.php" method="POST"> -- script is only in the same dir as current page

答案 1 :(得分:0)

请更正操作链接(添加http):

<form action="http://example.com/formhandler.php" method="POST"> 

此外,您需要调整php代码以避免安全性和数据库连接问题。