iT邦幫忙

0

php 問題

php
gavinnokia 5 年前2764 瀏覽

一直出現
mysql_field_name() [function.mysql-field-name]: Field 4 is invalid for MySQL result index 4

$export = mysql_query($Recordseta);
$fields = mysql_num_rows($export); // thanks to Eric
echo $fields;
for ($i = 0; $i < $fields; $i++) {
$col_title .= '<td>'.mysql_field_name($export, $i).'</td>';
}
$col_title = '<tr>'.$col_title.'</tr>'; <<< 一直說這行有問題.

while($row = mysql_fetch_row($export)) {
        $line = '';
        foreach($row as $value) {
                if ((!isset($value)) OR ($value == "")) {
                        $value = "\t";
                } else {
                        $value = str_replace('"', '', $value);
                        $value = '<td>' . $value . '</td>' . "\t";
                }
                $line .= $value;
        }
        $data .= trim("<tr>".$line."</tr>")."\n";
}

$data = str_replace("\r","",$data);

請問如何修正.
ps:遇到有流水號的就沒有問題.但是沒有流水號的就出現下列錯誤.
mysql_field_name() [function.mysql-field-name]: Field n is invalid for MySQL result index n

1 個回答

2
wiseguy
iT邦超人 1 級 ‧ 5 年前
最佳解答

$fields = mysql_num_rows($export);

你的第二行寫錯了,應該用
$fields = mysql_num_fields($export);
取得欄位數,而不是用 mysql_num_rows() 取得資料筆數。

gavinnokia iT邦研究生 3 級 ‧ 5 年前 檢舉

感謝 ^^
(6小時才可按最佳答案<<好怪的限制)

我要發表回答

立即登入回答