doulan4371 2013-09-17 02:28
浏览 54
已采纳

PHP表单不插入数据

This is not going online anytime soon. I am just trying to learn PHP/MySQL. This is my first attempt with inserting to a database. I cannot figure out why the data won't insert. This is the HTML form:

    <form action="testdbserverside.php" method="post">
    Name:<br />
    <input type="text" id="ContactName" name="Name" /><br />
    E-mail:<br />
    <input type="text" id="ContactEmail" name="Email" /><br />
    Comment:<br />
    <input type="text" id="ContactComment" name="Comment" size="50" />
    <br /><br />
    <input type="submit" id="submit" name="submit" value="Send">
    <input type="reset" id ="reset" value="Reset">
    </form>

This is the PHP:

    <?php
     $ContactName = $_POST["ContactName"];
     $ContactEmail = $_POST["ContactEmail"];
     $ContactComment = $_POST["ContactComment"];

     $sql_connection = mysqli_connect("localhost:8889","root","root","derek_website_tmp");

     if (mysqli_connect_errno())
        {
         echo "failed to connect" . mysqli_connect_error();
        }

     $sql = "INSERT INTO MyContacts (

                ContactName,
                ContactEmail,
                ContactComment,
                ContactDateCreated
            )
            VALUES (
              '$ContactName',
              '$ContactEmail',
              '$ContactComment',
              NOW()
        )";

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

     mysql_close ($sql_connection);

    ?>

And this is the database:

    mysql> USE derek_website_tmp;
    Database changed
    mysql> CREATE TABLE MyContacts  (
        -> ContactID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        -> ContactName VARCHAR(100),
        -> ContactEmail VARCHAR(100),
        -> ContactComment VARCHAR(200),
        -> ContactDateCreated DATETIME
        -> );
    Query OK, 0 rows affected (0.19 sec)

Any help would be greatly appreciated. I realize this is not sanitizing anything and is not worthy to go live. I'm just working on getting it to insert for now.

Thank you,

  • 写回答

3条回答 默认 最新

  • dsjpik057730 2013-09-17 02:32
    关注
    $ContactName = $_POST["ContactName"]; 
    $ContactEmail = $_POST["ContactEmail"]; 
    $ContactComment = $_POST["ContactComment"];
    

    Should be:

    $ContactName = $_POST["Name"]; 
    $ContactEmail = $_POST["Email"]; 
    $ContactComment = $_POST["Comment"];
    

    The name is your parameter not the id

    And your query should be:

    $sql = "INSERT INTO MyContacts (ContactName, ContactEmail, ContactComment, ContactDateCreated ) VALUES ( "'.$ContactName.'", "'.$ContactEmail.'", "'.$ContactComment.'", NOW() )";
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?