Это код моей страницы:
<?php
$dbhost="****";
$dbname = '****';
$dbusername="********";
$dbpass="*****;
$con = mysql_connect("$dbhost","$dbusername","$dbpass");
mysql_select_db($dbname,$con);
?>
<main>
<table width='100%' align='center'>
<tr align='center'>
<?php
$sql = "SELECT * FROM file ORDER BY data";
$result = mysql_query($sql);
$num = mysql_num_rows($result);
$j = $num - 1;
$fyear = mysql_result($result, $j, "data");
$year = 2005;
while ($year <= $fyear)
{
$sql = "SELECT * FROM file WHERE posizione = 'uila/blindi.php' AND YEAR(data) = ".$year." ORDER BY data";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$num = mysql_num_rows($result);
$i = 0;
echo "<td>";
while ($i < $num)
{
$file = mysql_result($result, $i, "pdf");
$name = mysql_result($result, $i, "nome");
$type = mysql_result($result, $i, "type");
$path = mysql_result($result, $i, "posizione");
echo "<a href=\"opendoc.php?type={$type}&id={$i}&path={$path}\" TARGET=\"_self\">"?><?php echo $name; ?></a><br>
<?php
$i++;
}
echo "</td>";
$year++;
}
?>
</tr>
</table>
И это ошибка страницы:
Предупреждение:
mysql_result()
[function.mysql-result]: невозможно перейти к строке -1 в индексе результатов MySQL 2 в D: \ Inetpub \ webs \ uilanotiziecom \ bindi.php в строке 47
47-я строка: $j = $num - 1;
Как я могу это исправить?
ты пробовал это? :
if ( $num >= 1 ) {
$j = $num - 1;
}
если ваш запрос возвращает 0 строк, вы получаете сообщение об ошибке, что вы делаете в этом случае, зависит от вас
Я думаю, что ниже SQL-запрос возвращает пустой результат, где вы столкнулись с проблемой.
$sql = "SELECT * FROM file ORDER BY data";
Вот почему значение $ j равно -1
И, к вашему сведению,
Пожалуйста, используйте правильные соглашения об именах и уникальные имена переменных, которые вы использовали $ SQL для обоих запросов