Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
20, 2008, 02:22:31 pm
42892 Mesaj 8131 Konu Gönderen: 18002 Üye
Son üye: Hope1983
Turk-Php.Com Forum  |  Yardım Forumları  |  PHP Yardım Forumu  |  Tablo Çizdirme « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: Tablo Çizdirme  (Okunma Sayısı 730 defa)
abdullahcakir
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 11


Üyelik Bilgileri
Tablo Çizdirme
« : 20, 2005, 07:58:38 am »

Merhaba arkadaşlar,
Benim sorum şu: While döngüsüyle veritabanımdan kategori isimlerini çekiyorum ve bir table a yazdırıyorum. Benim istediğim çekilen verileri 4 sütun halinde yazdırması yani 5. veriyi 1.verinin altına yazdırması. Bu konu hakkında Turk-PHP'nin arşivinde ki makaleyi okudum ama orada dizi olarak yapılmış.
Benim istediğim nasıl olur bir fikir verirseniz sevinirim...
Logged
Witkey
Ziyaretçi


E-Posta
Ynt: Tablo Çizdirme
« Yanıtla #1 : 20, 2005, 07:59:51 am »

5. veriyi 1.verinin altına yazdırması.

Biraz acıklarmısın
Logged
abdullahcakir
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 11


Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #2 : 20, 2005, 08:04:12 am »

Örneğin tablodan çekilen verilerin sayısı toplam 6 tane olsun.Ben tablo çıktısının aşağıdaki şekilde olmasını istiyorum.

   1.Veri               2.Veri                3.Veri                4.Veri
   5.Veri               6.Veri

Eğer sayaç 5 olmuşsa yeni bir <tr><td> başlatacak.Ama ben bunu while döngüsü içinde yapamadım. Yazınca sadece (yukarıdaki örnek için) 5.Veri yi yazıyor...
Logged
mudkicker
Arif Ender
Admin
*
Offline Offline

Mesaj Sayısı: 873

Mastered PHP


Üyelik Bilgileri WWW
Ynt: Tablo Çizdirme
« Yanıtla #3 : 20, 2005, 11:11:29 am »

while yerine for döngüsü ile çalışman lazım bu iş için.

arşivde bununla ilgili çoook eski bir örnek vardı diye hatırlıyorum.
Logged

Oytun Tez
Oytun Tez
PHP Memuru
***
Offline Offline

Mesaj Sayısı: 452



Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #4 : 20, 2005, 11:39:40 am »

şöyle olacak mantığı :
Kod:
echo "<table><tr>";
for(var i,i=0,i++) {
      while($result=mysq_fetch_row($sql)) {
      echo "<td>$result[1]</td>";
      }
if(i==5) {
echo "</tr><tr>"
}
}


kodlamada yanlışlıklar olabiir..for döngüsünde faan..
ama mantığı bu..
ilk önce table ı açıyorsun.sonra satırını.dbden verileri döngüyeçekiyorsun..sütun sütun.her döngüde i yi 1 artırıyorsun.ve her döngüdede i yi kontolediyosun.eğer 5 ve 5in katları iseşuanki satırı kapatyeni satır aç diyorsun..
Logged
mudkicker
Arif Ender
Admin
*
Offline Offline

Mesaj Sayısı: 873

Mastered PHP


Üyelik Bilgileri WWW
Ynt: Tablo Çizdirme
« Yanıtla #5 : 20, 2005, 12:02:19 pm »

var i ne ya?
Cheesy

$i olmasın o..
Logged

Oytun Tez
Oytun Tez
PHP Memuru
***
Offline Offline

Mesaj Sayısı: 452



Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #6 : 20, 2005, 12:25:58 pm »

 Grin
jsp ye gitti herhalde aklım  Grin
Logged
msa
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 133


Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #7 : 20, 2005, 12:31:39 pm »

Şu şekilde de olabilir. Biraz uzun ama. Wink
Kod:
echo "<table>
            <tr>
             <td>Alan 1</td>
             <td>Alan 2</td>
             <td>Alan 3</td>
             <td>Alan 4</td>
           </tr><tr>
             <td>Alan 5</td>
             <td>Alan 6</td>
             <td></td>
             <td></td>
          </tr>";
while ($result = mysql_fetch_array($sql)) {
       echo "<tr><td>". $result['alan1'] ."</td>
                        <td>". $result['alan2'] ."</td>
                        <td>". $result['alan3'] ."</td>
                        <td>". $result['alan4'] ."</td></tr>
                 <tr><td>". $result['alan5'] ."</td>
                        <td>". $result['alan6'] ."</td>
                        <td></td>
                        <td></td></tr>";
}
echo "</table>";
Logged
abdullahcakir
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 11


Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #8 : 21, 2005, 06:13:37 am »

Sağolun arkadaşlar...
Ben dün bir arkadaşın yardımıyla çözdüm...
Çözüm:
Kod:
<table width="100%">
 <?php
$i 
0;
$k 0
while(
$array mysql_fetch_array($query)) {
   
$k++; 
  if(
$i == ) {
      
?>
<tr><? $i = 1;
  }
?>
<td> <? echo $array["bilgi"]; ?> </td>
<? if($k == 4) {  $i=0; $k = 0; } ?>
<? if($i == 0) { ?>
</tr>
<? } ?>
<?
}
?>
</table>
« Son Düzenleme: 21, 2005, 08:27:23 am Gönderen: mudkicker » Logged
kral_barmen
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 2


Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #9 : 18, 2008, 04:50:10 am »

Çok Sağol Arkadaşım Ben Bu İşte Daha Yeniyim Sayende Uzun Zamandır Uğraşıp Çözemediğim Olayı Çözdüm Tekrar Teşekkür Ederim.
Logged
pinar_m
PHP Memuru
***
Offline Offline

Mesaj Sayısı: 659


phplife


Üyelik Bilgileri
Ynt: Tablo Çizdirme
« Yanıtla #10 : 18, 2008, 04:58:58 am »

Kod:

$output='';
$data_arr = array();

$result = mysql_query ("SELECT * FROM table");
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$data_arr[] = $row["adi"].' '.$row["soyadi"].' '.$row["mail"];
}
$output .='<table align="left" border="2"><tr>';
foreach ($data_arr as $key => $val) {
$output .= '<td>'.$val.'</td>';
if(($key%4==3)) { $output .= '</tr> <tr>'; }
}
$output .='</table>';
echo $output;



böyle de olur.
Logged

başarının anahtarı beyinde şakak zorlamadan geçer.başlangıç çizgisinden geçmeyen hile yaptığını anlar ve finişe varamadan geri döner.
Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Turk-Php.Com Forum | SMF Forum Software © 2005, Simple Machines LLC. All Rights Reserved.