words项目笔记

发短说文件post.php文件里有这么一段代码:

// code 1
if (!empty($_POST["post_content"])) { $sqlInsert = "INSERT INTO words_posts (post_content, post_time, post_category) VALUES ('" . $_POST["post_content"] . "', now(), '" . $_POST["post_category"] . "')"; /* Connection */ $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("fail: " . $conn->connect_error); } if ($conn->query($sqlInsert) === TRUE) { echo "Good Work!"; } else { echo "error:" . $sql . "<br>" . $conn->error; } }
// code 2 $conn->close();

这个页面在服务器上没错,但在本地运行时,出错了。

它说$conn是null。这确实是个问题,第一次进入到这个页面时,不会进入到code 1中代码,$conn自然就是null了,这是个很低级的错误。

我把代码段一改成了这样(把$conn部分拿出来),就可以了 :

// code 1

/* Connection */
$conn = new mysqli($servername, $username, $password, $dbname);
  
if ($conn->connect_error) {
    die("fail: " . $conn->connect_error);
}

if (!empty($_POST["post_content"])) {
    $sqlInsert = "INSERT INTO words_posts (post_content, post_time, post_category) VALUES ('" . $_POST["post_content"] 
        . "', now(), '" . $_POST["post_category"] . "')";
    
    if ($conn->query($sqlInsert) === TRUE) {
       echo "Good Work!";    
    } else {
       echo "error:" . $sql . "<br>" . $conn->error;
    }    
}

 

(完)

posted @ 2016-08-22 23:32  Hi!张宝  阅读(128)  评论(0编辑  收藏  举报