[英]unable to return a value as an array after retriving from mysql using php
我正在尝试使用php从mysql表中获取单个值或所有值,它适用于单个值,并非所有值都适用,请帮助我。
function displaySitetype() {
$result = array();
$result = site_type_find("all");
print_r($result);
$count = count($result);
for ($iter = 0; $iter < $count; $iter++) {
?> <option value="<?php echo $iter; ?>"><?php echo $result[$iter]; ?></option> <?php }
}
function site_type_find($site_type) {
if ($site_type == "all") {
$result = mysql_query("select * from site_type_table");
$count = count($result);
while ($count) {
$resultarr = mysql_fetch_assoc($result);
$arr = array_push($arr, $resultarr['site_name']);
$count--;
} return $arr;
} else {
$result = mysql_query("select site_name from site_type_table where site_id=$site_type");
$arr = mysql_fetch_array($result);
return $arr[0];
}
}
最小修复:尝试以下操作(我想您只需要site_name
列的值)
//...
if ($site_type == "all") {
$result = mysql_query("select site_name from site_type_table");
$arr = array();
while ($resultarr = mysql_fetch_assoc($result)) {
$arr[] = $resultarr['site_name'];
}
return $arr;
} else {
//...
顺便说一句,我不建议使用mysql_*
函数( 在PHP 5.5+中已弃用 )
注意,您不能直接在变量$ result(这是对MySQL查询结果的引用count()
上调用count()
)。 要根据您的情况计算结果,可以使用mysql_num_rows()
(请仔细检查手册页开头的红色警告框)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.