PHP中有很多IF语句?

PHP中有很多IF语句?,php,Php,我们有两种类型的用户,每种类型在打开同一页面时都有自己的页面组件。 当我测试时,它给出了第一个编译的if语句,尽管它不是针对相同的用户类型I;我习惯于测试。我一直在努力,但我不知道问题出在哪里。 我将这些组件放在单独的页面中,但我发现最好将所有细节放在一起,但我被卡住了 <?php if(($userType[0] == 1)) { if ($singleuseraddsnum != 0 ) {

我们有两种类型的用户,每种类型在打开同一页面时都有自己的页面组件。 当我测试时,它给出了第一个编译的if语句,尽管它不是针对相同的用户类型I;我习惯于测试。我一直在努力,但我不知道问题出在哪里。 我将这些组件放在单独的页面中,但我发现最好将所有细节放在一起,但我被卡住了

    <?php
           if(($userType[0] == 1))
            {
             if ($singleuseraddsnum != 0 ) {
               echo ' <table class="table table-hover">
                      <thead class=" text-primary">
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th>Details</th>
                        <th>Action</th>
                      </thead>
                      <tbody>';
                        foreach($singleuseradds as $addsdata)
                        {
                          $adv_id = $addsdata['id'];

                          ?>  
                          }
                          
                          <tr>
                          <td><?= $addsdata['id']; ?></td>
                          <td>Request</td>
                          <td><?= $addsdata['pageurl']; ?></td>
                          <td class="text-info"><a href="adDetails.php?adv_id=<?= $adv_id; ?>"><button class="btn btn-primary">Details </button></a></td>
                          <td class="text-danger"><a href="useracceptadd.php?adv_id=<?= $adv_id ?>"><button class="btn btn-success"> Accept</button></a></td>
                          
                        </tr>

                        else if ($acceptedAddsNum != 0 ){
                        echo ' <table class="table table-hover">
                      <thead class=" text-primary">
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th>Details</th>
                      </thead>
                      <tbody>';
                        foreach($acceptedAddsData as $acceptedAddData)
                        {
                          $adv_id = $acceptedAddData['id'];                          
                          $hostlinksNum = $advertise->getAdsLinksForHostNum($conn,$user_id,$adv_id);
                          $hostlinks = $advertise->getAdsLinksForHost($conn,$user_id,$adv_id);
                          foreach($hostlinks as $links){
                            $hostlink = $links['link'];
                          }                      
                          <tr>
                          <td><?= $acceptedAddData['id']; ?></td>
                          <td>Accepted</td>
                          <td><?= $acceptedAddData['pagedescription'];?></td>
                          <td class="text-primary"><a href="adDetails.php?adv_id=<?= $adv_id ?>" class="text-info"><button class="btn btn-primary">More</button></a></td>
                        </tr>
                            }
}
                    if (($userType[0] == 2)) {
                        if ($currentaddsnum !=0) {
                      echo '<table id="users">
                      <thead>
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th class="text-primary">Details</th>
                      </thead>
                      <tbody>'; 
                          foreach($currentadds as $currentadd){
                            $add_id = $currentadd['id'];
                            $host_id = $user_id;
                          ?>
                          <tr>
                          <td><?= $currentadd['id']; ?></td>
                          <td style="color: #08e465">Started</td>
                          <td><?= $currentadd['pagename']; ?></td>
                          <td class="text-primary"><a href="adDetails.php?adv_id=<?= $adv_id ?>" class="text-info"><button class="btn btn-primary">More</button></a></td>
                        }                     
                        if($row !=0){
                      echo '<table class="table table-hover">
                      <thead class=" text-primary">
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th class="text-primary">Details</th>
                      </thead>
                      <tbody>';
                          foreach($userdata as $adddata){
                            $adv_id= $adddata['id'];
                          ?>
                          <tr>
                          <td><?= $adddata['id']; ?></td>
                          <td>Pending</td>
                          <td><?= $adddata['pageurl']; ?></td>
                          <td class="text-primary"><a href="adDetails.php?adv_id=<?= $adv_id ?>" class="text-info"><button class="btn btn-primary">More</button></a></td>
                                                  
                            }
                        if($addhistorynum !=0){
                      echo '<table class="table table-hover">
                      <thead class=" text-primary">
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th class="text-primary">Details</th>
                      </thead>
                      <tbody>'; 
                          foreach($addhistory as $addhistorysingle){
                            $add_id = $addhistorysingle['id'];
                            $host_id = $user_id;
                          ?>
                          <tr>
                          <td><?= $addhistorysingle['id']; ?></td>  
                          <td>Finished</td>
                          <td><?= $addhistorysingle['pagename']; ?></td>
                          <td class="text-primary"><a href="adDetails.php?adv_id=<?= $adv_id ?>" class="text-info"><button class="btn btn-primary">More</button></a></td>
                          
                            }                  
                    }
          
                         
   <?php  
            
                }
                        }


           }
                            ?>

正如已经有人建议的,首先去掉意大利面代码。它可以做得更好,也就是说,通过使用一些模板引擎,不管怎样,您的示例可以简化,下面的代码也可以注意,可能仍然存在一些错误,例如缺少,但是,您需要自己找出它们,因为我没有要测试的输入数据。有很多工作要做

<?php
if (($userType[0] == 1)) {
    if ($singleuseraddsnum != 0) {
        echo ' <table class="table table-hover">
                      <thead class=" text-primary">
                        <th>Ad ID</th>
                        <th>Status</th>
                        <th>Date</th>
                        <th>Details</th>
                        <th>Action</th>
                      </thead>
                      <tbody>';

        foreach ($singleuseradds as $addsdata) {
            $adv_id = $addsdata['id'];


            echo "<tr>
                <td>{$addsdata['id']}</td>
                <td>Request</td>
                <td>{$addsdata['pageurl']}</td>
                <td class='text-info'><a href='adDetails.php?adv_id={$adv_id}'><button class='btn btn-primary'>Details </button></a></td>
                <td class='text-danger'><a href='useracceptadd.php?adv_id={$adv_id}'><button class='btn btn-success'> Accept</button></a></td>

            </tr>";
        }
    } else
        $acceptedAddsNum = 1;
    if ($acceptedAddsNum != 0) {
        echo '<table class="table table-hover">
                      <thead class=" text-primary">
                      <th>Ad ID</th>
                      <th>Status</th>
                      <th>Date</th>
                      <th>Details</th>
                      </thead>
                      <tbody>';

        foreach ($acceptedAddsData as $acceptedAddData) {
            $adv_id = $acceptedAddData['id'];
            /** @noinspection PhpUndefinedVariableInspection */
            $hostlinksNum = $advertise->getAdsLinksForHostNum($conn, $user_id, $adv_id);
            $hostlinks = $advertise->getAdsLinksForHost($conn, $user_id, $adv_id);
            foreach ($hostlinks as $links) {
                $hostlink = $links['link'];
            }

            echo "<tr>
                        <td>{$acceptedAddData['id']}</td>
                        <td>Accepted</td>
                        <td>{$acceptedAddData['pagedescription']}</td>
                        <td class='text-primary'><a href='adDetails.php?adv_id={$adv_id}' class='text-info'>
                                <button class='btn btn-primary'>More</button>
                            </a></td>
                    </tr>";

        }
    }
    if (($userType[0] == 2)) {

        if ($currentaddsnum != 0) {
            echo '<table id="users">
                        <thead>
                            <th>Ad ID</th>
                            <th>Status</th>
                            <th>Date</th>
                            <th class="text-primary">Details</th>
                        </thead>
                    <tbody>';

            foreach ($currentadds as $currentadd) {
                $add_id = $currentadd['id'];
                $host_id = $user_id;

                echo "<tr>
                <td>{$currentadd['id']}</td>
                <td style='color: #08e465'>Started</td>
                <td>{$currentadd['pagename']}</td>
                <td class='text-primary'><a href='adDetails.php?adv_id={$adv_id}' class='text-info'>
                        <button class='btn btn-primary'>More</button>
                    </a></td>";

            }

            if ($row != 0) {
                echo '<table class="table table-hover">
                        <thead class=" text-primary">
                            <th>Ad ID</th>
                            <th>Status</th>
                            <th>Date</th>
                            <th class="text-primary">Details</th>
                        </thead>
                        <tbody>';

                foreach ($userdata as $adddata) {
                    $adv_id = $adddata['id'];

                    echo "<tr>
                    <td>{$adddata['id']}</td>
                    <td>Pending</td>
                    <td>{$adddata['pageurl']}</td>
                    <td class='text-primary'><a href='adDetails.php?adv_id={$adv_id}' class='text-info'>
                            <button class='btn btn-primary'>More</button>
                        </a></td>";

                }

                if ($addhistorynum != 0) {
                    echo '<table class="table table-hover">
                            <thead class=" text-primary">
                                <th>Ad ID</th>
                                <th>Status</th>
                                <th>Date</th>
                                <th class="text-primary">Details</th>
                            </thead>
                            <tbody>';

                    foreach ($addhistory as $addhistorysingle) {
                        $add_id = $addhistorysingle['id'];
                        $host_id = $user_id;

                        echo "<tr>
                                <td>{$addhistorysingle['id']}</td>
                                <td>Finished</td>
                                <td>{$addhistorysingle['pagename']}</td>
                                <td class='text-primary'><a href='adDetails.php?adv_id={$adv_id}' class='text-info'>
                                        <button class='btn btn-primary'>More</button>
                                    </a></td>";

                    }
                }
            }
        }
    }
}
                  

在该脚本中加载错误,并在普通HTML代码中使用开头标记和括号。尽量简化您的代码,否则它将永远无法工作。