【问题标题】:php error getting value from text area从文本区域获取值的php错误
【发布时间】:2018-01-04 03:35:08
【问题描述】:

嘿,伙计们,我无法以这种形式从我的 textarea 中捕获值,我可以读取 name 和 email 的第一个值,但是当 php 代码尝试读取 textarea 的消息时,它会返回错误。有人可以帮我弄清楚我的代码有什么问题吗?顺便说一句,我仍然在这里写,因为我需要填补这个空间,但这句话与问题并不真正相关。谢谢!

HTML:

<form action="form_process.php" method="post">
      <div class="row">
        <div class="col-lg-6 text-center col-md-8 ml-auto mr-auto">
          <div class="input-group input-lg">
            <span class="input-group-addon">
              <i class="now-ui-icons users_circle-08"></i>
            </span>
            <input type="text" class="form-control" placeholder="First Name..." name="Name">
          </div>
          <div class="input-group input-lg">
            <span class="input-group-addon">
              <i class="now-ui-icons ui-1_email-85"></i>
            </span>
            <input type="text" class="form-control" placeholder="Email..." name="Email">
          </div>
          <form class="" action="form_process.php" method="post">
            <div class="textarea-container">
              <p>
                <textarea class="form-control" name="name" rows="4" cols="80" placeholder="Type a message..." name="MessageForMe"></textarea>
              </p>
            </div>
          </form>

          <div class="send-button">
            <input class="btn btn-primary btn-round btn-block btn-lg" type="submit" value="Submit" />
          </div>
        </div>
      </div>
    </form>

PHP:

<!DOCTYPE html>
<html>
<body>

<?php

$con = mysqli_connect("localhost","benji3pr","Benji3pr","Contact Form");

//if we dont connect
if(mysqli_connect_errno())
{
    echo "Failed to connect" . mysqli_connect_error();
}

//if we connect
if(mysqli_ping($con))
{
    echo "Connection Ok!!!";
}
else
{
    echo "Error: " . mysqli_error($con);
}

$name = $_POST['Name'];

$email = $_POST['Email'];

$message = $_POST['MessageForMe'];

echo (' ' . $name . ' ' . $email . ' ' . $message);

$sql = "INSERT INTO Contact Form (Name, Email, Message) VALUES ('$name', 
'$email', '$message')";

if (!mysqli_query($sql)){
  die('Error: ' . mysqli_error());
}



mysqli_close($con);

?>

</body>
</html>

【问题讨论】:

    标签: php html textarea


    【解决方案1】:

    <form action="form_process.php" method="post">
        <div class="row">
            <div class="col-lg-6 text-center col-md-8 ml-auto mr-auto">
                <div class="input-group input-lg">
                    <span class="input-group-addon">
                        <i class="now-ui-icons users_circle-08"></i>
                    </span>
                    <input type="text" class="form-control" placeholder="First Name..." name="Name">
                </div>
                <div class="input-group input-lg">
                    <span class="input-group-addon">
                        <i class="now-ui-icons ui-1_email-85"></i>
                    </span>
                    <input type="text" class="form-control" placeholder="Email..." name="Email">
                </div>
                <div class="textarea-container">
                    <p>
                        <textarea class="form-control" rows="4" cols="80" placeholder="Type a message..." name="MessageForMe"></textarea>
                    </p>
                </div>
                <div class="send-button">
                    <input class="btn btn-primary btn-round btn-block btn-lg" type="submit" value="Submit" />
                </div>
            </div>
        </div>
    </form>

    您在 .您在同一个 textarea 标记中有 name="name"name="MessageForMe"。这可能是您的代码无法正常工作的原因。另外,我注意到您使用相同的操作和方法将您包裹在一个嵌套的 &lt;form&gt; 中,我认为这是不必要的。

    【讨论】:

      【解决方案2】:

      从你的 textarea 中移除 name="name" 属性:

      <textarea class="form-control" name="name" rows="4" cols="80" placeholder="Type a message..." name="MessageForMe"></textarea>
      

      到:

      <textarea class="form-control" rows="4" cols="80" placeholder="Type a message..." name="MessageForMe"></textarea>
      

      【讨论】:

        【解决方案3】:

        您在 textArea 字段中使用name 属性twice。删除name="name" 并将其更改为以下内容。它现在应该可以工作了。

        <textarea class="form-control" rows="4" cols="80" placeholder="Type a message..." name="MessageForMe"></textarea>
        

        【讨论】:

          猜你喜欢
          • 2011-09-26
          • 2013-02-03
          • 1970-01-01
          • 2017-01-17
          • 2013-08-02
          • 1970-01-01
          • 2020-09-10
          相关资源
          最近更新 更多