2016-12-16 1 views
0

У меня есть таблицы (api_field)
(api_field)
и таблицу (cs_question)
(cs_question).Отображение данных контура на основе других петель Laravel данных

Я только отображать данные из столбца поля в таблице api_field в некоторых условиях с помощью этого запроса на мой контроллер:

$fields = DB::table('api_field')->join('api_criteria', 'api_criteria.fieldId', '=', 'api_field.id') 
             ->join('api_report', 'api_report.criteriaId', '=', 'api_criteria.id') 
             ->join('borrower', 'borrower.id', '=', 'api_report.borrowerId') 
             ->where('borrower.user_id', $id) 
             ->get(); 

Таким образом, чтобы отображать данные поля в лезвии, я использую этот код:

@foreach ($fields as $field) 
    <td>{{$field->field}}</td> 
@endforeach 

А теперь, я хочу, чтобы отобразить данные из столбца вопроса в таблице cs_questio п, основанный на question_id (question_id это составляет поле столбца в таблице api_field). Итак, я использую этот код PHP в моем клинке:

<?php 

$questionr = DB::table('cs_question')->join('api_field', 'api_field.field', '=', 'cs_question.question_id') 
           ->where('cs_question.question_id', $fields->field) 
           ->get(); 

foreach ($questionr as $questionrs) 
     if($questionrs->question != null){ 
      $questionnya = $questionrs->question; 
     } else { 
      $questionnya = 'empty question'; 
     }         
?> 

но есть некоторые данные в столбце поля, который не существует в колонке question_id. поэтому, я показываю данные в лезвии следующим образом: {{$ questionnya}}. И теперь шоу такое же (предположительно blaed & urdob не было вопросов) result.

Я хотел, чтобы не было question_id таких blaed & urdob, результат "пустого вопроса", а не "Нам Иб Kandung" больше, как сейчас. Надеюсь, кто-нибудь может мне помочь. Заранее спасибо

ответ

0

В двух словах вы хотите отобразить «пустой вопрос» вместо этого «Nama Ibu Kandung».

Я думаю, что решение может заключаться в том, что вопрос не пустой, а пустой.

if($questionrs->question != null && !empty($questionrs->question) && $questionrs->question !== ''){ 
    $questionnya = $questionrs->question; 
} else { 
    $questionnya = 'empty question'; 
} 
+0

Спасибо за ваш ответ, Я стараюсь код .. но он по-прежнему дают тот же результат – arbong

+0

Во всяком случае, откуда текст «Нама Ибу Кандунг» происходит? В общем, он ничего не должен показывать. Я думаю, что вам нужно предоставить больше кода. –

+0

Нама Ибу Кандунг должен быть вопросом qsl_0002. и urdob & blaed пуст в столбце question_id в таблице cs_question – arbong

0

Я нашел мой ответ, жёстко в лезвии как это:

<?php 
     if (strpos($fields->field, 'qsl_') !== false){ 
      $question = DB::table('cs_question')->join('api_field', 'api_field.field', '=', 'cs_question.question_id') 
         ->where('cs_question.question_id', $fields->field)->get(); 
      foreach ($question as $questions) 
       $questionnya = $questions->question; 
     }else{ 
       $questionnya = 'empty question'; 
     } 
?>