O QUE ESTÁ ERRADO???

 Tópico anterior Próximo tópico Novo tópico

O QUE ESTÁ ERRADO???

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#479804 - 23/02/2018 16:09:51

RDPISA
CATANDUVA
Cadast. em:Junho/2017


Última edição em 23/02/2018 16:59:23 por RDPISA

  public PegaViews()
        {
            InitializeComponent();
        }


          MySqlConnection conn = new MySqlConnection("server=db4free.net;port=3307;user id=;Password=;database=")        
          DataTable dt = new DataTable();
                  
          List<int> Lista = new List<int>();
          string link = "";
          int contar = 0 ;

   private void PegaViews_Load(object sender, EventArgs e)
        {
            string version = System.Windows.Forms.Application.ProductVersion;
            this.Text = String.Format("Rdpisa Sistemas - PegaViews,  V.: {0}", version);        

            MySqlCommand conta = new MySqlCommand("Select count(*) from PegaViews", conn);

            MySqlDataAdapter da = new MySqlDataAdapter(conta);
            
            da.Fill(dt);
            da.Dispose();
          
                contar = dt.Rows.Count;
                for (int i = 0; i <= contar; i++)
                {
                    
                    Lista.Add(i);
                }
        }
  private void timer1_Tick(object sender, EventArgs e)
        {        

            Random gerador = new Random();
            int valor = gerador.Next(0, Lista.Count);
            
            int a = valor;
                  
            link = dt.Rows[a]["Link"].ToString();
              
            WebViews.Navigate(link);
}


porque que aqui====>
                contar = dt.Rows.Count;
                for (int i = 0; i <= contar; i++)
                {
                    
                    Lista.Add(i);
                }
Só ta contando 2 sendo que no banco tem 6 cadastros?


Rogério D Pinto


#479807 - 23/02/2018 16:19:13

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Minha nossa... que confusão isso. O que você está querendo fazer? Qual o objetivo?

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#479811 - 23/02/2018 16:56:02

RDPISA
CATANDUVA
Cadast. em:Junho/2017


Última edição em 23/02/2018 17:00:38 por RDPISA

Citação:
:
Minha nossa... que confusão isso. O que você está querendo fazer? Qual o objetivo?

kkkkk
deixa tentar explicar
é um sistema para divulgar sites, no banco de dados estão os links ai  criei uma lista para armazenar o total de links que tem no banco e depois fiz uma variável (valor) random para gerar um numero atraves da lista.este numero sera correspondente o link que esta no banco.que vai ser mostrado no WebBrowser
o timer a cada 15 segundos faz a função de gerar o numero que ira buscar o link no banco . a cada 15 segundos  o WebBrowser mostra um site

mas a lista só ta buscando 2 primeiros links no banco sendo que tem 6.


Rogério D Pinto


Resposta escolhida #479814 - 23/02/2018 17:02:57

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Basicamente: Você quer pegar randomicamente um dos links que está na tabela "PegaViews", isso?

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#479815 - 23/02/2018 17:03:40

RDPISA
CATANDUVA
Cadast. em:Junho/2017


Última edição em 23/02/2018 17:04:08 por RDPISA

Citação:
:
Basicamente: Você quer pegar randomicamente um dos links que está na tabela "PegaViews", isso?

simm
eu consegui mas a lista só ta pegando os 2 primeiros


Rogério D Pinto


#479817 - 23/02/2018 17:12:08

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Use um método especializado para isso:

public string GetRandomSite()
{
    List<string> sites = new List<string>();
    using (MySqlConnection conn = new MySqlConnection("server=db4free.net;port=3307;user id=;Password=;database="))
    {
        conn.Open();
        using (MySqlCommand cmd = new MySqlCommand("Select * from PegaViews", conn))
        {
            using (MySqlDataReader = cmd.ExecuteReader())
            {
                while (dr.Read())
                {
                    sites.Add(dr.GetString(dr.GetOrdinal("Link"));
                }
            }
        }
    }
    Random gerador = new Random();
    int valor = gerador.Next(0, sites.Count);
    return sites.ToArray()[valor];
}


Aí consuma esse método no seu timer:

WebViews.Navigate(GetRandomSite());


_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#479818 - 23/02/2018 17:13:07

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Mas por favor, tente entender o que fiz, leia e rode o código passo à passo, verificando tudo o que está acontecendo, não simplesmente copie->cole->rode->volte aqui e diga "está dando erro"

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#479819 - 23/02/2018 17:25:28

RDPISA
CATANDUVA
Cadast. em:Junho/2017


Citação:
:
Use um método especializado para isso:

public string GetRandomSite()
{
    List<string> sites = new List<string>();
    using (MySqlConnection conn = new MySqlConnection("server=db4free.net;port=3307;user id=;Password=;database="))
    {
        conn.Open();
        using (MySqlCommand cmd = new MySqlCommand("Select * from PegaViews", conn))
        {
            using (MySqlDataReader = cmd.ExecuteReader())
            {
                while (dr.Read())
                {
                    sites.Add(dr.GetString(dr.GetOrdinal("Link"));
                }
            }
        }
    }
    Random gerador = new Random();
    int valor = gerador.Next(0, sites.Count);
    return sites.ToArray()[valor];
}


Aí consuma esse método no seu timer:

WebViews.Navigate(GetRandomSite());



Rogério D Pinto


 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por RDPISA em 23/02/2018 17:25:45