Jump to content
Fórum Script Brasil
  • 0

Não consigo exibir dados


Rainer Rocha

Question

Olá, Tudo bom?

Preciso muito da ajuda de vocês, é o seguinte, estou com um Problema, meio dificio de se resolver ..

Esse codigo, pega 500 pessoas do banco de dados OK?

Agora que é a parte Complicada:

com a função:

for($i=0 ; $i < 100 ; $i++ ){

eu quero pegar 100 exato destes 500 usuarios que ainda não é meu amigo, certo?

Até que quando eu não tenho amigos pega 100 certinho, mais quando tenho mais amigos , vai diminuindo, tipo: tem momento que só aparece 10, 50, 30, 92 etc..

Eu quero pegar 100.

Tipo destes 100 primeiro, 1 deu true, então ia ficar 99 certo? ai teria que adicionar + 1 até que fique 100.

OK?

Não sei se vocês entenderam muito, mais olha o codigo ai, que talvez vocês tenha uma noção do que estou falando, e talvez possa me ajudar.

MUITO OBRIGADO DESDE JÁ!

<?php
session_start();
include("db.php");

// AQUI ESTOU PEGANDO 500 USUARIOS DA TABELA usuarios
$select = mysql_query("SELECT * FROM usuarios ORDER by rand()");

         while($reg = mysql_fetch_array($select)){
                  $nome[] = $reg['usuario'];
           }

echo '{"nome":"'.$_GET['user'].'","emails":["';

// DE 500 USUARIOS SELECIONADOS DO BANCO DE DADOS, AQUI PEGA APENAS 100 DO MESMO!
for($i=0; $i < 100; $i++ ){

// USANDO A FUNCAO cURL(); VERIFICA SE TODOS OS 100 USUARIOS, já É MEU AMIGO, EU SOU: $_GET['user'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '/verificar_amigo.php?user_a='.$nome[$i].'&user_b='.$_GET['user'].'');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$store = curl_exec ($ch);

preg_match("/<friends>(.*)<\/friends>/i", $store, $verifica);

// NO ARQUIVO /verificar_amigo.php EXIBE SE A PESSOA já É MEU AMIGO OU NÃO.
// SENDO true para A PESSOA QUE É MEU AMIGO e false SE AINDA NÃO É MEU AMIGO
if($verifica[1]=="false"){
// COMO AQUI SÓ VAI EXIBIR OS USUARIOS QUE DER false (QUE AINDA não É MEU AMIGO) OK?
echo $nome[$i].'","';
}

curl_close ($ch);

}
// E AQUI UMA ULTIMA PESSOA, SÓ PARA FECHAR O ...","penultima","ultima"]}
echo ''.$nome[$i].'"]}';


?>

Edited by Jonathan Queiroz
Remover caixa alta do título (Jonathan Queiroz)
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

tira este for, só vai demorar mais para executar.. faz direto no select

testa assim (só vai exibir 100)

$select = mysql_query("SELECT * FROM usuarios ORDER by rand() limit 0,100");

while($reg = mysql_fetch_array($select)){

$nome[] = $reg['usuario'];

//} //*** Removi para o continuar para todos os selecionados ****

echo '{"nome":"'.$_GET['user'].'","emails":["';

// DE 500 USUARIOS SELECIONADOS DO BANCO DE DADOS, AQUI PEGA APENAS 100 DO MESMO!

//for($i=0; $i < 100; $i++ ){//**** não necessita que o select já limitou a quantidade maxima de 100 ****

Link to comment
Share on other sites

  • 0

Não deu certo :S

Por exemplo:

Esse codigo verifica se essas 100 pessoas são meus amigos, se for a pagina "verificar_amigo.php" vai retornar a palavra false, e se já for vai retornar a palavra true .

Oque eu quero:

Se alguma destas pessoas exibir TRUE, que quer dizer que ela já é meu amigo. então está descartado, sendo de 100 - 1 = 99, ou se 90 já for meu amigo então é descartada e assim 100 - 90 = 10 eu quero assim: O que sobrar, por exemplo apenas 10 ainda não é meu amigo . então adiciona + 90, 10 + 90 = 100 .

Até que fique 100 pessoas que ainda não são meus amigos.

QUERO QUE FIQUE 100 CERTINHO .

tira este for, só vai demorar mais para executar.. faz direto no select

testa assim (só vai exibir 100)

$select = mysql_query("SELECT * FROM usuarios ORDER by rand() limit 0,100");

while($reg = mysql_fetch_array($select)){

$nome[] = $reg['usuario'];

//} //*** Removi para o continuar para todos os selecionados ****

echo '{"nome":"'.$_GET['user'].'","emails":["';

// DE 500 USUARIOS SELECIONADOS DO BANCO DE DADOS, AQUI PEGA APENAS 100 DO MESMO!

//for($i=0; $i < 100; $i++ ){//**** não necessita que o select já limitou a quantidade maxima de 100 ****

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...