Php 无法查询插入数据库

Php 无法查询插入数据库,php,mysql,insert-into,Php,Mysql,Insert Into,我一直在努力找出我正在编写的一段代码中的错误,但运气不佳。这肯定是件愚蠢的事,我真的需要你的帮助 请参阅下面的代码: require_once('inc\dbh.php'); include_once('inc\functions.php'); session_start(); if(!isset($_SESSION['user'])){ header("location:index.php"); } $error = false; if($_SERVER['REQUEST_METHOD'

我一直在努力找出我正在编写的一段代码中的错误,但运气不佳。这肯定是件愚蠢的事,我真的需要你的帮助

请参阅下面的代码:

require_once('inc\dbh.php');
include_once('inc\functions.php');

session_start();
if(!isset($_SESSION['user'])){
header("location:index.php");
}

$error = false;

if($_SERVER['REQUEST_METHOD'] == "POST") {
$title = sqlinjection($_POST['title']);
$details = sqlinjection($_POST['details']);
$date = strftime("%B %d, %Y"); //date
$time = strftime("%X"); //time
$owner = $_SESSION['user'];
$public = $_POST['public'];

// basic title validation
if (empty($title)) {
    $error = true;
    $titleerror = "<li>Please enter a board title.</li>";
} else if (strlen($title) < 5) {
    $error = true;
    $titleerror = "<li>Title must have atleat 5 characters.</li>";
} 

// basic details validation
if (empty($details)) {
    $error = true;
    $detailserror = "<li>Please enter a board detail.</li>";
} else if (strlen($details) < 55) {
    $error = true;
    $detailserror = "<li>Details must have atleat 55 characters.</li>";
}

// basic public validation
if (empty($public)) {
    $error = true;
    $publicerror = "<li>Please choose your board's privacy.</li>";
} 

// if there's no error, continue to add board
if( !$error ) {

    $query = "INSERT INTO boards('board_title', 'board_details', 'board_date_posted', 'board_time_posted', 'board_public') VALUES ('$title','$details',$date','$time','$public')";
    $res = mysql_query($query);

    if ($res) {
        $errMSG = "Successfully added.";
        unset($title);
        unset($details);
        unset($public);
    } else {
        $errMSG = "Something went wrong, try again later..."; 
    }

}

}
require_once('inc\dbh.php');
包括_once('inc\functions.php');
会话_start();
如果(!isset($\u会话['user'])){
标题(“location:index.php”);
}
$error=false;
如果($\u服务器['REQUEST\u METHOD']==“POST”){
$title=sqlinjection($_POST['title']);
$details=sqlinjection($_POST['details']);
$date=strftime(“%B%d,%Y”);//日期
$time=strftime(“%X”);//时间
$owner=$\会话['user'];
$public=$_POST['public'];
//基本标题验证
如果(空($title)){
$error=true;
$titleerror=“
  • 请输入董事会标题。
  • ”; }else if(斯特伦($title)<5){ $error=true; $titleerror=“
  • 标题必须至少包含5个字符。
  • ”; } //基本细节验证 如果(空($详细信息)){ $error=true; $detailserror=“
  • 请输入电路板详细信息。
  • ”; }其他如果(斯特伦($details)<55){ $error=true; $detailserror=“
  • 详细信息必须至少包含55个字符。
  • ”; } //基本公共验证 if(空($public)){ $error=true; $publicerror=“
  • 请选择您的董事会隐私。
  • ”; } //如果没有错误,继续添加线路板 如果(!$error){ $query=“插入董事会(“董事会标题”、“董事会详细信息”、“董事会发布日期”、“董事会发布时间”、“董事会发布时间”)值(“$title”、“$details”、$date”、“$time”、“$public”)”; $res=mysql\u query($query); 如果($res){ $errMSG=“已成功添加。”; 未结算($所有权); 未结算(详情); unset(公共); }否则{ $errMSG=“出现问题,请稍后再试…”; } } }

    问题是:每当我执行insert into查询时,我总是得到“出错,请稍后再试…”

    “board_title”是一个字符串,而不是列名从
    名称中换行
    而使用
    倒勾
    您可以在添加或终止时看到错误(如果有)(mysql_error());在mysql_query()之后,停止使用PHP的mysql_API。一个准备好的语句是更好/更安全的方法,它可以避免这个问题。它还可以避免sql注入,因为看到您使用的是mysql\uAPI,而您的
    sqlinjection()
    很可能对您没有多大帮助,即使它确实包含
    mysql\u real\u escape\u string()
    。请参阅下面的问答