проблемы эха в PHP

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

хотя некоторые проблемы были решены там благодаря @Shinkou, в моей программе все еще есть ошибки. Я попытался выяснить, что вызвало эту проблему, но я не нашел удачи в их решении.


теперь позвольте мне рассказать вам, что моя программа делает. У меня есть 2 администратора с различными функциями. администратор загружает файл и регистрирует новую информацию о компании и сотрудника. Он также несет ответственность за удаление не утвержденных или ожидающих файлов. (НИКАКИЕ ПРОБЛЕМЫ ЗДЕСЬ ^ _ ^), второй – суперадмин . его целью является просмотр загруженных файлов и утверждение или отклонение загруженного файла. (КАК ВЫ ВИДИТЕ, ЕГО ВСЕ О ФАЙЛАХ, ЗАПОЛНЕННЫХ АДМИНИСТРАТОРОМ), другим пользователем является учетная запись компании. Эта учетная запись создается, когда администратор регистрирует новую компанию. Его цель – просто посмотреть, какой файл был одобрен или отклонен суперадмин .

моя проблема – все в суперадминизме и другом user.but, давайте поговорим о суперадминизме. more.my superadmin содержит 3 menubars (я использовал образы ссылок здесь) -> HOME ( для просмотра всех принятых / отклоненных файлов ), NEW UPLOAD ( to просматривать и принимать / отклонять все отложенные файлы ) и LOGOUT. NEWUPLOAD и LOGOUT работают, но у меня проблемы с домом, и это влияет на другие учетные записи пользователей. В самом деле, формат кода – это что-то вроде этого. Позвольте мне показать вам:


 * EmployeeID * * EmployeeName * * Название * * FileDate * * Статус *           

   20132248 Danica file8 08 января 2001 г. Утверждено          
   20896647 Jan file7 12 декабря 2000 г. NotApproved     
   20864125 Keisha file2 01 февраля 2000 г. Утверждено   
   16521253 Файл Riorei10 20 марта 2003 г. Не подтвержден
                                      file3 14 июля 2002 г. Утверждено

 // если вы заметили сотрудника riorei, он содержит 2 файла, идентификатор занятости и идентификатор будут отображаться только один раз.  этот тоже уже отсортирован, как вы могли заметить, я хочу.


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

  1. проблема с эхом -> пример, если у riorei есть 2 загруженных файла, file10 и file3 , если вы хотите принять / отклонить первый файл10 / file3 в newupload, в моем выводе имя и идентификатор не отображаются ( это то, что я сделал : Я попытался повторить две переменные, которые я использовал ($ empid и $ file_employee для id и $ empname и $ file_ename для имени). $ empname и $ empid сначала инициализируются на "" (я покажу вам коды позже) рядом с emmployeeid ( я сначала попробовал его с идентификатором), и это результат, который я нашел ==> $ empid, который должен содержать нулевое значение, которое уже содержит идентификатор employeeID, в котором он должен содержать это после следующего цикла.) НО, если вы хотите принять следующий файл .its ok>. <, но я не могу просто оставить его таким, как это правильно?
  2. другая вещь, которую я заметил, есть некоторые загруженные / зарегистрированные файлы, которые перекликаются с первым циклом имени и id.its, как некоторые загруженные файлы, эхо правильно, а некоторые нет.
  3. Ограничение LIMIT-> i в моей таблице, что я имел в виду, на странице (да, я также создал номер страницы) выдается только 5 файлов. НО на моей странице 1 он содержит только 3 файла, затем следующая страница содержит 1 файл и так далее. Я также даже испытал что-то вроде следующей страницы, нет загруженных файлов, но если вы снова нажмете снова, Tadah! файл есть. ( это то, что я сделал: я поставил счетчик, чтобы проверить, сколько раз он зациклился в моей статье while. к моему shocked.it говорит 5! и я не знаю, как это происходит.)

насколько я заметил, это единственная ошибка, которую я нашел. поэтому позвольте мне показать вам коды, которые я использовал 🙂


<?php $search = '%'; $fgmembersite->DBLogin(); $limit = 5; if(isset($_GET['offset'])) { $offset = mysql_real_escape_string($_GET['offset']); } else { $offset = 0; } //for namelist az $listname = '%'; If (isset($_GET['namelist'])) { $listname = $_GET['namelist']; } //for search file if(isset($_POST['searchfile'])) { $search = $_POST['searchfile']; } else if(isset($_GET['searchfile'])) { $search = $_GET['searchfile']; } if($_SESSION[$fgmembersite->GetLoginSessionVar()] == 'sa' OR $_SESSION[$fgmembersite->GetLoginSessionVar()] == 'admin') { //$sql="select * from gmdc_employee where employee_name like '%$search%' AND employee_name like '$listname%' "; $sql="SELECT `e`.* FROM `gmdc_employee` `e` JOIN `gmdc_user` `u` ON ( `u`.`company_id` = `e`.`company_id` ) WHERE (`u`.`company_name` LIKE '%$search%' OR `e`.`employee_name` LIKE '%$search%' OR `e`.`employee_id` LIKE '%$search%') AND `e`.`employee_name` LIKE '$listname%' "; } else { $sql = "select `e`.* from `gmdc_user` `u`, `gmdc_employee` `e` where `u`.`username` = '".$_SESSION[$fgmembersite->GetLoginSessionVar()]."' and `u`.`company_id` = `e`.`company_id` AND `e`.`employee_name` like '$listname%' AND `e`.`employee_name` like '%$search%'"; } $query = mysql_query("$sql ORDER BY `e`.`employee_name`, `e`.`confirmation` DESC ,`e`.`file_id` DESC,`e`.`file_date` DESC LIMIT $offset,$limit") or die ( mysql_error () ); $result = mysql_query($sql) or die (mysql_error()); $total = mysql_num_rows($result); $emp_id = ''; //This will be use to remove employee_id if its already echoed. $emp_name = ''; //This will be use to remove employee_name if its already echoed. $count = 0; if(!$result || mysql_num_rows($result) <= 0) { $fgmembersite->HandleError("No file found."); return false; } while ($row = mysql_fetch_assoc($query)) { $file_id = $row['file_id']; $file_desc = $row['file_description']; $file_date = $row['file_date']; $file_name = $row['file_name']; $file_accs = $row['folder_access']; $file_employee = $row['employee_id']; $file_confir = $row['confirmation']; $file_ename = ucwords($row['employee_name']); //$emp_id=$emp_id==$row['employee_id']?"":$row['employee_id']; //$emp_name=$emp_name==$row['employee_name']?"":$row['employee_name']; $info = pathinfo($file_name); $file_ext = $info['extension']; $count = $count + 1; echo $count; if($_SESSION[$fgmembersite->GetLoginSessionVar()] == 'sa') { echo '<tr> <td> &nbsp; </td> </tr> <tr class="subone"> <td class="sub" width="100"> '; if ($file_employee == $emp_id) { # do not display the employee's ID and name } else { # display the employee's ID and name echo''.$file_employee.''; } echo'<br /> &nbsp; </td>'; if($_SESSION[$fgmembersite->GetLoginSessionVar()] == 'sa') { ?><td class="sub" width="100"> <a href="" onclick = javascript:newPopup('addfile.php?emp=<?php echo $file_employee ?>');> <?php if ($file_ename == $emp_name) { # do not display the employee's ID and name } else { # display the employee's ID and name echo''.$file_ename.''; }?></a> <br /> &nbsp; </td><?php } else { echo '<td class="sub" width="182"> '; if ($file_ename == $emp_name) { # do not display the employee's ID and name } else { # display the employee's ID and name echo''.$file_ename.''; } echo' <br /> &nbsp; </td>'; } echo'<td class="sub" width="218"> <a href="'.$file_accs.$file_name.'" target="_blank" style="text-decoration: underline;">'.$file_desc.'</a> <br /> &nbsp; </td> <td class="sub" width="100"> '.date('M d, Y',mktime(0,0,0,substr($file_date,5,2),substr($file_date,8,2),substr($file_date,0,4))).' <br /> &nbsp; </td> <td class="sub" width="100"> '.$file_confir.' <br /> &nbsp; </td>'; if($_SESSION[$fgmembersite->GetLoginSessionVar()] == 'sa') { if($file_confir == 'Pending' OR $file_confir == 'NotApproved') { if(isset($_GET['id'])) { $fgmembersite->Delete_Db($_GET['id']); } echo '<td class="sub" width="100"> <a href="index.php?id='.$file_id.'">Delete</a> <br /> &nbsp; </td>'; } } } else //THIS IS THE CODES OF MY SUPER ADMIN AND OTHER ACCOUNTS if($_SESSION[$fgmembersite->GetLoginSessionVar()] != 'sa' && ($file_confir == 'Approved' || $file_confir == 'NotApproved')) { echo '<tr> <td> &nbsp; </td> </tr> <tr class="subone"> <td class="sub" width="100">'; // echo $emp_id.'-'.$file_employee; if ($file_employee == $emp_id) { # do not display the employee's ID and name } else { # display the employee's ID and name echo''.$file_employee.''; } echo' <br /> &nbsp; </td>'; echo '<td class="sub" width="182">'; if ($file_ename == $emp_name) { # do not display the employee's ID and name } else { # display the employee's ID and name echo''.$file_ename.''; } echo' <br /> &nbsp; </td>'; echo'<td class="sub" width="218"> <a href="'.$file_accs.$file_name.'" target="_blank" style="text-decoration: underline;">'.$file_desc.'</a> <br /> &nbsp; </td> <td class="sub" width="100"> '.date('M d, Y',mktime(0,0,0,substr($file_date,5,2),substr($file_date,8,2),substr($file_date,0,4))).' <br /> &nbsp; </td> <td class="sub" width="100"> '.$file_confir.' <br /> &nbsp; </td>'; } $emp_id = $file_employee; $emp_name = $file_ename; }?> <tr> 

Извините, если он слишком длинный, его просто нужно, чтобы некоторые из них требовали или спрашивали полные коды, которые я использовал, хотя это только часть. Надеюсь, кто-то может помочь мне здесь. 🙁

Я, наконец, обнаружил, что пошло не так с моей проблемой. Хотя мои коды стали дольше, чем когда-либо.

Итак, вот что я сделал, я добавил новый запрос для моих условий «ожидающий», «не одобрен» и «одобрил» тот же запрос на самом деле, я просто добавил AND e . confirmation LIKE «Ожидание» на странице newupload и AND e . confirmation LIKE 'Accepted' OR e . confirmation LIKE «NotAccepted» на главной странице. (обратите внимание, что я поставил это вместе с запросом и создал $ sql2, $ query2, $ total2 и $ result2, и поскольку у меня есть 1 код для номера страницы, я уже исправил это также)

В то же время вместо того, чтобы сначала WHILE, а затем If Statement , я отменил его. И сделали 2 раза.

Вы можете проверить мои коды и применить это 🙂

Спасибо @stefgosselin за то, что я не поставил меня, и тот, кто «ТОЛЬКО» помог мне в чем-то другом. Я просто попробовал это сейчас, все, что мне нужно сделать, это исправить мой заказ. Благодарю. Надеюсь, это может помочь другим с той же проблемой.