如何在sql

时间:2015-09-13 07:54:55

标签: php mysql

我可以在运行两个或更多表的查询后打印一组数据吗?

这是我查询的两个表:

  

第一次查询   



$query = mysql_query("SELECT id, BuyerName,BuyerEmail,BuyerAddress,TransactionID,
        ItemAmount,DateTime FROM `order` WHERE YEAR(DateTime)= 
       '$Year'AND MONTH(DateTime) = '$Month' LIMIT $start, $per_page")
         or die(mysql_error());




     

第二次查询



$querydetail = mysql_query("SELECT * FROM orderlist WHERE TransactionID  = '$f4'");




是否可以按照使用表格在php中设置的方式进行打印?

这是我以表格格式显示数据的方式。有没有办法将此输出直接导入Microsoft Word或A4纸张格式?



 <?php  
    while($row = mysql_fetch_array($query))
    {  
              
    $f1 = $row['BuyerName'];
    $f2 = $row['BuyerEmail'];
    $f3 = $row['BuyerAddress'];
    $f4 = $row['TransactionID'];
    $f5 = $row['ItemAmount'];
    $f6 = $row['DateTime'];
	
	
  ?>
  <table class="table">
     <tr>
      <th>Nama Pelanggan</th>
      <th>Email Pelanggan</th>
      <th>Alamat Pelanggan</th>
      <th>ID Transaksi</th>
      <th>Harga</th>
      <th>Tarikh</th>
	  
   <tr>
    <td><?php echo $f1 ?></td>
    <td><?php echo $f2 ?></td>
    <td><?php echo $f3 ?></td>
    <td><?php echo $f4 ?></td>
    <td><?php echo $f5 ?></td>
    <td><?php echo $f6 ?></td>

   </tr>
   <table class="table">
     <tr>
      <th>Nama Barang</th>
      <th>Kod Barang</th>
      <th>Kuantiti</th>
      
	  
	  
     </tr>
   <?php
	$querydetail = mysql_query("SELECT * FROM orderlist WHERE TransactionID  = '$f4'");
	while($rows = mysql_fetch_array($querydetail))
    {  
              
    $fd1 = $rows['ItemName'];
    $fd2 = $rows['ItemNumber'];
    $fd3 = $rows['ItemQTY'];
	?>
<tr>
    <td><?php echo $fd1 ?></td>
    <td><?php echo $fd2 ?></td>
    <td><?php echo $fd3 ?></td>
</tr>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

如果您不保存第一个查询的结果,例如在变量中,一旦执行下一个变量,它就会丢失。获取查询&#39;只要您执行它们,就将它们存储在数组中,并在您拥有下一步所需的所有可用数据时立即使用它们,例如将它们打印出来。那是你问的吗?

B.t.w。不再使用mysql_query,它将在未来的php版本中删除,并可能使您的代码容易受到SQL注入攻击。使用PDO或mysli进行数据库工作会更安全。

修改 要从PHP创建word文档,请查看this question

或者您可以省略HTML标记,使用合适的分隔字符分隔列(例如,如果您不在数据中使用分号,则使用分号)

<?php $delimiter = ";"; ?>
...
<?php echo $f1 . $delimiter ?>

而不是

<td><?php echo $f1 ?></td>

并导入Excel或OpenOffice Calc。这是一个使用CSV mime类型输出到download而不是浏览器输出的解决方案。

或者你可以,例如使用FPDF创建PDF文件。