我想要做的是当semester
等于" 1"它将打印" st学期S.Y" 如果semester
等于" 2"它将打印"和学期S.Y" 。但问题是我得到了Parse error: syntax error, unexpected 'if' (T_IF)
的错误。有人可以帮我解决这个问题吗?
这是我的代码。
if(isset($_POST['loadsem'])){
$stud = $_POST['stud'];
$output = '';
$sql = "SELECT DISTINCT sch_year,semester FROM grades WHERE stud_no ='$stud'";
$result = mysqli_query($con,$sql);
$output .= '
<div class="table-responsive">
<table class="table table-bordered">
<tr>
<th>Semesters Attended</th>
</tr>';
while($row = mysqli_fetch_array($result))
{
$sem = $row['semester'];
$year = $row['sch_year'];
$output .= '<tr>
<td><a href="">'.
if($sem == "1"){
$row['semester']. "st Semester S.Y" .$row['sch_year']
}
else{
$row['semester']. "nd Semester S.Y" .$row['sch_year']
}
.'</a></td>
</tr>
';
}
$output .= '</table>
</div>';
echo $output;
}
答案 0 :(得分:3)
您无法连接if
语句。
$output .= '<tr>
<td><a href="">';
if($sem == "1") {
$output .= $row['semester']. "st Semester S.Y" .$row['sch_year'];
} else {
$output .= $row['semester']. "nd Semester S.Y" .$row['sch_year'];
}
$output .='</a></td>
</tr>';
如果您仍想连接,则需要使用三元运算符:(condition) ? true : false
。
答案 1 :(得分:2)
你不能做一个函数,如果声明所以总是当你可以做PHP代码结束你的打印或可变量。并添加新代码
例子1:
echo 'hello';
if($world == true){
echo 'foo';
}else{
echo 'bar;'
}
例2:
$i = 'hello';
if($world == true){
$i .='foo';
}else{
$i .='bar;'
}
以两个例子结束。
。=表示添加,以便您知道
答案 2 :(得分:1)
你不能使用if else,但你可以使用?:in()。这是一个简单的demo
如果没有改变你
if($sem == "1"){
$row['semester']. "st Semester S.Y" .$row['sch_year']
}
else{
$row['semester']. "nd Semester S.Y" .$row['sch_year']
}
到:(?:)
($sem == "1" ? $row['semester']. "st Semester S.Y" .$row['sch_year'] : $row['semester']. "nd Semester S.Y" .$row['sch_year'])