我有一个包含2列的表
第一列是文件ID(varchar)
第二个是日期(varchar)
我想为表中的每条记录获取这两列,并将其粘贴在一个关联数组
中我的目标是将文件ID作为键,将日期作为值
我现在有点卡住,因为我正在将代码从索引数组更改为关联数组。
这是我到目前为止所拥有的。
function getLiveList(){
$idQuery = "SELECT file_id FROM live_list";
$dateQuery = "SELECT date FROM live_list";
$fileid = mysql_query($idQuery);
$date = mysql_query($dateQuery);
$array = array();
while($row = mysql_fetch_assoc($date)){
$array[$row] = $date;
}
return $array;
}
我知道这是错的,但我肯定是正确的!
这是我的错误:警告:非法偏移类型...
答案 0 :(得分:3)
首先,使用mysqli
:
$Link = mysqli_connect("localhost", "my_user", "my_password");
$Query = "SELECT file_id, date FROM live_list";
$Result = mysqli_query($Link, $Query);
while($row = mysqli_fetch_assoc($Result)){
$array[$row['file_id']] = $row['date'];
}
return $array;
您不需要为每列复制查询,它们可以在同一查询中返回。每次提取一行时$row
是一个以列为键的关联数组。
答案 1 :(得分:0)
试试这个
function getLiveList()
{
$idQuery = "SELECT file_id FROM live_list";
$dateQuery = "SELECT date FROM live_list";
$fileid = mysql_query($idQuery);
$date = mysql_query($dateQuery);
$dates = mysql_fetch_array($date);
$array = array();
while($row = mysql_fetch_assoc($fileid))
{
$array[$row['file_id']] = $dates['date'];
}
return $array;
}