我不太喜欢PHP或mySQL,所以我希望你能帮助我。我得到了一个带有函数的 php 脚本,该函数返回一个包含数据库表中所有条目的 json:
public function select($table, $wheres = null)
{
$connect = $this->connect();
if ($wheres == null)
{
$query = mysqli_query($connect, 'SELECT * FROM `'.$table.'`');
} else {
$query = mysqli_query($connect, 'SELECT * FROM `'.$table.'` WHERE '.$this->wheres($wheres));
}
$i = 0;
$ret = array();
while ($row = mysqli_fetch_assoc($query)) {
foreach ($row as $key => $value) {
$ret[$i][$key] = $value;
}
$i++;
}
return ($ret);
}
编辑:
我有调用此函数的应用程序。一切都按预期工作,但后来我又向其中一个表添加了 2 个字段(1 个文本,1 个 varchar),现在当我调用这个函数时,它什么也不返回;字面意思是一个空字符串。
我还注意到,如果我只是删除这些新字段,它会起作用,这有点烦人,而且我需要这些字段,但我无法找出问题的根源在哪里。
此外,应用程序代码不是问题:当调用此函数时,它只传递 2 个参数(方法名称和表名),它不会出错。
顺便说一下,这是表结构,如果它可以帮助你帮助我:
图片相关
此函数可帮助您从 获取json
中的数据表单数据库,此返回json
<?php
function getData($tbl_name=null,$id=null)
{
$con = mysqli_connect("localhost","root","","mydb"); //my db is my database name
if(!$con){ die( "could't connect with database" ); }
$sql = mysqli_query($con,'SELECT * FROM $tbl_name WHERE id = {"$id"}');
while($row = mysqli_fetch_assoc($sql))
{
#echo"<pre>";
#print_r($row); //this will return data form data base in array from
return json_encode($row);
}
}
?>