我正在用php和html构建一个项目,我想让一个函数有一些if条件和另一个条件。
有三种情况,其中一种不起作用,我肯定这是真的,我试着回应它的表达式,这是真的,它返回的结果不像echo '';
我已经在有问题的其他I旁边发表了评论。
注意:所有其他条件都很好,并且可以正常工作。
代码:
<?php
require_once '../../router.php';
require_once '../../'.router('function', 'mini');
require_once '../../'.router('mysql', 'db');
function groups_checker()
{
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
{
if(isset($_GET['grade']))
{
global $db;
$get_groups_select_query = $db->query("SELECT * FROM `groups` WHERE g_grade = '".$_GET['grade']."' ORDER BY `g_max_num` DESC"); // Checking groups existence.
if(mysqli_num_rows($get_groups_select_query) > 0)
{
$get_groups_select_query_fetch = $get_groups_select_query->fetch_array(MYSQLI_ASSOC); // Fetching data after true existence.
?>
<h3>We've found <?= mysqli_num_rows($get_groups_select_query) > 1 ? mysqli_num_rows($get_groups_select_query).' groups ' : ' just a group ' ?> exist, take a look if appropriate. Or <a href="#">Create one?</a></h3>
<table width="100%" border="1" class="managing_brdr">
<tr class="titles_manage_group_main">
<td rowspan="2">Group Symbol</td>
<td rowspan="2">Group name</td>
<td rowspan="2">Group grade</td>
<td colspan="4">Appointments</td>
<td rowspan="2">Remaining places</td>
</tr>
<tr class="titles_manage_group_main">
<td>First day</td>
<td>Time</td>
<td>Second day</td>
<td>Time</td>
</tr>
<tr>
<td class="td_centering"><?= $get_groups_select_query_fetch['g_symbol']; ?></td>
<td><?= $get_groups_select_query_fetch['g_name']; ?></td>
<td class="td_centering"><?= $get_groups_select_query_fetch['g_grade']; ?></td>
<td class="td_centering"><?= $get_groups_select_query_fetch['g_fst_day']; ?></td>
<td class="td_centering"><?= dateConverter($get_groups_select_query_fetch['g_fst_d_time']); ?></td>
<td class="td_centering"><?= $get_groups_select_query_fetch['g_sec_day']; ?></td>
<td class="td_centering"><?= dateConverter($get_groups_select_query_fetch['g_sec_d_time']); ?></td>
<td class="td_centering">
<?php
if(empty($get_groups_select_query_fetch['g_max_num']))
{
?>
It's unlimited. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add</a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) > intval($get_groups_select_query_fetch['g_student_number']))
{
if(intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) == 1)
{
?>
Just 1 place left. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add<a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) == intval($get_groups_select_query_fetch['g_student_number'])) // **the issue here.**
{
?>
It's Full. <a href="">Make an exception</a>
<?php
}
else
{
echo intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) . ' places left. <a href="'.'../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'].'">Add<a>';
}
}
?>
</td>
</tr>
<table>
<?php
}
else
{
if(!empty($_GET['grade']))
{
alerts('error', 'We didn\'t find any group in '.strtolower($_GET['grade']).', <a href="#">Create one?</a>');
}
}
}
}
}
groups_checker();
?>
发布于 2018-06-21 05:05:12
问题elseif
在另一个矛盾的elseif
中。您必须:
if(empty($get_groups_select_query_fetch['g_max_num']))
{
?>
It's unlimited. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add</a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) > intval($get_groups_select_query_fetch['g_student_number']))
{
if(intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) == 1)
{
?>
Just 1 place left. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add<a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) == intval($get_groups_select_query_fetch['g_student_number'])) // **the issue here.**
{
?>
It's Full. <a href="">Make an exception</a>
<?php
}
else
{
echo intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) . ' places left. <a href="'.'../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'].'">Add<a>';
}
}
我想你想要的是:
if(empty($get_groups_select_query_fetch['g_max_num']))
{
?>
It's unlimited. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add</a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) == 1)
{
?>
Just 1 place left. <a href="<?= '../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'] ?>">Add<a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) == intval($get_groups_select_query_fetch['g_student_number'])) // **the issue here.**
{
?>
It's Full. <a href="">Make an exception</a>
<?php
}
elseif(intval($get_groups_select_query_fetch['g_max_num']) > intval($get_groups_select_query_fetch['g_student_number']))
{
echo intval($get_groups_select_query_fetch['g_max_num']) - intval($get_groups_select_query_fetch['g_student_number']) . ' places left. <a href="'.'../../'.router('sections', 'students').'?action=new_student&steps=second&grade='.$get_groups_select_query_fetch['g_grade'].'">Add<a>';
}
发布于 2018-06-21 05:01:38
在出现问题的地方使用(int)代替(intval)。
https://stackoverflow.com/questions/50956765
复制相似问题