首頁  >  文章  >  後端開發  >  PHP传输到mysql中的值为空(不是null)?

PHP传输到mysql中的值为空(不是null)?

WBOY
WBOY原創
2016-06-20 12:25:31955瀏覽

大家好,我是一名html+css+php+mysql新手,刚入门两星期。
html表单的数据传递应该就是通过name值进行的吧?如下:



  
            




然后在report.php中写入:
 $link=mysqli_connect('localhost',账户','密码',数据库名') or die('连接数据库失败!');
 echo '连接数据库成功';

$Belong=$_POST['Belong'];
echo 变量赋值成功';

 $query="INSERT INTO 堆积单位记录表(所属遗迹)".
"VALUES('$Belong')";

 $result=mysqli_query($link, $query) or die('插入记录失败!');
    echo '提交表单成功';
    mysqli_close($link);
    echo '关闭数据库连接成功';

以上是代码的一部分,数据库字段比较长,只列出了一个实例。

倒是所有步骤都提示成功,不过查看了数据库时候,发现插入的全部是空值,也不是null,就是空的,连空格都没有。

数据库和网页的编码都是UTF-8。

对了我是一名新手,所以很多错误可能犯(比如之前忘记配置php.ini),希望诸位大神可以把你们能够想到的可能有问题的地方都告诉我,谢谢啦


回复讨论(解决方案)

你的表单没有提交按钮,那么你是如何提交的呢?

你的表单没有提交按钮,那么你是如何提交的呢?


有的,之前粘贴代码时候忘了。
 

数据已经插入成功了,没有数据的时候数据库显示的是null。
不过就是插入的全是空值,我ehco了下赋值的变量,发现输出的也是空空的什么都没有,应该是赋值这块哪儿出了问题。

提交后,页面都显示的什么?

提交后,页面都显示的什么?




连接数据库成功
数据转换成功
提交表单成功
关闭数据库连接成功

那个数据转换成功就是赋值成功处的原文本

最简单的  你输出以下你的 $query  看看你执行的sql语句是什么 然后再做结论

最简单的  你输出以下你的 $query  看看你执行的sql语句是什么 然后再做结论


的确是变量赋值出问题了,因为输出的vlaues全是单引号。

不知道为什么赋值会出问题,啊

那你就向上排查呗  输出下$Belong     $Belong 没有你在print一下 $_POST 断点调试你应该会吧? 一步步向上 最后就能确定原因了

你数据库设计有问题,看看字段长度和类型!只要你能获取到,sql,没有问题,就是你表的设计有问题

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn