Php 充当get而不是post的HTML表单

Php 充当get而不是post的HTML表单,php,html,mysql,Php,Html,Mysql,我对整个PHP/HTML交易都很陌生,遇到了一个我不知道如何解决的问题。这是一个非常简单的表单,允许您将数据输入数据库。PHP代码如下所示: <? include("../sqlcontext.php"); $foo = mysql_query("SELECT*FROM users WHERE checksum='".$_COOKIE['userCookie']."'"); if($_COOKIE['userCookie'] == '' || !mysql_num

我对整个PHP/HTML交易都很陌生,遇到了一个我不知道如何解决的问题。这是一个非常简单的表单,允许您将数据输入数据库。PHP代码如下所示:

<?

    include("../sqlcontext.php");
    $foo = mysql_query("SELECT*FROM users WHERE checksum='".$_COOKIE['userCookie']."'");
    if($_COOKIE['userCookie'] == '' || !mysql_num_rows($foo)){
        echo 'Du er ikke logget ind :( <a href="login.php">log ind her</a>';
    }
    else{ 

    if($_POST['genreKnap']){
        $nameGenre = $_POST['nameGenre'];
        $textGenre = $_POST['textGenre'];       
        $succes = mysql_query("INSERT INTO genre VALUES('null','$nameGenre','$textGenre')");

        if($succes){
            echo 'Yay!';
        }else {
            echo 'Oh no';
        }
    } 

?>

表格如下:

<form name="form1" method="post" enctype="text/plain" action="">
  <table>
    <tr>
        <td>Genre navn:</td>
        <td><input type="text" name="nameGenre" id="nameGenre" style="width:100%; padding-right: 1px" /></td>
    </tr>
    <tr>
        <td>Genre beskrivelse:</td>
        <td><textarea name="textGenre" id="textGenre" style="width:100%; padding-right: 1px"></textarea></td>
    </tr>
    <tr>
        <td></td>
        <td><input type="submit" name="genreKnap" id="genreKnap" value="Go!"/></td>
    </tr>
  </table>    
</form>

类型导航:
风格涂鸦:
每当我按下submit按钮时,它就好像是一个get方法而不是post

enctype=“text/plain”

把它拿出来。它仅用于调试目的,不会生成任何可以用机器解析的内容

enctype=“text/plain”

把它拿出来。它仅用于调试目的,不会生成任何可以用机器解析的内容。

Aha

您没有正确过帐表单。 设定

action=”“

action=“code.php”

假设您的php页面名为code.php。只需将其更改为php页面的名称/路径,表单就会将数据发送到php代码进行处理

当您将
action=”“
留空时,它会将数据发布到自身(同一页)。它不是充当GET,它仍然充当POST,而是发布到错误的位置。我想你把问题的标题写错了


你是什么意思?它的行为像get而不是post。 您不能在PHP中读取$\u POST变量吗

删除表单代码中的
'enctype=“text/plain”

Aha

您没有正确过帐表单。 设定

action=”“

action=“code.php”

假设您的php页面名为code.php。只需将其更改为php页面的名称/路径,表单就会将数据发送到php代码进行处理

当您将
action=”“
留空时,它会将数据发布到自身(同一页)。它不是充当GET,它仍然充当POST,而是发布到错误的位置。我想你把问题的标题写错了


你是什么意思?它的行为像get而不是post。 您不能在PHP中读取$\u POST变量吗

删除表单代码中的
'enctype=“text/plain”

有效表单类型:

application/x-www-form-urlencoded: This is the default content type

multipart/form-data
内容类型“application/x-www-form-urlencoded”效率低下 用于发送大量二进制数据或包含 非ASCII字符。内容类型“多部分/表单数据”应为 用于提交包含文件、非ASCII数据和 二进制数据

来源:

有效表格类型:

application/x-www-form-urlencoded: This is the default content type

multipart/form-data
内容类型“application/x-www-form-urlencoded”效率低下 用于发送大量二进制数据或包含 非ASCII字符。内容类型“多部分/表单数据”应为 用于提交包含文件、非ASCII数据和 二进制数据


来源:

你们都忽略了主要问题,而把注意力集中在无关的项目上


首先,最重要的是,他使用了一个简短的php开场白
,你们都忽略了主要问题,只关注无关的项目


首先,如果你通过表单发送没有任何文件的正常数据,他会使用一个简短的php开场白
。
然后,并不总是需要
enctype

但即使你想把它包括在内 正确的方法是:

enctype="multipart/form-data"
还可以在表单的操作方法中提供url:


我希望它能解决这个问题。

如果您通过表单发送没有任何文件的正常数据。 然后,并不总是需要
enctype

但即使你想把它包括在内 正确的方法是:

enctype="multipart/form-data"
还可以在表单的操作方法中提供url:


我希望它能解决这个问题。

很容易,只需为选项卡保留4个空格中的多个,并使用空格来管理它。:)选中这一行
$succes=mysql\u query(“插入类型值('null','$namegree','$textgree'))你是什么意思?它看起来好像是一个get方法?你正在使用并且应该使用。你也很容易受到现代API的影响,因为它会让你更容易使用。你说的“它的行为就好像它是一个get方法”是什么意思?你能解释一下你会遇到什么错误吗?如果有任何错误的话,它很容易保持4个空格的倍数作为制表符,并用空格来管理它。:)选中这一行
$succes=mysql\u query(“插入类型值('null','$namegree','$textgree'))你是什么意思?它看起来好像是一个get方法?你正在使用并且应该使用。你也很容易受到现代API的影响,因为它会让你更容易使用。你说的“它的行为就好像它是一个get方法”是什么意思?你能解释一下你会遇到什么错误吗?如果有,我的朋友是一个经验更丰富的PHP程序员,他为了调试而把它放进去。我现在已经将其取出,但是当我尝试提交数据时,页面仍然没有反应。很抱歉,没有正确阅读您的代码。您的表单没有将数据发布到正确的php页面。我的朋友是一位经验丰富的php程序员,他为了调试而将其放入。我现在已经将其取出,但是当我尝试提交数据时,页面仍然没有反应。很抱歉,没有正确阅读您的代码。您的表单没有将数据发布到正确的php页面。