1
私はPHPの初心者です。foreachとSQL結果のセリフで3つの異なる配列を設定しようとしています。コードは実際に動作しますが、私は最後の結果だけを印刷し続けます。どういうわけか私は配列をインクリメントするのではなく、何度も繰り返し書きます。問題は、それらを増分する方法です。どんな助けも本当に感謝しています!外部foreachループ配列にSQL結果を代入する
$online = array();//armazena online
$ocupado = array();//armazena ocupado
$offline = array();//armazena offline
$atendentes = mysql_query("SELECT nome FROM atendentes ORDER BY nome")or die(mysql_error());
while ($row = mysql_fetch_assoc($atendentes)) {/// Pegar atendentes
$atendentedb = array($row["nome"]);
}
foreach ($atendentedb as $atendente) {// LOOP SELECAO DAS ATENDENTES; VERIFICAR CADA UMA
$names = modWhosonlineCustom::getOnlineUserNames();//pega o nome de quem esta online agora
foreach ($names as $name){//DA UM LOOP, EM QUEM ESTA ONLINE E MARCA
//*****************************'ACENDER' se a atendente esta online
$att = $name->username;
$att = strtolower($att);
if ($atendente == $att){//esta atendente esta online
$att_online = 'yes';
}//esta atendente esta online
if ($atendente != $att){//esta nao atendente esta online
$att_online = 'no';
}//esta atendente nao esta online
//******************************************************************
}//loop foreach quem esta online
if ($att_online == 'yes'){//se atendente online
$status = mysql_query("SELECT status FROM atendentes WHERE nome = '$atendente'")or die(mysql_error());
while ($row = mysql_fetch_assoc($status)) {
$statusdb = $row["status"];
}
//**************************** VERIFICA O STATUS
if ($statusdb == 'disponivel'){
//*******************************
$descricao = mysql_query("SELECT hp_online FROM atendentes WHERE nome = '$atendente'")or die(mysql_error());
while ($row = mysql_fetch_assoc($descricao)) {
$online[] = $row['hp_online'];
}
}// se o status é disponivel
//********************************* OCUPADOS
if ($statusdb == 'ocupado'){
$descricao = mysql_query("SELECT hp_busy FROM atendentes WHERE nome = '$atendente'")or die(mysql_error());
while ($row = mysql_fetch_assoc($descricao)) {
$ocupado[] = $row['hp_busy'];
}
}// se o status é ocupado
}//atendente = yes
if ($att_online != 'yes'){//se estiver offline
$descricao = mysql_query("SELECT hp_offline, horario FROM atendentes WHERE nome = '$atendente'")or die(mysql_error());
while ($row = mysql_fetch_assoc($descricao)) {
$offline[] = $row['hp_offline'];
$offline[] = $row['horario'];
}
}//se att nao é online
}// loop foreach
ありがとうマイケル、それは問題を解決します:))) – Adry