我有一個php文件,它在php輸出中轉換我的sql查詢。一切正常。但現在我需要一個輸出作爲txt.file和我的代碼不起作用。作爲txt.file的SQL結果由php
這裏查詢:
<?php
$pdo = new PDO('mysql:host=localhost;dbname=DB', 'USER', 'PW');
$result = ("SELECT o.order_id AS Bestellnummer, o.customer_id AS Kundennummer, o.order_status_id AS Bestellstatus, op.quantity AS Anzahl, op.model AS Pharmacode, op.name AS Bezeichnung, p.location AS Lieferant, o.shipping_company AS Firma, o.shipping_firstname AS Vorname, o.shipping_lastname AS Nachname, o.shipping_address_1 AS Lieferadresse, o.shipping_postcode AS PLZ, o.shipping_city AS Ort
FROM oc_order o
INNER JOIN oc_order_product op
ON o.order_id = op.order_id
INNER JOIN oc_product p
ON op.product_id = p.product_id
WHERE o.order_status_id = 1 AND p.location = 1
ORDER BY o.order_id, op.model");
echo "<table border='0'>
<tr>
<th>Best.Nr</th>
<th>Kd.Nr</th>
<th>Status</th>
<th>Anz.</th>
<th>Pharmacode</th>
<th>Bezeichnung</th>
<th>Lieferant</th>
<th>Firma</th>
<th>Vorname</th>
<th>Nachname</th>
<th>Adresse</th>
<th>PLZ</th>
<th>Ort</th>
</tr>";
foreach ($pdo->query($result) as $row) {
echo "<tr>";
echo "<td>" . $row['Bestellnummer'] . "</td>";
echo "<td>" . $row['Kundennummer'] . "</td>";
echo "<td>" . $row['Bestellstatus'] . "</td>";
echo "<td>" . $row['Anzahl'] . "</td>";
echo "<td>" . $row['Pharmacode'] . "</td>";
echo "<td>" . $row['Bezeichnung'] . "</td>";
echo "<td>" . $row['Lieferant'] . "</td>";
echo "<td>" . $row['Firma'] . "</td>";
echo "<td>" . $row['Vorname'] . "</td>";
echo "<td>" . $row['Nachname'] . "</td>";
echo "<td>" . $row['Adresse'] . "</td>";
echo "<td>" . $row['PLZ'] . "</td>";
echo "<td>" . $row['Ort'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
我需要爲TXT或CSV一個輸出endcode。我想初始代碼(SELECT ...)沒有清晰的輸出字符串來連接輸出的新代碼。
最後的代碼是正確的,唯一的區別使用'mysql_ *'函數代替'PDO',這會在PHP 7中造成問題。 –
不推薦使用'mysql'擴展名。開始使用'mysqli'或'PDO'來避免像SQL注入這樣的漏洞攻擊。 – Perumal
@JiriHrazdil'mysql'擴展不僅在PHP 7中引起問題,它從PHP 5.5.0開始已被棄用。 5.5.0之後的版本都會使用'mysql'造成問題。 – Perumal