随机形成不向数据库

时间:2016-05-16 03:44:38

标签: php html mysql

我想我不能发布超过2个链接,因为我是新的,所以我会将链接放在pastebin上。 http://pastebin.com/2kab4LND

基本上,我写了一个表单来向我的数据库提交值。这些值是昵称,标题,日期和内容(基本上是他们写东西的地方) 无论如何,几个小时前,这是完美的。无论内容值是多少文本,它都会提交给数据库。

第一张图显示数据库按预期工作。

但是,现在当我尝试使用表单提交与该表单相同的值时,它将不会显示没有错误。第二张图片大致显示了在内容无法显示之前我能获得多大的内容。其他所有工作,例如昵称和标题,只是一旦超出我想的限制就不起作用的内容。

我没有更改任何代码,因此我会在向您展示我的mysql表后显示。

第三张照片显示了我的表格。我没有改变任何关于他们的事情。 当他们完美地工作时,表格看起来就像那样。

这是我的表单代码。我删除了一些东西,所以它稍微容易阅读,但这样就好了。这是以前工作的代码,我没有改变它,所以我不确定是否会有任何错误导致这种情况发生。现在我会告诉你它连接的是什么。对不起,这真的很乱。

<?php

 echo "<form id='submit-form' name='submit-form' action='".setDreams($conn)."' method='POST'>
  <input type='hidden' name='dreamid' value=''>
  <input type='hidden' name='date' value='".date('Y-m-d H:i:s')."'>
  <div id='title'>
    <textarea type='text' name='dreamtitle' value='title' id='title_textarea' placeholder='Write the title of your dream here. (Max 40 characters)' method='POST' rows='1' style='margin-left: 10px' style='z-index: 1'></textarea>
  </div>
  <div id='dream_editor'>
   <textarea type='text' name='thedream' value='dream' id='dream_textarea' placeholder='Describe your dream here (Must be at least 250 characters)'  method='POST' rows='8' style='margin-left: 10px' style='z-index: 1'></textarea>
  </div>
    <div id='desired_nickname'>
    <textarea type='text' method='POST' type='nickname' name='dreamnickname' value='' id='nickname_textarea' placeholder='Write your desired nickname' rows='1' style='margin-left: 10px' style='z-index: 1'></textarea>
    </div>
    <button id='submitDreamButton' style='margin-bottom: 10px' name='dreamSubmit' type='submit'></button>
    <button id='cancelButton' style='margin-bottom: 10px' href='index.php'></button>

  </form>";
  ?>

这是从表单开始工作的功能。无论如何,正如我已经说过的那样,这是有效的代码,直到它在我没有改变它之后停止工作。我多次查看它并没有发现任何错误。

 <?php
function setDreams($conn) {
    if (isset($_POST['dreamSubmit'])) {
        $uid = $_POST['dreamid'];
        $date = $_POST['date'];
        $dreamtitle = $_POST['dreamtitle'];
        $thedream = $_POST['thedream'];
        $nickname = $_POST['dreamnickname'];

        $sql = "INSERT INTO dreams (dreamid, nickname, date, content, title) VALUES ('$uid','$nickname','$date','$thedream','$dreamtitle')";
        $result = $conn->query($sql);
    }
}

这让我很紧张,因为我知道它只是起作用,我很困惑,为什么它现在不起作用。我希望这篇文章不难阅读,希望你能理解这个问题:)

提前致谢

1 个答案:

答案 0 :(得分:0)

您的action属性必须采用网址格式。

<form id='submit-form' name='submit-form' action='process.php' method='POST'>
    <input type='hidden' name='dreamid' value=''>
    <input type='hidden' name='date' value='".date('Y-m-d H:i:s')."'>
           <div id='title'>
        <textarea type='text' name='dreamtitle' value='title' id='title_textarea' placeholder='Write the title of your dream here. (Max 40 characters)' method='POST' rows='1' style='margin-left: 10px' style='z-index: 1'></textarea>
    </div>
    <div id='dream_editor'>
        <textarea type='text' name='thedream' value='dream' id='dream_textarea' placeholder='Describe your dream here (Must be at least 250 characters)'  method='POST' rows='8' style='margin-left: 10px' style='z-index: 1'></textarea>
    </div>
    <div id='desired_nickname'>
        <textarea type='text' method='POST' type='nickname' name='dreamnickname' value='' id='nickname_textarea' placeholder='Write your desired nickname' rows='1' style='margin-left: 10px' style='z-index: 1'></textarea>
    </div>
    <button id='submitDreamButton' style='margin-bottom: 10px' name='dreamSubmit' type='submit'></button>
    <!-- Your submit button must have the value attribute otherwise, isset($_POST['dreamSubmit']) means your button doesn't have a value -->
    <button id='submitDreamButton' style='margin-bottom: 10px' name='dreamSubmit' value="Submit" type='submit'></button>
    <button id='cancelButton' style='margin-bottom: 10px' href='index.php'></button>

</form>

process.php

<?php
if (isset($_POST['dreamSubmit'])) {
    setDreams($conn);
}

function setDreams($conn) {
    $uid = $_POST['dreamid'];
    $date = $_POST['date'];
    $dreamtitle = $_POST['dreamtitle'];
    $thedream = $_POST['thedream'];
    $nickname = $_POST['dreamnickname'];

    $sql = "INSERT INTO dreams (dreamid, nickname, date, content, title) VALUES ('$uid','$nickname','$date','$thedream','$dreamtitle')";
    $result = $conn->query($sql);
}