2013-03-30 44 views
0

页面上的输出很好,没有错误或警告。它似乎应该将值插入到数据库中,但它不会。 var_dump($ result)结果为“boolean false”。当我从命令行插入查询时,它可以工作。值未插入到数据库中 - 没有警告或错误

功能:

function handlePostForm(){ 
     date_default_timezone_set('UTC'); 
    if($_SERVER["REQUEST_METHOD"] == "POST"){ 
    if(isset($_POST['formSumbit']) && !empty($_POST['newheader']) && !empty($_POST['newpost'])) 
    { 
     $varHeader = $_POST['newheader']; 
     $varContent = $_POST['newpost']; 
     $varDate = date('Y-m-d'); 
     $order ="INSERT INTO posts (header,content,post_date) VALUES  ('$varHeader','$varContent','$varDate')"; 
     $result = mysql_query($order); 

    } 

    else 
    echo "error"; 
    } 
    } 

除了HTML表单与调用该函数:

<?php include('post_func.php'); ?> 
<title>new post</title> 
</head> 
    <body dir="rtl"> 
    <h1>new post</h1> 
    <form method='post' action="<?php $_SERVER["PHP_SELF"]?>"> 
    header: 
    <input type="text" name="newheader" maxlength="100" style="width:500px;"> 
    post: 
    <textarea <input type="text" name="newpost" maxlength="100" style="width:500px; height:500px;"/></textarea> 

    <input type="submit" name="formSumbit" value="sumbit" /> 
    </form> 

    <?php 

    handlePostForm(); 

    ?> 
+0

你检查你的错误日志?你会得到什么错误?你采取了哪些步骤来解决这个问题?你是否从命令行运行查询? –

+3

[请不要在新代码中使用'mysql_ *'函数](http://bit.ly/phpmsql)。他们不再被维护[并被正式弃用](https://wiki.php.net/rfc/mysql_deprecation)。看到[红框](http://j.mp/Te9zIL)?学习[*准备的语句*](http://j.mp/T9hLWi),并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [这篇文章](http://j.mp/QEx8IB)将帮助你决定哪个。如果你选择PDO,[这里是一个很好的教程](http://j.mp/PoWehJ)。 –

+1

'var_dump($ result)'显示什么?如果'FALSE','echo mysql_error()'。 – MichaelRushton

回答

0

为了得到详细数据错误,你可以尝试使用连接处理程序在您的mysql_query()函数和使用mysql_insert_id来确认你的插入。还要确保在mysql_connection之后使用mysql_select_db()函数来选择数据库。

继应用上面的东西后就会代码:

function handlePostForm(){ 
global $conn;//YOur connection 
    date_default_timezone_set('UTC'); 
if($_SERVER["REQUEST_METHOD"] == "POST"){ 
if(isset($_POST['formSumbit']) && !empty($_POST['newheader']) && !empty($_POST['newpost'])) 
{ 
    $varHeader = $_POST['newheader']; 
    $varContent = $_POST['newpost']; 
    $varDate = date('Y-m-d'); 
    $order ="INSERT INTO posts (header,content,post_date) VALUES  ('$varHeader','$varContent','$varDate')"; 
    $result = mysql_query($order ,$conn); 

} 

else 
echo "error"; 
} 
} 
0
if($_SERVER["REQUEST_METHOD"] == "POST"){ 
mysql_select_db("application", $con); 
    mysql_query("INSERT INTO program_info(prog_title,location,count,p_date,p_start,p_end,advisor_name,advisor_email,advisor_phone,stud1_name,stud1_email,stud1_phone,stud2_name,st 
ud2_email,stud2_phone,program) 
    VALUES ('$_POST[event_title]','$_POST[event_location]','$_POST[estimated_count]','','$_POST[event_starttime]','$_POST[event_endtime]','$_POST[advisor]','$_POST[advisor_email]','$_POST[phone]','$_POST[student1]','$_POST[student1_email]','$_POST[studentphone1]','$_POST[student2]','$_POST[student2_email]','$_POST[studentphone2]','$_POST[program])"); 
    $temp=$_POST['event_date']; 
    echo $temp; 
}else` 
{ echo "error"; 
}