1
我有用SQL查詢數據創建CSV文件的代碼,然後通過電子郵件發送。使用PHP在服務器中創建CSV時出錯
function create_csv_string($data) {
mysql_connect("xxxx", "xxxx", "xxxx");
echo mysql_error();
mysql_select_db("xxxxx");
$data = mysql_query("SELECT NOMBRE, TELEFONO, HORARIO, EMAIL FROM _LEADS WHERE ENVIADO = 0");
echo mysql_error();
if (!$fp = fopen('php://temp', 'w+')) {
return FALSE;
} else {
echo "entra";
}
fputcsv($fp, array('Nombre', 'Telefono', 'Horario', 'Email'));
while ($line = mysql_fetch_assoc($data)) fputcsv($fp, $line);
rewind($fp);
return stream_get_contents($fp);
}
我的問題是,我在本地執行它,它的工作原理,但我上傳到服務器,它不起作用。我認爲問題出在!$fp = fopen('php://temp', 'w+'))
,但我不確定。
請不要使用'mysql_ *'函數,因爲它們已被棄用和刪除。嘗試使用'mysqli_ *'或PDO。 –
這個問題似乎是在MySQL服務器和文件權限。你可以將權限設置爲'777' **只需一會兒**並檢查?你可以使用諸如'chmod -R 777/var/www'之類的東西。 –
你試過在fopen函數中給路徑賦予文件名嗎? – sAcH