Hoşgeldiniz, Ziyaretçi.Lütfen giriş yapın veya kayıt olun.
E-posta adresinize aktivasyon iletisi gelmediyse lütfen buraya tıklayın.
Mayıs 18, 2012, 07:44:51 ÖÖ


FORUM ŞU AN İÇİN (ÖZEL BÖLÜMLER HARİÇ) TÜM ZİYARETÇİLERE AÇIKTIR.
EMEĞE SAYGI AÇISINDAN ALINTILARIN MUTLAKA KAYNAK GÖSTERİLMESİ RİCA OLUNUR.


Ana Sayfa Ana Sayfa Yardım Ara Giriş Yap Kayıt
+  Hay-NS Yazılım
|-+  WEB TABANLI DİLLER
| |-+  PHP Köşesi
| | |-+  PHP EXCEL
| | | |-+  Veritabanından Excele kayıt gönderme
0 Üye ve 2 Ziyaretçi konuyu incelemekte. « önceki sonraki »
Sayfa: [1] Aşağı git Bu Konuyu Gönder Yazdır
Gönderen Konu: Veritabanından Excele kayıt gönderme  (Okunma Sayısı 712 defa)
turkoder
Adnan YILDIZ
Administrator
Onbaşı
*****

Rep Puanı: +0/-0
Çevrimdışı Çevrimdışı

Mesaj Sayısı: 208



WWW
« : Haziran 19, 2008, 12:56:53 ÖÖ »

Veri tabanı ıağlantı kodunu yazalım:
Kod:
<?php 
$veriyol 
= @mysql_connect ("localhost" "kullanici_adi" "sifre" );
if ( ! 
$veriyol) die ("MySQL ile veri bağlantısı kurulamıyor!");
@
mysql_select_db"veritabani_adi" $veriyol ) or die ("Veritabanı Açılamıyor!");
@
mysql_query("SET NAMES 'latin5'");
?>


Sütun başlıklarını ve listelenecek tablemizin alanlarını değişkene aktaralım:
Kod:
<?php 
$sutun_baslik
="Adı,Soyadı,Kullanıcı Adı,Email Adresi";
$falan="alan1,alan2,alan3,alan4";
?>


$falan değişkenine yazılan alanların kaç tane olduğunu kodla bulalım
Kod:
<?php
$sutunlar
=split(",",$sutun_baslik);
 
$falanlar=split(",",$falan); 
$f=count($falanlar); 
?>


Şimdi sql kodumuzu yazalım ve  html table kodlarını da kullanarak kayıtlarımızı listeletelim.

Kod:
<?php
$result
mysql_query("select $falan from tableadi order by kayid desc",$veriyol );  
$schema_insert .='<table x:str border=0 cellpadding=0 cellspacing=0 width=100% style=\'border-collapse: collapse\'>';
   
$schema_insert .= '<tr>';
        for (
$i 0$i $f$i++) {
            
$schema_insert .= '<td nowrap><b>' $sutunlar[$i] . '</b> &nbsp;</td>';
        } 
// end for
        
$schema_insert .= '</tr>';
 while (
$row mysql_fetch_row($result)) {
        
$schema_insert .= '<tr>';
        for (
$j 0$j $f$j++) {
          
$schema_insert .= '<td nowrap>' stripslashes($row[$j]) . '</td>';
        } 
// end for
        
$schema_insert .= '</tr>';
       
    } 
// end while
    
mysql_free_result($result);
$schema_insert .='</table>';
?>


Sıra geldi sayfanin tipini yazmaya işi yapan aslında bu kısım.
Kod:
<?php
header
("Content-type: application/x-msdownload");  
header("Content-Disposition: attachment; filename=uyeliste.xls");  
header("Pragma: no-cache"); header("Expires: 0"); ?>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">

Artık değişkene aktarılan verilerimizi ekrana basabiliriz.
Kod:
<?php
print $schema_insert;  
?>


Bu sayfayı kaydedip direk linki verdiğinizde farklı kaydet ile karşılaşacaksınız. Kesin diyorum çünkü denedim.
Bazı hatırlatmaları yapalım. Aralara kod ekleme durumunda;
 değişkenlere veri aktarma işlemini yaparken tek tırnak kullanıldı. Siz çift tırnak kullanırsanız excel çalışma sayfanız boş gelebilir bilginiz olsun. Yani $schema_insert="veri : araya ekle vs."; yerine $schema_insert='veri :araya ekle vs.'; gibi...

Kodlarımızın tümünü tek seferde görelim :
Kod:
<?php 
$sutun_baslik
="Adı,Soyadı,Kullanıcı Adı,Email Adresi";
$falan="alan1,alan2,alan3,alan4";
 
$sutunlar=split(",",$sutun_baslik);
 
$falanlar=split(",",$falan); 
$f=count($falanlar);  
$resultmysql_query("select $falan from tableadi order by kayid desc",$veriyol );  
$schema_insert .='<table x:str border=0 cellpadding=0 cellspacing=0 width=100% style=\'border-collapse: collapse\'>';
   
$schema_insert .= '<tr>';
        for (
$i 0$i $f$i++) {
            
$schema_insert .= '<td nowrap><b>' $sutunlar[$i] . '</b> &nbsp;</td>';
        } 
// end for
        
$schema_insert .= '</tr>';
 while (
$row mysql_fetch_row($result)) {
        
$schema_insert .= '<tr>';
        for (
$j 0$j $f$j++) {
          
$schema_insert .= '<td nowrap>' duzeduz($row[$j]) . '</td>';
        } 
// end for
        
$schema_insert .= '</tr>';
       
    } 
// end while
    
mysql_free_result($result);
$schema_insert .='</table>';  
header("Content-type: application/x-msdownload");  
header("Content-Disposition: attachment; filename=uyeliste.xls");  
header("Pragma: no-cache"); header("Expires: 0"); ?>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<?
print $schema_insert; 
?>
« Son Düzenleme: Eylül 07, 2008, 05:04:02 ÖÖ Gönderen: Turkoder (Menderes) » Logged
Sayfa: [1] Yukarı git Bu Konuyu Gönder Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

MySQL Kullanıyor PHP Kullanıyor Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC XHTML 1.0 Uyumlu! CSS Uyumlu!
Bu Sayfa 0.038 Saniyede 18 Sorgu ile Oluşturuldu