Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lusigmas

[Resolvido] Consulta retorna 1 registro a menos

Recommended Posts

Olá pessoal!

Estou quebrando a cabeça com uma consulta, já tendo procurado solução em manuais e aqui no fórum, sem resultado.

 

Na consulta abaixo o resultado considera sempre um registro a menos.

A contagem do mysql_num_rows dá o resultado correto, por exemplo = data 19/04/2010 contem

2 registros e o resultado apresenta registros = 2.

Porém no formulário gerado com o while ele desconsidera o primeiro registro e no exemplo

acima apresenta só 1 resultado.

Testei datas com mais resultados, por exemplo 22/04/2010 tem 5 registros e ele desconsidera

o primeiro e só apresenta 4. É sempre o registro mais antigo que não aparece.

 

Agradeço se puderem me ajudar.

 

<?php

include "validar_session.php";

include "configura/config_sistema.php";

include "configura/conexao.php";

 

$base = mysql_query("select * from cadastro WHERE login='$login_usuario'");

 

$consulta = mysql_query("select historico.*, cadastro.* from historico

LEFT JOIN cadastro ON cadastro.id = historico.id_cadastro

WHERE data_historico='$data3' ORDER BY data_historico");

$row_rs_forn = mysql_fetch_assoc($consulta);

 

$num_registros = mysql_num_rows($consulta);

$total_usuarios = $num_registros;

echo $total_registros;

 

while($linhas = mysql_fetch_object($consulta)) {

echo $linhas->razaosocial;

echo $linhas->historico;

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Logo após a consulta você está inserindo isso:

$row_rs_forn = mysql_fetch_assoc($consulta);

 

Logo, o PHP lê o primeiro resultado e move o ponteiro para o segundo, por isso no laço está vindo um resultado a menos, já que o primeiro já foi lido.

Ai tem duas alternativas:

1 - Remova o que eu citei acima;

2 - Use mysql_data_seek, para voltar o ponteiro para o primeiro resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tenho o mesmo problema mas com o seguinte código, e não consigo resolver..

 

 

<?php
require("config.php");
$xml = new SimpleXMLElement('<photos/>');
$draw = $xml->addChild('config enable_auto_play="true" auto_play_duration="2.5" auto_align="true"
folder="images/"
tween_duration="0.5"
photo_border_size="4"
photo_border_color="0xFFFFFF"
photo_alpha="true"
x_spacing="120"
y_spacing="0"
side_photo_count="3"');
$result = mysql_query("select * from photos");
while($row = mysql_fetch_object($result)) {
$draw = $xml->addChild('photo');
$draw->addChild('filename',$row['location']);
$draw->addChild('title',$row['caption']);
$draw->addChild('description',$row['descricao']);
}
$fp = fopen("galeria_jnovas.xml","wb");
fwrite($fp,$xml->asXML());
fclose($fp);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.