jquery php ve csv ihracat

2 Cevap php

Ben bir csv dosyası olarak bir mysql sorgu sonuçlarını ihracat için bir komut dosyası var. Şey i komut dosyası erişmek için jquery kullanmak olmasıdır. Ben (zaten csv formatında) Jquery ile veri dönebilirsiniz bilmek gerekir. Diğer bir deyişle, sadece kendimi net kullanıcı html dosyasında bir düğmeye bastığında benim ingilizce biraz zayıf, bir post isteği csv formatında veri döndüren bir php dosyasına gönderilen çünkü yapmak. Jquery ile bu verileri almak ve kullanıcıya. Csv dosyasını hizmet etmek istiyorum.

PHP dosyası:

<?php
    session_start();
    header ("Content-type: application/csv\nContent-Disposition: \"inline; filename=my.csv\"");
    include("config.php");
    $query = $_SESSION['sqlQuery'];

    $result = mysql_query($query) or die("Query failed : " . mysql_error());
    echo "ID,STATUS,CATEGORY,TITLE,DATE,URL\r\n"; //header
    while($row = mysql_fetch_row($result)) {
        echo "$row[0],$row[4],$row[3],$row[1],$row[2]\r\n"; //data
    }
?>

Ben gibi HTML bir şey gerekir:

$("#exportToCsv").click(function(){
   $.post("export.php",function(data){
        here the code for exporting much like downloading a file
  });
});

2 Cevap

Sadece başlık uşak ile (hayır $.post hayır ajax) dosyaya bağlantı söyledi. Bu dosyayı indirir. Ajax indir perfom için değil, dosya almak için javascript için ment.

Bu görevin hangi kısmı için yardıma ihtiyacınız var mı?

Aşağıdaki komut kullanıcıya bir dosyayı yazdırır:

http://php.net/manual/en/function.file-get-contents.php

örneğin:

echo file_get_contents("myfile.csv");

edit

Ajax çağrı çağrısında edilecektir php-sayfasına aşağıdaki başlıkları eklemek için deneyin:

header("Content-Type: text/csv");
header("Content-Disposition: attachment; filename=\"export.csv\"");