Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde, estou com duvidas aqui em meu projeto, tenho um array de valores, que vem através de um resultado, qunado faço o while, para mostrar todos os registros, dentro dele faço um update, mas o problema que ele nao aplica na ultimo linha da tabela, tbm fiz por foreach continua a mesma coisa, o que pode ser isso???
while(!$sql->eof()){
$ccodiusua1 = $sql->result("CCODIUSUA1");
$sql11 = new Query ($bd);
$txt11 = "UPDATE HSSVACINA_GRIPE SET XML = 'S'
WHERE CCODIUSUA1 = '".$ccodiusua1."'";
$sql11->executeSQL($txt11);
$sql->next();
}
só não aplica na ultima linha.
em foreach:
$ccodiusua1[] = $sql->result("CCODIUSUA1");
foreach($ccodiusua1 as $a){
$sql11 = new Query ($bd);
$txt11 = "UPDATE HSSVACINA_GRIPE SET XML = 'S'
WHERE CCODIUSUA1 = '".$a."'";
$sql11->executeSQL($txt11);
}
$ccodiusua1[] vem certinho a quantidade.
Array
(
[0] => 000838-01
[1] => 000838-02
[2] => 000838-03
[3] => 001929-01
[4] => 000838-00
)Boa tarde, muito obrigado pela, ajuda, mas ele não aplica no banco, não faz o execute.
Bom, consegui fazer, mas ainda continua, não aplica na ultima linha! nao vai.....
o
$ccodiusua1[] = $sql->result("CCODIUSUA1");
for ($i = 0; $i < count($ccodiusua1); $i++) :
$sql11 = new Query($bd);
$txt11 = "UPDATE HSSVACINA_GRIPE SET XML = 'S'
WHERE CCODIUSUA1 = '" . $ccodiusua1[$i] . "'";
$sql11->executeSQL($txt11);
echo $txt11;
echo '<Br/>';
endfor;
da um echo no sql, e verifica se ta trazendo todos os registros
talvez o erro nao esteja ai, e sim na consultana consulta traz sim, ele vem em array, conforme tinha colocado ai.
Array
(
[0] => 000838-01
[1] => 000838-02
[2] => 000838-03
[3] => 001929-01
[4] => 000838-00
)
e ele nao aplica justamente ai, no ultimo!

É um tanto estranho não estar funcionando. Acredito que o problema seja algo relacionado ao retorno dos dados na função abaixo do que outro problema.
$ccodiusua1[] = $sql->result("CCODIUSUA1");
Faça um var_dump da variável acima e cole-nos aqui o resultado, sem nenhuam modificação:
var_dump($ccodiusua1);
Assim poderemos verificar a qualidade dos dados.
Também, se possível, nos mande os códigos das funções $sql->result e $sql->executeSQL.
for ($i = 0; $i < count($ccodiusua1); $i++) :
//$ccodiusua1[]
// vem certinho a quantidade.
//Array
//(
//)