Clipper On Line • Ver Tópico - PHP: erro mysql_fecht_row
Página 1 de 1

PHP: erro mysql_fecht_row

MensagemEnviado: 18 Abr 2020 23:22
por cjp
Pessoal, tenho recebido frequentemente esse "aviso":

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107


Isso ocorre com frequência em vários PHPs, mas não é sempre nem em todos.

Neste caso, a linha onde está dando o erro está assim:

 while (mysql_fetch_row($rs,$i))


Alguém saberia me dizer o que é isso?

PHP: erro mysql_fecht_row

MensagemEnviado: 20 Abr 2020 09:56
por ANDRIL
Coloque o código, só esta linha não dá para ter ideia do que esta tentando fazer.

PHP: erro mysql_fecht_row

MensagemEnviado: 20 Abr 2020 14:48
por cjp
Realmente, desculpe.
Segue código:

$sql="SELECT dtcotacao,cotacao,compvenda,vinculo FROM acoes WHERE codigo='".$cd."' AND compvenda<>0 AND vinculo<>0 ORDER by dtcotacao,hrcotacao";

echo "<br>";

$rs=mysql_query($sql);
if (!$rs)
{exit("Error in SQL");}

$i = 0;

      echo '<br>';

      echo '<br>';
    

      echo '<br>';
echo '<br>';
echo "Negócios anteriores:";
      echo '<br>';

while (mysql_fetch_row($rs,$i))
{
  echo "<tr>";
 
  $nrtar=mysql_result($rs,$i);
      echo "<br>";
     echo ($i+1).") ";

      $tid=mysql_result($rs,$i);
     echo "Data: ".mysql_result($rs,$i,0);
      echo "<br>";
     echo "Cotação: ".mysql_result($rs,$i,1);
      echo "<br>";
     echo "Compvenda: ".mysql_result($rs,$i,2);
      echo "<br>";
     echo "Vínculo: ".mysql_result($rs,$i,3);

echo "<br>";
echo "</tr>";
$i++;
}



Veja como está retornando:

Negócios anteriores:

1) Data: 2016-03-14
Cotação: 7.26
Compvenda: 100.00
Vínculo: 15

2) Data: 2016-03-16
Cotação: 6.50
Compvenda: 100.00
Vínculo: 17

3) Data: 2016-03-29
Cotação: 8.80
Compvenda: -100.00
Vínculo: 17

4) Data: 2016-04-12
Cotação: 8.88
Compvenda: -100.00
Vínculo: 15

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

5) Data: 2016-06-01
Cotação: 8.00
Compvenda: 200.00
Vínculo: 18

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

6) Data: 2016-06-08
Cotação: 9.22
Compvenda: -100.00
Vínculo: 18

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

7) Data: 2016-06-08
Cotação: 9.11
Compvenda: -100.00
Vínculo: 18

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

8) Data: 2017-03-14
Cotação: 14.00
Compvenda: 100.00
Vínculo: 401

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

9) Data: 2017-05-15
Cotação: 15.80
Compvenda: -100.00
Vínculo: 401

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

10) Data: 2017-07-10
Cotação: 11.80
Compvenda: 200.00
Vínculo: 402

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

11) Data: 2017-07-10
Cotação: 12.00
Compvenda: -65.00
Vínculo: 402

Warning: mysql_fetch_row(): The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH in /home/inaciocarvalho/www/php/consacao.php on line 107

12) Data: 2017-07-10
Cotação: 11.98
Compvenda: -100.00
Vínculo: 402

PHP: erro mysql_fecht_row

MensagemEnviado: 20 Abr 2020 19:55
por ANDRIL
Substitua esta parte:
while (mysql_fetch_row($rs,$i))
{
echo "";

$nrtar=mysql_result($rs,$i);
echo "
";
echo ($i+1).") ";

$tid=mysql_result($rs,$i);
echo "Data: ".mysql_result($rs,$i,0);
echo "
";
echo "Cotação: ".mysql_result($rs,$i,1);
echo "
";
echo "Compvenda: ".mysql_result($rs,$i,2);
echo "
";
echo "Vínculo: ".mysql_result($rs,$i,3);

echo "
";
echo "";
$i++;
}

Por esta:
$i=1;
while ($l = mysql_fetch_array($rs)){
echo "";
echo($i).") ";
echo "Data: ".$l['dtcotacao'];
echo "";
echo "Cotação: ".$l['cotacao'];
echo "";
echo "Compvenda: ".$l['compvenda'];
echo "";
echo "Vínculo: ".$l['vinculo'];
echo "";
$i++;
}

Veja se para de dar os avisos.

PHP: erro mysql_fecht_row

MensagemEnviado: 22 Abr 2020 00:31
por cjp
Funcionou. Muito obrigado.