Нужно вставить условное сообщение в цикл foreach - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь вставить условное сообщение в свой foreach l oop. На самом деле у меня есть условное выражение, меняющее цвет, если значение больше 60. Я пытаюсь отобразить сообщение, если значение поля Oportunidad_Minutos больше 10000 ... Вот мой код:

<?php
include_once('./app/controllers/table.php');
$fieldquery = create_table();
echo "<div align='center'><h2>TRIAGE</div></h2>";
echo "";
$table ='<table class="table">';
$table .= '<tr>'
. '<th scope="col">Tipo ID</th>'
. '<th scope="col">  ID</th>'
. '<th scope="col">Paciente</th>'
. '<th scope="col">Fecha Ingreso</th>'
. '<th scope="col">Hora Ingreso</th>'
. '<th scope="col">Fecha Salida</th>'
. '<th scope="col">Diagnóstico</th>'
//. '<th scope="col">Dx Ingreso</th>'
. '<th scope="col">Tiempo de espera</th>'
. '</tr>';

foreach ($fieldquery as $key) {
    $color = ( $key['Oportunidad_Minutos'] >= 60 ) ? 'text-danger' : 'text-success';
    $table .= '<tr>'
    . '<td scope="row">' . $key['TIPO_ID'] . '</td>'
    . '<td scope="row">' . $key['ID'] . '</td>'
    . '<td scope="row">'. $key['NOMBRE'] . '</td>'
    . '<td scope="row">'. $key['FECHA_INGRESO'] . '</td>'
    . '<td scope="row">'. $key['HORA_INGRESO'] . '</td>'
    . '<td scope="row">'. $key['FECHA_SALIDA'] .'</td>'
    . '<td scope="row">'. $key['DESCRIPCION'] .'</td>'
    //. '<td scope="row">'. $key['DX_INGRESO'] .'</td>'
    . '<td scope="row"><span  class="'.$color.'">'. $key['Oportunidad_Minutos'] . '</span></td>'
    . '</tr>';
}
$table .=  '</table>';
$table .= "<script>var i = 0; setTimeout(()=>{location.reload();},100000);</script>"; 

print($table);

$message = ( $key['Oportunidad_Minutos'] >= 10000 ) ? 'message' : 'A la espera de Triage';
echo $message;

Спасибо.

1 Ответ

2 голосов
/ 06 марта 2020

Ваш текущий тест не работает, так как он всегда возвращает text-success. Чтобы исправить это, получите ключ и значение, затем выполните тест. Теперь вы можете повторить условную проверку для сообщения:

foreach ($fieldquery as $key => $val) {
    //echo $key['Oportunidad_Minutos']; // returns nothing
    //$color = ( $key['Oportunidad_Minutos'] >= 60 ) ? 'text-danger' : 'text-success';
    $color = (( $key = 'Oportunidad_Minutos') && ($val >= 60)) ? 'text-danger' : 'text-success';
    echo $color;
    $message = (( $key = 'Oportunidad_Minutos') && ($val >10000)) ? 'message' : '';
    echo $message;


}
...