为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 php 表格脚本显示的 woocommerce 产品下载为 CSV 文件?

如何从 php 表格脚本显示的 woocommerce 产品下载为 CSV 文件?

PHP
明月笑刀无情 2022-12-23 14:36:32
我正在尝试将产品库存下载为 .csv 文件。使用以下 php 脚本启用打开页面后,文件将自动下载。<?php$args = array(    'status' => 'publish',    'limit' => 100,    'orderby' => 'title',    'order'   => 'ASC');$products = wc_get_products( $args );$counter = 1;echo "<input type='submit' value='Export' name='Export'>";if (count($products)) {    echo  "<table align='center'><tr>";    echo "<td>";    // Open the table    echo "<table style ='background-color:#ffffff;border-collapse: collapse; margin-right:10px'><thead><tr>            <th width='50' style='border:1px solid black'>Sl No.</th>            <th width='400' style='border:1px solid black'>Product Name</th>            <th style='border:1px solid black' width='54'>Stock</th>            </tr></thead>";    // Cycle through the array    foreach ($products as $product) {        // Output a row        if($product->stock_status == 'instock'){        echo "<tr>";        echo "<td align='center' style='border:1px solid black'>$counter</td>";        echo "<td style='border:1px solid black'>$product->name</td>";        echo "<td align='center' style='border:1px solid black'>$product->stock_quantity</td>";        echo "</tr>";        $counter++;        $user_arr[] = array($counter,$product->name,$product->stock_quantity);    }    }    // Close the table    echo "</table>";    echo "</td>";    //-----------------------out of stock------------    echo "<td valign='top'>";    // Open the table    echo "<table style = 'background-color:#ffffff;border-collapse: collapse;'><thead><tr>            <th width='50' style='border:1px solid black'>Sl No.</th>            <th width='400' style='border:1px solid black'>Out of stock products</th>            <th style='border:1px solid black' width='54'>Stock</th>            </tr></thead>";     // Close the table    echo "</table>";    echo "</td>";    echo "</tr></table>";}打开“product_stock.csv”下载文件后,它没有与预期的行值正确对齐,但在每一行和每一列上显示 html 脚本。单击“导出”按钮后如何下载文件 product_stock.csv 并在行中添加预期值?
查看完整描述

1 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

我得到了解决方案。添加带有按钮的表单。


<form style="margin-left: 79%;margin-top: -59px;" method="post" id="export-form" action="">

        <?php submit_button('Export Stock Report', 'primary', 'download_csv' ); ?>

    </form>

然后添加标题以正确对齐,这避免了 product_stock.csv 中的 html 标签


header('Content-Type: text/csv; charset=utf-8'); //For .csv

header('Content-Disposition: attachment; filename=product-stock-report-' . date('d-m-Y') . '.csv');

$output = fopen('php://output', 'w');

$headings = array( 'Sl. No.','Product Name', 'Stock' );

fputcsv($output, $headings );


查看完整回答
反对 回复 2022-12-23
  • 1 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号