各位大佬,小弟新学php,如图所示,同样的变量$name ,用echo输出则没有值,而下方从数据库可以查到输入的值,请问这是为什么?,详细问题,下附代码这是前端页面的ajax请求截图
你post到后端的时候是个空值吗? 您用echo 为空时就看不到的,您用var_dump($_POST)这样打印一下吧
post
echo
var_dump($_POST)
前面 那个 name 是从表单里取的(即:用户提交的), 后面那个 name 是来自数据库里(而 name 是数据库的一个字段)
前面 那个 name 是可以随便命名的。比如 $a = $_POST['name']; var_dump($a); 如果为空,说明用户在提交表单的时候,没有输入。
后面 那个 $row['name'] 是不能乱写的。比如:你写个 $row['abc'] 就没有值了。因为数据表里没有 abc 这个字段
唔 推荐jquery一个更简便的ajax post方法
$.post(uri,{'argu':data},function(res){ ...你的回调操作... })
这个方法更简洁哦
你$name的赋值 是把 post的name 赋值过去的 所以 你想要输出的name 又数据 需要先执行post (也就是说这个处理页面onlinedb.php 直接访问是不会有输出的)然后当你执行了 ajax操作之后。 post过去了个数组 这时候 如果你 echo $name; 这行没有删除的话应该可以在网络状态里看到输出了东西 如图
echo $name;
你试试
...你都没post过去值, 怎么会有值呢?
1.JS中查看inputname是否有数据哦。2.浏览器debug中看下请求的onlinedb.php中name是否有数据
错误级别太高头部加一句error_reporting(0);
可以使用
>var_dump($name);die();
截断一下看看!
你最上边打印的是本次传入的值,下边遍历数据库打印的,你怎么知道哪条是本次生成的?
逻辑就有错误。数据库查询的值,不是本次提交的值,是以前插入的
你
post
到后端的时候是个空值吗? 您用echo
为空时就看不到的,您用var_dump($_POST)
这样打印一下吧前面 那个 name 是从表单里取的(即:用户提交的), 后面那个 name 是来自数据库里(而 name 是数据库的一个字段)
前面 那个 name 是可以随便命名的。比如 $a = $_POST['name']; var_dump($a); 如果为空,说明用户在提交表单的时候,没有输入。
后面 那个 $row['name'] 是不能乱写的。比如:你写个 $row['abc'] 就没有值了。因为数据表里没有 abc 这个字段
唔 推荐jquery一个更简便的ajax post方法
这个方法更简洁哦
你$name的赋值 是把 post的name 赋值过去的 所以 你想要输出的name 又数据 需要先执行post (也就是说这个处理页面onlinedb.php 直接访问是不会有输出的)
然后当你执行了 ajax操作之后。 post过去了个数组 这时候 如果你
echo $name;
这行没有删除的话应该可以在网络状态里看到输出了东西 如图你试试
...
你都没post过去值, 怎么会有值呢?
1.JS中查看inputname是否有数据哦。
2.浏览器debug中看下请求的onlinedb.php中name是否有数据
错误级别太高
头部加一句
error_reporting(0);
可以使用
截断一下看看!
你最上边打印的是本次传入的值,
下边遍历数据库打印的,你怎么知道哪条是本次生成的?
逻辑就有错误。数据库查询的值,不是本次提交的值,是以前插入的