TARS166 Ответов: 1

Я пытаюсь загрузить записи из mysql в excel при выборе флажка с помощью сеанса


<body> 

<div class="container">
 <form action="export.php" method="post">
                                                                                        
<table class="table">
  <thead>
               <tr class="warning"> 
                 <th></th>	

                 <th>Delivery No.</th>
               <th>Invoice Number</th>  				 
                 <th>Bill Date</th>         
             	<th>Customer</th>             
             	 <th>Quantity</th>   
                  <th>Brand</th>				 
                      
               </tr>  
			   	   
</thead>
			  
     <?php while ($row = mysqli_fetch_array($filter_result)){ ?>
                  <tr>
				  
<td class="border-right" align="center"><input type="checkbox" name="check[]" id="check[]" value= "<?php echo $row['Delivery_no']; ?>" /></td>	  
<td><?php echo $row['Delivery_no'];?></td>  
<td><?php echo $row['Invoice_no'];?></td>
<td><?php echo $row['Bill_date'];?></td>
<td><?php echo $row['Bill_to_party'];?></td>
<td><?php echo $row['Quantity'];?></td>
<td><?php echo $row['Brand']; } ?></td>

                    </tr>					
                      
               </table> 	   
			   <br>

			<div class="control-group">
				<div class="controls">
					<button type="submit" id="submit" name="submit" value="submit data" class="btn btn-primary button-loading" data-loading-text="Loading...">Download !</button>
				</div>
			</div>
		</form>

		</div>
</body>         
</html>


export.php
$DB_Server = "localhost"; //MySQL Server    
$DB_Username = "root"; //MySQL Username     
$DB_Password = "";             //MySQL Password     
$DB_DBName = "daman_plant";         //MySQL Database Name  
$DB_TBLName = "billing"; //MySQL Table Name   
$filename = "excelfilename";         //File Name
/*******YOU DO NOT NEED TO EDIT ANYTHING BELOW THIS LINE*******/    
//create MySQL connection   
$sql = "Select * from $DB_TBLName WHERE Delivery_no = '$_REQUEST[Delivery_no]'" ;
 //$sql = "SELECT * FROM $DB_TBLName  WHERE Delivery_no = 8153064570" ;

$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Couldn't connect to MySQL:<br>" . mysql_error() . "<br>" . mysql_errno());
//select database   
$Db = @mysql_select_db($DB_DBName, $Connect) or die("Couldn't select database:<br>" . mysql_error(). "<br>" . mysql_errno());   
//execute query 
$result = @mysql_query($sql,$Connect) or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno());    
$file_ending = "xls";
//header info for browser
header("Content-Type: application/xls");    
header("Content-Disposition: attachment; filename=$filename.xls");  
header("Pragma: no-cache"); 
header("Expires: 0");

/*******Start of Formatting for Excel*******/   
//define separator (defines columns in excel & tabs in word)
$sep = "\t"; //tabbed character
//start of printing column names as names of MySQL fields
for ($i = 0; $i < mysql_num_fields($result); $i++) {
echo mysql_field_name($result,$i) . "\t";
}
print("\n");    
//end of printing column names  
//start while loop to get data
    while($row = mysql_fetch_row($result))
    {
        $schema_insert = "";
        for($j=0; $j<mysql_num_fields($result);$j++)
        {
            if(!isset($row[$j]))
                $schema_insert .= "NULL".$sep;
            elseif ($row[$j] != "")
                $schema_insert .= "$row[$j]".$sep;
            else
                $schema_insert .= "".$sep;
        }
        $schema_insert = str_replace($sep."$", "", $schema_insert);
        $schema_insert = preg_replace("/\r\n|\n\r|\n|\r/", " ", $schema_insert);
        $schema_insert .= "\t";
        print(trim($schema_insert));
        print "\n";
    }


Что я уже пробовал:

Я хочу загрузить содержимое базы данных, выбранной на флажке при нажатии кнопки в формате Excel. Мне было сказано использовать сеанс для переноса значения checkbox на следующую страницу. Но я не знаю как. Помогите мне с этим или любой другой возможной альтернативой.

Richard Deeming

Неформатированный дамп кода-это не вопрос.

Нажмите кнопку "улучшить вопрос" и удалите ненужные части вашего кода. Отформатируйте соответствующие части с помощью кнопки " код " на панели инструментов.

Затем добавьте правильное описание того, что вы пытаетесь сделать, что вы пробовали и в чем проблема.

TARS166

Сделано. Пожалуйста, загляните в код.

Richard Deeming

Кроме того, вы уже опубликовали этот код-дамп вчера:
https://www.codeproject.com/Questions/1178942/How-to-download-records-from-phpmyadmin-db-in-exce[^]

Удалите один из этих повторяющихся вопросов.

1 Ответов

Рейтинг:
2

Patrice T

Цитата:
Я пытаюсь загрузить записи из mysql в excel при выборе флажка с помощью сеанса

Одна из причин, по которой вы не получаете ответов, заключается в том, что вопрос плохо построен.
Во-первых, этот вопрос не связан с Excel. Сгенерированный файл представляет собой простой csv-файл с вкладками, его можно использовать практически с чем угодно, включая Excel, но не только.
во-вторых, ваша проблема также не связана с чтением базы данных

Ваш реальный вопрос: "Как прочитать пользовательский ввод в моем php-коде ?"

Вероятно, вам также нужно научиться вызывать php-код на стороне сервера из клиентского браузера.
На этом сайте вы найдете много вещей, связанных с web deb:
Учебник по PHP 5[^]