使用php和jquery ajax从mysql数据库中获取数据
我想使用php和jquery ajax从mysql数据库中获取数据。 ‘process.php’是连接数据库并获取mysql数据的php文件。 它在单独运行时有效,但是当使用ajax调用时它不起作用。 有人可以帮助纠正错误吗? 这是我的html文件:
$(document).ready(function(){ function showRoom(){ $.ajax({ type:"POST", url:"process.php", data:{action:showroom}, success:function(data){ $("#content").html(data); } }); } showRoom(); });
这是我的process.php文件
<?php $link=mysqli_connect("localhost","root","raspberry","homebot"); if (mysqli_connect_errno()) echo "Failed to connect to MySQL: " . mysqli_connect_error(); $action=$_POST["action"]; if($action=="showroom"){ $query="SELECT * FROM user"; $show=mysqli_query($link,$query) or die ("Error"); while($row=mysqli_fetch_array($show)){ echo "$row['name'] "; } } ?>
您的ajax调用中有两个语法错误:
$(document).ready(function(){ function showRoom(){ $.ajax({ type:"POST", url:"process.php", data:{action:"showroom"}, success:function(data){ $("#content").html(data); } }); } showRoom(); });
请记住,jQuery的ajax期望一个对象作为参数。 在对象内部的语法是
{ key : value }
你有type =“POST”,它在声明性语法中是正确的,但在定义对象键时是不正确的。
其次,上述对象的数据属性也应该是一个对象。 所以不应该采取行动=陈列室
{action:"showroom"}
你在代码中犯了错误:
echo "$row['name'] ";
这应该是:
echo "".$row['name']." ";
试试……