#php #mysql
#php #mysql
Вопрос:
Как бы мне заставить некоторый текст отображаться, только если определенные строки равны 1. У меня есть таблица, и в ней есть поля, помеченные ‘SEC1’, ‘SEC2’ и ‘SEC3’. Я могу заставить его отображать текст только для одной, равной единице, но я хочу, чтобы что-то было, если поля выше должны быть равны единице, чтобы текст отображался.
Приветствуется любая помощь
Это то, что я использую, чтобы заставить его работать для one:
$Completed = ($row["SEC1"] == 1) ? "Completed!" : $row[""]; echo $Completed;
Возможно ли изменить это, чтобы заставить его работать? Я был бы не против, если бы их сложили вместе, чтобы они были равны 3 вместо единицы.
Комментарии:
1. Вы пропустили раздел «Операторы» в своем руководстве?
Ответ №1:
Если вы имеете в виду, что любое из трех полей независимо равно «1», то это сделает это :
if (($row["SEC1"] == 1)||($row["SEC2"] == 1)||($row["SEC3"] == 1)){
//Do what you what
}
Или если вы имеете в виду, что все три из них вместе взятые равны «3», тогда :
if (($row["SEC1"] $row["SEC2"] $row["SEC3"]) == 3){
//Do what you what
}
Комментарии:
1. Спасибо! Я ученик средней школы и все еще пытаюсь всему этому научиться.
Ответ №2:
Зачем использовать тернарный оператор? Используйте оператор ‘and’ для построения более сложных условных выражений:
$Completed = "";
if (($row["SEC1"] == 1) amp;amp; ($row["SEC2"] == 1) amp;amp; ($row["SEC3"] == 1)) {
$Completed = "Completed!";
}
echo $Completed;
Есть много разных способов, которыми вы могли бы решить эту проблему
if ($row["SEC1"] $row["SEC2"] $row["SEC3"] == 3){
...
}