2016-07-29 6 views
1

Ich bin mit seltsamen Problem konfrontiert beim Exportieren meiner CSV-Datei auf Safari wird es nur im Browser angezeigt, anstatt zu downloaden .While gleichen Code funktioniert mit Firefox und Crome.Ich habe aber gesucht Nichts funktioniert für mich. Bitte helfen Sie. Hier ist mein Code-Kann meine CSV-Datei nicht auf Safari mit PHP herunterladen

<?php 
ob_clean(); 
ob_start(); 
header('Content-Type: text/csv'); 
header('Content-Disposition: attachment; filename="export.csv"'); 
header('Pragma: no-cache');  
header('Expires: 0'); 

function exportData() { 

$fp = fopen('php://output', 'w'); 
fputcsv($fp, array('Market ID', 'Market Name', 'Suburb', 'State', 'Start Time', 'End Time', 'Status',"~")); 
include "database.php"; 


$dbquery = @$_POST['query']; 
$queryAllUser = $dbquery;  


$resultAllUser = mysql_query($queryAllUser); 
$countAllUser = mysql_num_rows($resultAllUser); 


if($countAllUser > 0) 
{ 
while($rowMarketId= mysql_fetch_assoc($resultAllUser)) 
{ 

    $marketId =  $rowMarketId['mrkt_id']; 
    $isCancel =  $rowMarketId['is_cancel']; 
    $openning_tim = $rowMarketId['openning_time']; 
    $closing_tim = $rowMarketId['closing_time']; 
    $suburb = $rowMarketId['suburb']; 
    $name = $rowMarketId['name']; 
    $state = $rowMarketId['state'];  
    if($isCancel == 0) 
    { 
      $status_type = "Open"; 
    } 
    else 
    { 
      $status_type = "Close"; 
    } 

     $val = array(); 
     $val[] = $marketId; 
     $val[] = $name; 
     $val[] = $suburb; 
     $val[] = $state; 
     $val[] = $openning_tim; 
     $val[] = $closing_tim; 
     $val[] = $status_type; 
     $val[] = "~"; 

    fputcsv($fp, $val); 

    } 


    } 


    } 

    exportData(); 

    ?> 
+0

Ich bin mir ziemlich sicher, dass es auf den CSV-Lesern ab, die Sie installiert haben, auf Ihre Browser. Gleiches gilt für PDFs –

+0

@JulienLachal - vielen Dank für die Antwort, aber ich habe es mit mehr als drei Systemen mit verschiedenen Safari-Version getestet, aber immer noch das gleiche Problem. –

+0

Ja, das ist es, was ich sage, vielleicht kann Safari CSV nicht lesen, wie es Firefox und Chrome tun. Wie liest es sie, hast du ein spezielles Plugin dafür? –

Antwort

0
header('Content-Description: File Transfer'); 
header('Content-Type: application/octet-stream'); 
header("Content-Type: application/force-download"); 
header('Content-Disposition: attachment; filename=' .urlencode(basename($filename))); 
header('Expires: 0'); 
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
header('Pragma: public'); 
header('Content-Length: ' . filesize($filename)); 

Mit dieser Header Versuchen ........ Dies sollte .. Arbeit

+0

Prashant - Danke für den Kommentar, aber es funktioniert nicht. –

+0

www.123contactform.com/docs/i-cannot-download-csv-file-on-safari-what-to-do/.......... Überprüfen Sie diesen Link –

+0

Danke für die Antwort @ Prashat, Ich bin dieser Seite schon gefolgt. Aber mein Kunde möchte automatisch CSV-Dateien herunterladen. –

Verwandte Themen