0

为什么我的数据不能进入我的 sql 数据库?我知道我已连接到数据库。而且我知道发布的数据正在到达此页面,因为我可以回显它。!emptys 的行有问题。当我输入 yyy 但不是 xxx 的值时,我收到“请填写所有字段”消息。但是,如果我将两者都留空,或者只输入 xxx 的值,我什么也得不到。当我为两者输入值时,我确实收到了“失败”消息,因此数据没有被插入到 sql 中。

if (isset($_POST['xxx']) && ($_POST['yyy']))  {
$xxx = $_POST['xxx'];
$age = $_POST['yyy'];
    if (!empty($xxx) && !empty($yyy)) {

    $query = "INSERT INTO test VALUES ('".mysql_real_escape_string($child_name)."',
    '".mysql_real_escape_string($age)."')";
        if ($query_run = mysql_query($query)) {
        echo 'Data inserted.';
        } else {
            echo 'Failed.';
        }
} else {
    echo 'Please fill out all fields';
}
}
4

5 回答 5

3

首先更正您的isset陈述yyy

if (isset($_POST['xxx']) && isset($_POST['yyy']))

第二次更正:

$yyy = $_POST['yyy'];代替$age = $_POST['yyy'];

第三次更正:

if (mysql_query($query))代替if ($query_run = mysql_query($query))

因为mysql_query()回报bool

echo mysql_error();而不是echo 'Failed.'; 得到你的mysql错误!

于 2012-10-18T14:40:15.693 回答
0

检查您的 php 和 mysql 错误。

<?php

echo (mysql_error());
error_report(E_ALL);

?>
于 2012-10-18T14:41:31.123 回答
0

检查查询并尝试此代码并将其重命名为('id', 'field name')

 $query = "INSERT INTO test ('id', 'field name') VALUES ('". mysql_real_escape_string($child_name) ."', '". mysql_real_escape_string($age) ."')";
于 2012-10-18T14:41:38.767 回答
0

您是否尝试过手动查询?

在发送之前回显查询并尝试在 phpmyadmin 中运行它

也添加echo mysql_error();查看错误

于 2012-10-18T14:42:06.457 回答
0

几个问题:

1.  if (isset($_POST['xxx']) && ($_POST['yyy']))  { //needs to be
    if (isset($_POST['xxx']) || isset($_POST['yyy']))  {

2.  if (!empty($xxx) && !empty($yyy)) { //needs to be
    if ( !empty($xxx)) ||  !empty($age) ) { 

3.  if ($query_run = mysql_query($query)) { //whats $query_run?

mysql_query($query)TRUE如果查询成功则返回 a 。参考手册

于 2012-10-18T14:42:48.950 回答