2013-07-28 4 views
1

В настоящее время я показываю все столбцы для найденных записей в div с идентификатором результатов поиска с использованием AJAX, а затем я предоставляю параметр печати для печати этих записей. Теперь я хочу иметь возможность выбирать набор столбцов (для этой цели я предоставил все столбцы флажком) и печатаю только выбранные. Я могу получить выбранные столбцы в php-файле, но как я могу сформировать запрос из выбранных значений столбца. Я имею в виду, что возможно много разных комбинаций. Код до сих пор ..генерация отчетов на основе выбранных полей

   <?php 




       echo ' <table border="1"> 
         <tr> 
         <td class="lab searchtableheader" style="color:#cd0000; padding:5px;"><input type="checkbox" name="print" value="facultyname" /><br>FACULTY</td> 
         <td class="lab searchtableheader" style="color:#de0000; padding:5px;"><input type="checkbox" name="print" value="departmentname" /><br>DEPT.</td> 
         <td class="lab searchtableheader" style="color:#ef0000; padding:5px;"><input type="checkbox" name="print" value="coursename" /><br>COURSE</td> 
         <td class="lab searchtableheader" style="color:#ff0000; padding:5px;"><input type="checkbox" name="print" value="year" /><br>YEAR </td> 
         <td class="lab searchtableheader" style="color:#f50853; padding:5px;"><input type="checkbox" name="print" value="semester" /><br>SEM. </td> 
         <td class="lab searchtableheader" style="color:#f5087e; padding:5px;"><input type="checkbox" name="print" value="studentname" /><br>NAME </td> 
         <td class="lab searchtableheader" style="color:#f508dd; padding:5px;"><input type="checkbox" name="print" value="enrollment" /><br>ENROLL. </td> 
         <td class="lab searchtableheader" style="color:#c108f5; padding:5px;"><input type="checkbox" name="print" value="courseseatcategory" /><br>SEAT CATEGORY</td> 
         <td class="lab searchtableheader" style="color:#7e08f5; padding:5px;"><input type="checkbox" name="print" value="gender" /><br>GENDER </td> 
         <td class="lab searchtableheader" style="color:#3f08f5; padding:5px;"><input type="checkbox" name="print" value="dob" /><br>D.O.B</td> 
         <td class="lab searchtableheader" style="color:#2f95f4; padding:5px;"><input type="checkbox" name="print" value="religion" /><br>RELIGION </td> 
         <td class="lab searchtableheader" style="color:#9f4ef0; padding:5px;"><input type="checkbox" name="print" value="category" /><br>CATEGORY </td> 
         <td class="lab searchtableheader" style="color:#ee4ef0; padding:5px;"><input type="checkbox" name="print" value="country" /><br>COUNTRY </td> 
         <td class="lab searchtableheader" style="color:#f70767; padding:5px;"><input type="checkbox" name="print" value="state" /><br>STATE </td> 
         <td class="lab searchtableheader" style="color:#ef4ef0; padding:5px;"><input type="checkbox" name="print" value="internal" /><br>INTERNAL </td> 
         <td class="lab searchtableheader" style="color:#2e95f3; padding:5px;"><input type="checkbox" name="print" value="ph" /><br>PH </td> 
         <td class="lab searchtableheader" style="color:#7e08f1; padding:5px;"><input type="checkbox" name="print" value="dor" /><br>D.O.R </td> 
         <td class="lab searchtableheader" style="color:#f508aa; padding:5px;"><input type="checkbox" name="print" value="supervisior" /><br>SUPERVISOR </td> 
         <td class="lab searchtableheader" style="color:#ff0000; padding:5px;"><input type="checkbox" name="print" value="cosupervisor" /><br>COSUPERVISOR </td> 
         <td class="lab searchtableheader" style="color:#9f4ef0; padding:5px;"><input type="checkbox" name="print" value="titleofthesis" /><br>TITLE of THESIS</td> 
         <td class="lab searchtableheader" style="color:#2f95f4; padding:5px;"><input type="checkbox" name="print" value="mou" /><br>MOU </td> 
         <td class="lab searchtableheader" style="color:#7e08f5; padding:5px;"><input type="checkbox" name="print" value="mouinstitute" /><br>MOU INSTITUTE </td> 

         </tr>  ';?> 

JavaScript для печати:

function printDiv() 
{ 
    var divToPrint=document.getElementById('searchresults'); 
    newWin= window.open(""); 
    newWin.document.write(divToPrint.outerHTML); 
    newWin.print(); 
    newWin.close(); 
} 
+0

я имею в виду, чтобы получить выбранные столбцы и запрос только те столбцы из базы данных, а затем записать результат в новой странице с помощью printDiv –

+0

, но не смог написать запрос из всех возможных комбинаций выбранных столбцов ..:/ –

ответ

1

Во-первых, Вы должны изменить имя = «печать» на имя = «печать []» Итак, PHP может забрать все из выбранные значения.

Независимо от того, используете ли вы сообщение или отправляете информацию, необходимую для прокрутки отправленных значений. Информация будет в массиве печати.

$prn = $_POST['print']; 
$sql = "SELECT "; 
$flds = ""; 
foreach($prn as $p) { 
    if($flds != "") $flds .= ","; 
    $flds .= $p 
} 
$sql .= $flds . " FROM .... 

Пожалуйста, не код не тестировался, но это должно дать вам отправную точку

+0

Thnx jeff..то именно то, что я искал, я не смог правильно создать этот цикл foreach. Lemme проверить, если он работает сейчас. Кстати, спасибо .. :) –

+0

Я думаю, нам нужно будет проверить, выбрано ли поле с помощью isset() здесь. –