Jump to content


Photo

Estou Com Problemas Nos Mysql...


  • Faça o login para participar
8 replies to this topic

#1 rfp

rfp

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Não informado

Posted 23/02/2004, 10:56

Estou com problemas ao utilizar o mysql, o negócio é o seguinte:

Estou utilizando mysql_fetch_array, mysql_fetch_object, mysql_num_rows em um mesmo select, dai parece que um atrapalha o outro, por que?

Eu já testei eles separados e funcionaram coretamente, mas juntos...!

O que pode estar acontecendo?
Eu não posso utilizá-los num mesmo select?
:(

#2 fly2k

fly2k

    Super Veterano

  • Usuários
  • 2262 posts
  • Sexo:Não informado

Posted 23/02/2004, 11:14

Poste seu código pra gente analisar!

[]´s
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#3 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 23/02/2004, 11:53


<?
$conexao = mysql_connect("localhost","user","senha");
$db = mysql_select_db("database");

$sql = mysql_query("SELECT * FROM tabela");
if ($total = mysql_num_rows($sql)>0) {
while ($rows = mysql_fetch_array($sql)) {
$nome = $rows["nome"];
$idade = $idade["idade"];

echo "Nome: $nome || Idade: $idade<br>";
}
}
?>

agora o mysql_fetch_object , eu num sei direito funciona.. + se você colocar aÊ como que se t acolocando ajudaria muito nos , a analisar e depois a te ajudar !

o codigo que passei acima funciona perfeitamente.. e só você fazer algumas alterações, que você ( creio eu ) sabe onde e...

bom qualquer duvida posta aê !!!

flw (y) !!!

Edição feita por: Goku Jr, 23/02/2004, 11:53.

-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#4 rfp

rfp

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Não informado

Posted 23/02/2004, 12:51

Ai está o código:

$data = date('Y/m/d');
$sql = mysql_query("SELECT * FROM Tabela WHERE Data='$data'");
$visitashoje = mysql_num_rows($sql);
$row = mysql_fetch_object($sql);
$dia_semana_hoje = $row->Dia;
$semana = array("Sun" => "Domingo", "Mon" => "Segunda", "Tue" => "Terça", "Wed" => "Quarta", "Thu" => "Quinta", "Fri" => "Sexta", "Sat" => "Sábado");
$m_hoje = $semana[$dia_semana_hoje];
$totalhoje = 0;
while ($linha=mysql_fetch_array($sql)) {
$Visitas = $linha['Visitas'];
$totalhoje = $Visitas + $totalhoje;
}

echo "Hoje dia $m_hoje o site teve $visitashoje visitas de Ips difirentes e $totalhoje acessos";

Então sera que alguém pode me ajudar?

Edição feita por: rfp, 23/02/2004, 12:56.


#5 thiagorsl

thiagorsl
  • Visitantes

Posted 23/02/2004, 13:23

esta ta dando erro pq vc esta usando mais pq conforme vc executa o mysql_fetch_objet ele formata a string $sql ai ela ta esta formata e vai tantar formata-la dinovo no mysql_fetch_array

#6 rfp

rfp

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Não informado

Posted 23/02/2004, 13:34

A sim, mas como eu faço então se eu preciso utilizar os dois dados que estou tentando pegar no banco?

#7 thiagorsl

thiagorsl
  • Visitantes

Posted 23/02/2004, 13:45

esse foi um jeito rapido que pensei acredito que tenha outro
$data = date('Y/m/d');
$sql = mysql_query("SELECT * FROM Tabela WHERE Data='$data'");
$sql2=$sql;
$visitashoje = mysql_num_rows($sql);
$row = mysql_fetch_object($sql);
$dia_semana_hoje = $row->Dia;
$semana = array("Sun" => "Domingo", "Mon" => "Segunda", "Tue" => "Terça", "Wed" => "Quarta", "Thu" => "Quinta", "Fri" => "Sexta", "Sat" => "Sábado");
$m_hoje = $semana[$dia_semana_hoje];
$totalhoje = 0;
while ($linha=mysql_fetch_array($sql2)) {
$Visitas = $linha['Visitas'];
$totalhoje = $Visitas + $totalhoje;
}

Edição feita por: thiagorsl, 23/02/2004, 13:45.


#8 ffmm

ffmm

    Veterano

  • Usuários
  • 1224 posts
  • Sexo:Não informado

Posted 23/02/2004, 13:51

Thiagorsl, a função da consulta retorna um Resource, que identifica a consulta dentro do mysql. Fazer uma cópia desse resource, a consulta continua sendo a mesma, mas apenas com duas vars.

rfp, afinal, o que acontece com o script? ele da algum erro? funciona de maneira diferente do esperado? explique o que acontece.

#9 rfp

rfp

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Não informado

Posted 23/02/2004, 15:09

Ela funcionava de maneira diferente do esperado, mas eu consegui resolver o problema fazendo assim:

$data = date('Y/m/d');
$sql = mysql_query("SELECT * FROM Tabela WHERE Data='$data'");
$visitashoje = mysql_num_rows($sql);
$row = mysql_fetch_object($sql);
$dia_semana_hoje = $row->Dia;
$prim_visita_hoje = $row->Visitas;
$semana = array("Sun" => "Domingo", "Mon" => "Segunda", "Tue" => "Terça", "Wed" => "Quarta", "Thu" => "Quinta", "Fri" => "Sexta", "Sat" => "Sábado");
$m_hoje = $semana[$dia_semana_hoje];
$totalhoje = $prim_visita_hoje;
while ($linha=mysql_fetch_array($sql)) {
$Visitas = $linha['Visitas'];
$totalhoje = $Visitas + $totalhoje;
}

Ou seja quando eu uso o mysql_fetch_object eu já aproveito pra pegar as visitas dessa linha da consulta, pois quando eu for utilizar o mysql_fetch_array eu inicio a variável com esse valor.
Eu pensei em fazer isso depois que o thiagorsl disse que depois que uso um a string é formatada, e quando vou usar o outro ele pega a string já formatada.

Valeu pelas dicas!
:D ;) :D

Edição feita por: rfp, 23/02/2004, 15:11.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq