Ir para conteúdo

Arquivado

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

Anderson Hito

Filtro de array vindo do banco

Recommended Posts

serão sempre seis valores entre as #

As quantidades irão variar sempre.

A unica coisa que será igual é a quantidade de valor por linha exemplo:

 

Se a primeira linha tiver 10 valores as próximas linhas terão 10 valores por assim em diante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

As quantidades irão variar sempre.

A unica coisa que será igual é a quantidade de valor por linha exemplo:

 

Se a primeira linha tiver 10 valores as próximas linhas terão 10 valores por assim em diante.

Outro exemplo:

 

id_tabela | Valores

54 | 4.60# 6.00# 10.50# 1.50# 10.00# 2.68# 18.00# 56.00# 34.89# 6.67# 6.78# 14.89# 64.87

43 | 2.56# 5.65# 11.50# 3.50# 15.00# 6.68# 16.00# 60.00# 44.89# 5.67# 7.78# 10.89# 54.87

34 | 1.65# 4.00# 13.30# 4.50# 13.00# 7.68# 19.00# 70.00# 64.89# 8.67# 9.78# 11.89# 24.87

Resultado que deve mostrar;

1.65- 4.00- 10.50- 1.50- 10.00- 2.68- 16.00- 56.00- 34.89- 5.67- 6.78- 10.89- 24.87

Entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites
$listaqtd = $escrever['proposta_valorunitario'];
$resultadoqtdteste = explode("#",$listaqtd);
$total_itens = count($resultadoqtdteste);
foreach($resultadoqtdteste as $ch=>$vl){
   $array[$i][$ch] = $vl;
}
$i++;
}

for($c = 0; $c <= $resultadoqtdteste; $c++){
   foreach($array as $ch=>$valor){
     $resultado[$c][$ch] = $valor; 
   }
}

echo "<pre>";
var_dump($resultado);
echo "</pre>";

Vc pode publicar esse codigo para gente ver o resultado ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
$listaqtd = $escrever['proposta_valorunitario'];
$resultadoqtdteste = explode("#",$listaqtd);
$total_itens = count($resultadoqtdteste);
foreach($resultadoqtdteste as $ch=>$vl){
   $array[$i][$ch] = $vl;
}
$i++;
}

for($c = 0; $c <= $resultadoqtdteste; $c++){
   foreach($array as $ch=>$valor){
     $resultado[$c][$ch] = $valor; 
   }
}

echo "<pre>";
var_dump($resultado);
echo "</pre>";

você pode publicar esse codigo para gente ver o resultado ?

 

Erro Fatal.

http://servidorinformatica.com.br/compras/login/teste.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ih... eu errei aqui...

$listaqtd = $escrever['proposta_valorunitario'];
$resultadoqtdteste = explode("#",$listaqtd);
$total_itens = count($resultadoqtdteste);
foreach($resultadoqtdteste as $ch=>$vl){
   $array[$i][$ch] = $vl;
}
$i++;
}

for($c = 0; $c <= $total_itens; $c++){
   foreach($array as $ch=>$valor){
     $resultado[$c][$ch] = $valor; 
   }
}

echo "<pre>";
var_dump($resultado);
echo "</pre>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Ih... eu errei aqui...

$listaqtd = $escrever['proposta_valorunitario'];
$resultadoqtdteste = explode("#",$listaqtd);
$total_itens = count($resultadoqtdteste);
foreach($resultadoqtdteste as $ch=>$vl){
   $array[$i][$ch] = $vl;
}
$i++;
}

for($c = 0; $c <= $total_itens; $c++){
   foreach($array as $ch=>$valor){
     $resultado[$c][$ch] = $valor; 
   }
}

echo "<pre>";
var_dump($resultado);
echo "</pre>";

Coloquei lá:

http://servidorinformatica.com.br/compras/login/teste.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha...

 

 

To na luta contigo Cara...

    $resultadoqtdteste = explode("#",$listaqtd);
    $total_valores = count($resultadoqtdteste);
     
    foreach($resultadoqtdteste as $ch=>$vl){
       $array[$i][$ch] = $vl;
    }
    $i++;

}

$v = 0;
for($c = 1; $c <= $total_valores; $c++){
   foreach($array as $ch=>$valor){ 
     $resultado[$c][$ch] = $valor[$v];
   }
   $v++;

   sort($resultado[$c]);
}

echo "<pre>";
var_dump($resultado);
echo "</pre>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Considerando que cada linha tenha 6 valores separados por # e que temos 6 linhas então façamos o seguinte:

 

 

<?php
$l1 = array();
$l2 = array();
$l3 = array();
$l4 = array();
$l5 = array();
$l6 = array();
while(...
{
$listaqtd = $escrever['proposta_valorunitario'];
$valores = explode("#",$listaqtd);/*Não sei se tem espaço após o sinal de #*/
array_push($l1,float($valores[0]));
array_push($l2,float($valores[1]));
array_push($l3,float($valores[2]));
array_push($l4,float($valores[3]));
array_push($l5,float($valores[4]));
array_push($l6,float($valores[5]));
}
/*Neste ponto temos as 06 matrizes como os 06 valores que converti para float para cada posição na coluna*/
sort($l1);
sort($l2);
sort($l3);
sort($l4);
sort($l5);
sort($l6);
 
echo "Menor valor coluna 1 ".$l1[0]."<br/>";
echo "Menor valor coluna 2 ".$l2[0]."<br/>";
echo "Menor valor coluna 3 ".$l3[0]."<br/>";
echo "Menor valor coluna 4 ".$l4[0]."<br/>";
echo "Menor valor coluna 5 ".$l5[0]."<br/>";
echo "Menor valor coluna 6 ".$l6[0]."<br/>";
?>

 

Favor testar e postar o resultado, obs: o códigoacima está incompleto!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Considerando que cada linha tenha 6 valores separados por # e que temos 6 linhas então façamos o seguinte:

<?php
$l1 = array();
$l2 = array();
$l3 = array();
$l4 = array();
$l5 = array();
$l6 = array();
while(...
{
$listaqtd = $escrever['proposta_valorunitario'];
$valores = explode("#",$listaqtd);/*Não sei se tem espaço após o sinal de #*/
array_push($l1,float($valores[0]));
array_push($l2,float($valores[1]));
array_push($l3,float($valores[2]));
array_push($l4,float($valores[3]));
array_push($l5,float($valores[4]));
array_push($l6,float($valores[5]));
}
/*Neste ponto temos as 06 matrizes como os 06 valores que converti para float para cada posição na coluna*/
sort($l1);
sort($l2);
sort($l3);
sort($l4);
sort($l5);
sort($l6);
 
echo "Menor valor coluna 1 ".$l1[0]."<br/>";
echo "Menor valor coluna 2 ".$l2[0]."<br/>";
echo "Menor valor coluna 3 ".$l3[0]."<br/>";
echo "Menor valor coluna 4 ".$l4[0]."<br/>";
echo "Menor valor coluna 5 ".$l5[0]."<br/>";
echo "Menor valor coluna 6 ".$l6[0]."<br/>";
?>

Favor testar e postar o resultado, obs: o códigoacima está incompleto!

Boa tarde:

No caso de exemplo esta aparecendo 6 linhas, mas, a quantidade de valores e linhas muda conforme cada cadastro

A unica coisa que se repete é a quantidade de valores por linha.

Compartilhar este post


Link para o post
Compartilhar em outros sites
   $resultadoqtdteste = explode("#",$listaqtd);
    $total_valores = count($resultadoqtdteste);
     
    foreach($resultadoqtdteste as $ch=>$vl){
       $array[$i][$ch] = $vl;
    }
    $i++;

}

$v = 0;
for($c = 1; $c <= $total_valores; $c++){
   foreach($array as $ch=>$valor){ 
     $resultado[$c][$ch] = $valor[$v];
   }
   $v++;
   
   sort($resultado[$c]);
}


foreach($resultado as $final){
    echo $final[0]." - ";
}

Agora é correr pro abraço.....

Compartilhar este post


Link para o post
Compartilhar em outros sites
   $resultadoqtdteste = explode("#",$listaqtd);
    $total_valores = count($resultadoqtdteste);
     
    foreach($resultadoqtdteste as $ch=>$vl){
       $array[$i][$ch] = $vl;
    }
    $i++;

}

$v = 0;
for($c = 1; $c <= $total_valores; $c++){
   foreach($array as $ch=>$valor){ 
     $resultado[$c][$ch] = $valor[$v];
   }
   $v++;
   
   sort($resultado[$c]);
}


foreach($resultado as $final){
    echo $final[0]." - ";
}

Agora é correr pro abraço.....

 

Heeeee agora sim certinho ja testei com outro ID e outras listas. É isso mesmo, muito obrigado pela ajuda e pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Boa tarde, pessoal.
      Espero que todos estejam bem.
       
      Seguinte:
      Tenho a seguinte consulta:
       
      $usuarios= "SELECT * FROM usuarios";
      $query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
      $usuario = mysqli_fetch_array($query);
       
      Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
       
      $nomes = array("Rafael", "João", "Maria", "Pedro", "Patricia", "Camila");
       
      Agradeço desde já.
      Abs
       
       
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse resultado do array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
    • Por clovis.sardinha
      Bom dia.
      Meu problema é o seguinte:
      Estou fazendo uma tabela e preciso mostrar o usuário e várias cidades que pertencem a este usuário.
      O resultado do array é o seguinte:

      Quando passo para a tabela os valores de cidade se repetem para o mesmo usuário até o final e retorna fazendo o mesmo para o próximo usuário. 
      Veja abaixo

       
      Meu código para a tabela é a seguinte:
      <tr> <td align="left"><?php echo $usuario['nome'] ?></td> <td align="left"><?php echo $usuario['nome_orgao'] ?></td> <td align="left"><?php echo $usuario['nome_funcao'] ?></td> <?php foreach($destinos as $key=>$destino):?> <?php $key=0;?> <td align="left"> <?php foreach($destino as $chave=> &$cidade): ?> <?php echo $cidade['cid_nome']."-";?> <?php endforeach;?> </td> <?php $key+=$key; ?> <?php endforeach;?> <td><?php echo date('d/m/Y', strtotime( $usuario['created_at'])) ?></td> <td align="left"><a href="<?php echo base_url('UserAdmin/Usuario/getUsuarioById')."/".$usuario['id_user'] ?>">DETALHES</a></td> </tr> <?php endforeach ?> Onde estou errando? O que tenho de fazer para percorrer este array de modo a aparecer apenas as cidades pertencentes a cada usuário?

    • Por Giovanird
      Listo um array pelo foreach e preciso pegar os valores fora do foreach.
      Abaixo tenho o exemplo do foreach com os valores
       
      <?php foreach($turma $rsturma): if(($rsturma['id'] == 1){ echo $rsturma['nome']."<br>"; echo $rsturma['idade']."<br><br>"; } endforeach; //Dentro do foreach me retorna: Luis 13 Maria 12 Carlos 12 Matheus 14 Andréa 12 //Preciso pegar a posição e o valor desta lista $posicao1 = 1; $nome1 = Luis; $posicao2 = 2; $nome2 = Maria; $posicao3 = 3; $nome3 = Carlos; $posicao4 = 4; $nome4 = Matheus; $posicao5 = 5; $nome5 = Andréa;  
×

Informação importante

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