Bir mySQL veritabanından veri almak ve oluşturulduktan sonra otomatik olarak indirilmesi gereken bir CSV dosyasına aktarmak için bu PHP kod parçasına sahibim.fputcsv Dosyayı açar ancak boş olarak indirir
- verileri alır:
$connection = mysqli_connect($host, $username, $password, $dbname) or die("Connection Error " . mysqli_error($connection)); // fetch mysql table rows $sql = "select * from users"; $result = mysqli_query($connection, $sql) or die("Selection Error " . mysqli_error($connection)); $fp = fopen('users.csv', 'w'); while($row = mysqli_fetch_assoc($result)) { fputcsv($fp, $row); } fclose($fp); header('Content-Type: text/csv'); header('Content-Disposition: attachment; filename="users.csv"'); mysqli_close($connection);
burada sorun olmasıdır.
- Sunucudaki CSV dosyasını, export.php dosyasının aynı dizinindeki veriyi ile birlikte alır.
- aynı adı ile dosya indirir AMA BOŞ
teşekkürler bu.
dosyayı çıkışı rahatsız etmedi. Dosyayı disketten okumak ve istemciye göndermek için readfile ('users.csv') 'gibi bir şeye ihtiyacınız vardır. –
Dosya içeriğini, sadece dosyanın adını gönderiyorsunuz ve bu bir CSV. – chris85
Sunucudaki fiziksel bir dosyaya yazmak yerine (eşzamanlı kullanıcılarınız varsa sorunlu), '' php: // output '' dosya adını kullanın (ve dosyayı açmadan önce başlıklarınızı gönderin). hiç bir sunucu diski kullanmadan tarayıcıyı –