如何将textarea数据添加到我的SQL数据库

时间:2018-07-15 09:07:25

标签: php html database forms textarea

我已经尝试过此代码,但无法正常工作。 这是db pic,其文本区域为TechInfo和Notes。techinfo and notes are tinytext。这是PHP代码:

<?php
$conn = mysqli_connect('localhost','root','','deanship_of_information_technology');
    if(!$conn)
    {
    die(mysqli_error());
    }

    if(isset($_POST['submit']))
    {
     $textareaValue = trim($_POST['information']);
      $sql="INSERT INTO technical_support(ApplicantName, BuildingNo, FloorNo, 
      EXTPhone,  ReportDate,  PlaceOfApp, TechInfo,Notes)VALUES('".inputName."','".inputBuilding."','".inputFloor."','".inputEXT."','".inputDateS."','".inputApp."','".$textareaValue."','".$textareaValue1."')";
    $rs = mysqli_query($conn, $sql);
    $affectedRows = mysqli_affected_rows($conn);

    if($affectedRows == 1)
    {
        $successMsg = "Record has been saved successfully";
    }

    }
    ?>

这是php按摩代码:

    <?php
  if(isset($successMsg))
  {
    echo "<div class='success-msg'>";
    print_r($successMsg);
    echo "</div>";
  }
?>

这是我希望sucss msg在同一按摩中的html表单代码:

     <form class="form-signin" method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
      <br> <br><br> <img class="mb-4" src="/Users/ahadalmalki/Desktop/web-1 2/img/logo1.png" alt="" width="100" height="120">
      <div class="form-group">
      <label for="inputName"><b> Applicant Name:</b></label>
      <input type="text" placeholder="Full Name" align="left" name="inputName" class="form-control" required>
      </div>
      <div class="form-group">
      <label for="inputBuilding"><b> Building Number :</b></label>
      <input type="text" placeholder="Building#" align="left" name="inputBuilding" class="form-control">
      </div>
      <div class="form-group">
      <label for="inputFloor"><b>Floor Number:</b></label>
      <input type="text" placeholder="Floor#" name="inputFloor" class="form-control" >
      </div>
      <div class="form-group">
      <label for="inputEXT"><b>EXT Phone:</b></label>
      <input type="phone" placeholder="EXT Phone" align="left" name="inputEXT" class="form-control" >
      </div>
      <div class="form-group">
      <label for="inputDateS"><b> Date:</b></label>
      <input type="date" placeholder="Date" align="left" name="inputDateS" class="form-control" >
      </div>
      <div class="form-group">
      <label for="inputApp"><b>Place Of Application  :</b></label>
      <input type="text" placeholder="Place Of Application" name="inputApp" class="form-control" >
      </div>
      <div class="form-group">
      <label for="inputinfo"><b>Technical Support Information :</b> </label><br>
      <textarea rows="4" cols="89" name="information" form="form-signin" required>
</textarea>
      </div>
      <div class="form-group">
      <label for="inputNotes"><b>Notes:</b></label><br>
      <textarea rows="4" cols="75" name="Notes" form="form-signin" required>
      </textarea>
      </div>


      <input type="submit" name="submit" value="Submit">
      </form>

我想将信息添加到数据库中,但错误出在信息和注释是未定义的索引中,而另一个则是输入名inputapp ...出现错误,如:使用未定义的常量将来会引发错误。

2 个答案:

答案 0 :(得分:0)

我认为您的错误在这里:

<textarea rows="4" cols="89" name="information" form="form-signin" required>
</textarea>

您有

  

form =“ form-signin”

属性,我认为应该是类属性

答案 1 :(得分:-1)

首先,验证查询中的变量(它们之前没有“ $”,并且您没有为其分配任何值),其次,在执行任何查询之前,将其打印,复制并运行直接在您的数据库客户端中,这将帮助您查找所构建的查询中是否存在任何错误,也可以尝试使用该查询,请记住始终确保在$ _POST中收到文本区域信息(print_r()将在执行任何查询之前执行

$textareaValue = trim($_POST['information']);
  $sql="INSERT INTO technical_support SET ApplicantName = $inputName, 
        BuildingNo = $inputBuilding, FloorNo = $inputFloor, EXTPhone = $inputEXT, 
        ReportDate = $inputDateS, PlaceOfApp = $inputApp, TechInfo = $textareaValue, 
        Notes = $textareaValue1"

让我知道怎么回事!