• 07-03-2024, 21:22:01
    #1
    Merhabalar,
    Datatables ile tabloyu entegre ediyorum. Lakin tabloda satırları birleştirdiğim zaman datatables çalışmıyor. Sütunların ve satırların eşit olmadığını düşünüyor ve çalışmıyor. Datatablesde colspan özelliği çalışmıyormuş.

    Aşağıdaki gibi bütün satırıkaplaması için
    <tr><td class='text-danger' colspan='10'>Bilgilendirme: Dosya geçersiz</td></tr>
    lakin çalışmıyor. Resimde görüldüğü gibi satırlar birleştiriliyor lakin datatales özellikleri yok. Bu konu hakkında yardımcı olabilir misiniz?

    <div class="card-body">
        <?php
        // Önceki bağlantı ve oturum başlatma kodları burada olmalı
        // Veritabanından ihbarlar verilerini çek
        if ($_SESSION["erisim"] == "admin" || $_SESSION["erisim"] == "sbirimi") {
            $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE sil=0 ORDER BY id DESC");
            $ihbarlar->execute();
        } else {
            $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE bayi_id=? AND sil=0 ORDER BY id DESC");
            $ihbarlar->execute([$_SESSION["id"]]);
        }
        // Tablo başlıkları
        echo "<table id='example1' class='table table-bordered table-striped table-sm'>
            <thead>
                <tr>
                    <th>#</th>
                    <th>Tarih</th>
                    <th>Bayi Adı</th>
                    <th>Sigorta Şirketi</th>
                    <th>Plaka</th>
                    <th>Dosya Numarası</th>
                    <th>Sigortalı Ad Soyad</th>
                    <th>DURUM</th>
                    <th>İşlemler</th>
                    <th>Evrak Durum</th> <!-- Yeni başlık -->
                </tr>
            </thead>
            <tbody>";
        // Her bir satır için işlem yap
        $i = 0;
        foreach ($ihbarlar as $ihbar) {
            $query = $pdo->prepare("SELECT adi FROM bayiler WHERE kod=?");
            $query->execute([$ihbar->bayi_id]);
            $bayi = $query->fetch();
            $i++;
            // Evrak Durumu sütunu için X veya tik emojisi ekleme
            if (empty($ihbar->hasarli_cam) || empty($ihbar->km) || empty($ihbar->ruhsat) || empty($ihbar->matbu_evrak_1)) {
                $evrak_emoji = '❌';
            } else {
                $evrak_emoji = '✔️';
            }
            echo "<tr id=\"$ihbar->id\">";
            echo "<td>$i</td>";
            echo "<td>$ihbar->ekleme_tarihi</td>";
            echo "<td>$bayi->adi</td>";
            echo "<td>$ihbar->sigorta_sirketi</td>";
            echo "<td>$ihbar->plakasi</td>";
            echo "<td>$ihbar->dosya_numarasi</td>";
            echo "<td>$ihbar->sigortali_ad_soyad</td>";
            echo "<td><span class='badge bg-" . ($ihbar->durum == "RED" ? "danger" : ($ihbar->durum == "BAYİDE" ? "warning" : "success")) . "'>$ihbar->durum</span></td>";
            echo "<td>
                <button onclick=\"openPrintPage('$ihbar->id')\" class='btn btn-sm btn-primary'><i class='nav-icon fas fa-print'></i>&nbsp;Yazdır</button>
                <button onclick=\"window.location.href='ihbarlar.php?id=$ihbar->id'\" class='btn btn-sm btn-success'><i class='nav-icon fas fa-eye'></i>&nbsp;Görüntüle</button>";
            if ($_SESSION["erisim"] != "bayi") {
                echo "<button onclick='sil($ihbar->id, \"ihbar\")' class='btn btn-danger btn-sm'><i class='nav-icon fas fa-trash'></i>&nbsp;Sil</button>";
            }
            echo "</td>";
            echo "<td>$evrak_emoji</td>";
            echo "</tr>";
            // Eğer durum RED ise, ek açıklama satırı ekle
            if ($ihbar->durum == "RED") {
                echo "<tr><td class='text-danger' colspan='10'>Bilgilendirme: Dosya geçersiz</td></tr>";
            }
        }
        echo "</tbody>
          <tfoot>
              <tr>
                  <th>#</th>
                  <th>Tarih</th>
                  <th>Bayi Adı</th>
                  <th>Sigorta Şirketi</th>
                  <th>Plaka</th>
                  <th>Dosya Numarası</th>
                  <th>Sigortalı Ad Soyad</th>
                  <th>DURUM</th>
                  <th>İşlemler</th>
                  <th>Evrak Durum</th> <!-- Yeni başlık -->
              </tr>
          </tfoot>
      </table>";
        ?>
    </div><!-- /.card-body -->


    Datatables çalıştığı zaman aşağıdaki gibi gözüküyor:

  • 08-03-2024, 00:20:54
    #2
    şunu bir denermisiniz

            <tr>
                <td class='text-danger' colspan='10'>Bilgilendirme: Dosya geçersiz</td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
            </tr>
  • 08-03-2024, 00:46:07
    #3
    VEDANTA adlı üyeden alıntı: mesajı görüntüle
    şunu bir denermisiniz

            <tr>
                <td class='text-danger' colspan='10'>Bilgilendirme: Dosya geçersiz</td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
                <td style="display:none;"></td>
            </tr>
    Bunu denemiştim hocam. Siz yazınca tekrar denedim. Lakin bu kodu yazınca tablo küçülüyor ve eklediğimiz kolonlar gözüküyor. Değişik bir şey oluyor.
  • 08-03-2024, 01:52:49
    #4
    kodun değişiklik yaptığınız halini atarmısınız
  • 08-03-2024, 09:44:47
    #5
    VEDANTA adlı üyeden alıntı: mesajı görüntüle
    kodun değişiklik yaptığınız halini atarmısınız
    <div class="card-body">
        <?php
        // Önceki bağlantı ve oturum başlatma kodları burada olmalı
        // Veritabanından ihbarlar verilerini çek
        if ($_SESSION["erisim"] == "admin" || $_SESSION["erisim"] == "sbirimi") {
            $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE sil=0 ORDER BY id DESC");
            $ihbarlar->execute();
        } else {
            $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE bayi_id=? AND sil=0 ORDER BY id DESC");
            $ihbarlar->execute([$_SESSION["id"]]);
        }
        // Tablo başlıkları
        echo "<table id='example1' class='table table-bordered table-striped table-sm'>
            <thead>
                <tr>
                    <th>#</th>
                    <th>Tarih</th>
                    <th>Bayi Adı</th>
                    <th>Sigorta Şirketi</th>
                    <th>Plaka</th>
                    <th>Dosya Numarası</th>
                    <th>Sigortalı Ad Soyad</th>
                    <th>DURUM</th>
                    <th>İşlemler</th>
                    <th>Evrak Durum</th> <!-- Yeni başlık -->
                </tr>
            </thead>
            <tbody>";
        // Her bir satır için işlem yap
        $i = 0;
        foreach ($ihbarlar as $ihbar) {
            $query = $pdo->prepare("SELECT adi FROM bayiler WHERE kod=?");
            $query->execute([$ihbar->bayi_id]);
            $bayi = $query->fetch();
            $i++;
            // Evrak Durumu sütunu için X veya tik emojisi ekleme
            if (empty($ihbar->hasarli_cam) || empty($ihbar->km) || empty($ihbar->ruhsat) || empty($ihbar->matbu_evrak_1)) {
                $evrak_emoji = '❌';
            } else {
                $evrak_emoji = '✔️';
            }
            echo "<tr id=\"$ihbar->id\">";
            echo "<td>$i</td>";
            echo "<td>$ihbar->ekleme_tarihi</td>";
            echo "<td>$bayi->adi</td>";
            echo "<td>$ihbar->sigorta_sirketi</td>";
            echo "<td>$ihbar->plakasi</td>";
            echo "<td>$ihbar->dosya_numarasi</td>";
            echo "<td>$ihbar->sigortali_ad_soyad</td>";
            echo "<td><span class='badge bg-" . ($ihbar->durum == "RED" ? "danger" : ($ihbar->durum == "BAYİDE" ? "warning" : "success")) . "'>$ihbar->durum</span></td>";
            echo "<td>
                <button onclick=\"openPrintPage('$ihbar->id')\" class='btn btn-sm btn-primary'><i class='nav-icon fas fa-print'></i>&nbsp;Yazdır</button>
                <button onclick=\"window.location.href='ihbarlar.php?id=$ihbar->id'\" class='btn btn-sm btn-success'><i class='nav-icon fas fa-eye'></i>&nbsp;Görüntüle</button>";
            if ($_SESSION["erisim"] != "bayi") {
                echo "<button onclick='sil($ihbar->id, \"ihbar\")' class='btn btn-danger btn-sm'><i class='nav-icon fas fa-trash'></i>&nbsp;Sil</button>";
            }
            echo "</td>";
            echo "<td>$evrak_emoji</td>";
            echo "</tr>";
            // Eğer durum RED ise, ek açıklama satırı ekle
            if ($ihbar->durum == "RED") {
                echo '<tr><td class="text-danger" colspan="10">Bilgilendirme: Dosya geçersiz</td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td><td style="display:none;"></td></tr>';
            }
        }
        echo "</tbody>
          <tfoot>
              <tr>
                  <th>#</th>
                  <th>Tarih</th>
                  <th>Bayi Adı</th>
                  <th>Sigorta Şirketi</th>
                  <th>Plaka</th>
                  <th>Dosya Numarası</th>
                  <th>Sigortalı Ad Soyad</th>
                  <th>DURUM</th>
                  <th>İşlemler</th>
                  <th>Evrak Durum</th> <!-- Yeni başlık -->
              </tr>
          </tfoot>
      </table>";
        ?>
    </div><!-- /.card-body -->
  • 09-03-2024, 00:10:59
    #6
    Bir de şunu deneyebilirmisiniz

     echo '<tr><td class="text-danger" colspan="10">Bilgilendirme: Dosya geçersiz</td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td></tr>';
  • 11-03-2024, 13:47:23
    #7
    VEDANTA adlı üyeden alıntı: mesajı görüntüle
    Bir de şunu deneyebilirmisiniz

     echo '<tr><td class="text-danger" colspan="10">Bilgilendirme: Dosya geçersiz</td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td><td style="display:none !important;"></td></tr>';
    Sizin yazdığınız kodu ekledim lakin yine 3. posttaki gibi gözüküyor. Display none olmasına rağmen satırlar gözüküyor.
  • 11-03-2024, 18:16:55
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Selamlar.

    <div class="card-body">
      <?php
      // Önceki bağlantı ve oturum başlatma kodları burada olmalı
      // Veritabanından ihbarlar verilerini çek
      if ($_SESSION["erisim"] == "admin" || $_SESSION["erisim"] == "sbirimi") {
        $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE sil=0 ORDER BY id DESC");
        $ihbarlar->execute();
      } else {
        $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE bayi_id=? AND sil=0 ORDER BY id DESC");
        $ihbarlar->execute([$_SESSION["id"]]);
      }
      // Tablo başlıkları
      echo "<table id='example1' class='table table-bordered table-striped table-sm'>
        <thead>
          <tr>
            <th>#</th>
            <th>Tarih</th>
            <th>Bayi Adı</th>
            <th>Sigorta Şirketi</th>
            <th>Plaka</th>
            <th>Dosya Numarası</th>
            <th>Sigortalı Ad Soyad</th>
            <th>DURUM</th>
            <th>İşlemler</th>
            <th>Evrak Durum</th> 
          </tr>
        </thead>
        <tbody>";
      // Her bir satır için işlem yap
      $i = 0;
      foreach ($ihbarlar as $ihbar) {
        $query = $pdo->prepare("SELECT adi FROM bayiler WHERE kod=?");
        $query->execute([$ihbar->bayi_id]);
        $bayi = $query->fetch();
        $i++;
        // Evrak Durumu sütunu için X veya tik emojisi ekleme
        if (empty($ihbar->hasarli_cam) || empty($ihbar->km) || empty($ihbar->ruhsat) || empty($ihbar->matbu_evrak_1)) {
          $evrak_emoji = '❌';
        } else {
          $evrak_emoji = '✔️';
        }
        echo "<tr id=\"$ihbar->id\">";
        echo "<td>$i</td>";
        echo "<td>$ihbar->ekleme_tarihi</td>";
        echo "<td>$bayi->adi</td>";
        echo "<td>$ihbar->sigorta_sirketi</td>";
        echo "<td>$ihbar->plakasi</td>";
        echo "<td>$ihbar->dosya_numarasi</td>";
        echo "<td>$ihbar->sigortali_ad_soyad</td>";
        echo "<td><span class='badge bg-" . ($ihbar->durum == "RED" ? "danger" : ($ihbar->durum == "BAYİDE" ? "warning" : "success")) . "'>$ihbar->durum</span></td>";
        echo "<td>
          <button onclick=\"openPrintPage('$ihbar->id')\" class='btn btn-sm btn-primary'><i class='nav-icon fas fa-print'></i>&nbsp;Yazdır</button>
          <button onclick=\"window.location.href='ihbarlar.php?id=$ihbar->id'\" class='btn btn-sm btn-success'><i class='nav-icon fas fa-eye'></i>&nbsp;Görüntüle</button>";
        if ($_SESSION["erisim"] != "bayi") {
          echo "<button onclick='sil($ihbar->id, \"ihbar\")' class='btn btn-danger btn-sm'><i class='nav-icon fas fa-trash'></i>&nbsp;Sil</button>";
        }
        echo "</td>";
        echo "<td>$evrak_emoji</td>";
        echo "</tr>";
        // Eğer durum RED ise, ek açıklama satırı ekle
        if ($ihbar->durum == "RED") {
          echo "<tr class='text-danger'><td colspan='10'>Bilgilendirme: Dosya geçersiz</td></tr>";
        }
      }
      echo "</tbody>
        <tfoot>
          <tr>
            <th>#</th>
            <th>Tarih</th>
            <th>Bayi Adı</th>
            <th>Sigorta Şirketi</th>
            <th>Plaka</th>
            <th>Dosya Numarası</th>
            <th>Sigortalı Ad Soyad</th>
            <th>DURUM</th>
            <th>İşlemler</th>
            <th>Evrak Durum</th> 
          </tr>
        </tfoot>
      </table>";
      ?>
    </div>
    Denermisiniz ?
  • 11-03-2024, 19:37:26
    #9
    Sinyor_Ridak adlı üyeden alıntı: mesajı görüntüle
    Selamlar.

    <div class="card-body">
      <?php
      // Önceki bağlantı ve oturum başlatma kodları burada olmalı
      // Veritabanından ihbarlar verilerini çek
      if ($_SESSION["erisim"] == "admin" || $_SESSION["erisim"] == "sbirimi") {
        $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE sil=0 ORDER BY id DESC");
        $ihbarlar->execute();
      } else {
        $ihbarlar = $pdo->prepare("SELECT * FROM ihbarlar WHERE bayi_id=? AND sil=0 ORDER BY id DESC");
        $ihbarlar->execute([$_SESSION["id"]]);
      }
      // Tablo başlıkları
      echo "<table id='example1' class='table table-bordered table-striped table-sm'>
        <thead>
          <tr>
            <th>#</th>
            <th>Tarih</th>
            <th>Bayi Adı</th>
            <th>Sigorta Şirketi</th>
            <th>Plaka</th>
            <th>Dosya Numarası</th>
            <th>Sigortalı Ad Soyad</th>
            <th>DURUM</th>
            <th>İşlemler</th>
            <th>Evrak Durum</th>
          </tr>
        </thead>
        <tbody>";
      // Her bir satır için işlem yap
      $i = 0;
      foreach ($ihbarlar as $ihbar) {
        $query = $pdo->prepare("SELECT adi FROM bayiler WHERE kod=?");
        $query->execute([$ihbar->bayi_id]);
        $bayi = $query->fetch();
        $i++;
        // Evrak Durumu sütunu için X veya tik emojisi ekleme
        if (empty($ihbar->hasarli_cam) || empty($ihbar->km) || empty($ihbar->ruhsat) || empty($ihbar->matbu_evrak_1)) {
          $evrak_emoji = '❌';
        } else {
          $evrak_emoji = '✔️';
        }
        echo "<tr id=\"$ihbar->id\">";
        echo "<td>$i</td>";
        echo "<td>$ihbar->ekleme_tarihi</td>";
        echo "<td>$bayi->adi</td>";
        echo "<td>$ihbar->sigorta_sirketi</td>";
        echo "<td>$ihbar->plakasi</td>";
        echo "<td>$ihbar->dosya_numarasi</td>";
        echo "<td>$ihbar->sigortali_ad_soyad</td>";
        echo "<td><span class='badge bg-" . ($ihbar->durum == "RED" ? "danger" : ($ihbar->durum == "BAYİDE" ? "warning" : "success")) . "'>$ihbar->durum</span></td>";
        echo "<td>
          <button onclick=\"openPrintPage('$ihbar->id')\" class='btn btn-sm btn-primary'><i class='nav-icon fas fa-print'></i>&nbsp;Yazdır</button>
          <button onclick=\"window.location.href='ihbarlar.php?id=$ihbar->id'\" class='btn btn-sm btn-success'><i class='nav-icon fas fa-eye'></i>&nbsp;Görüntüle</button>";
        if ($_SESSION["erisim"] != "bayi") {
          echo "<button onclick='sil($ihbar->id, \"ihbar\")' class='btn btn-danger btn-sm'><i class='nav-icon fas fa-trash'></i>&nbsp;Sil</button>";
        }
        echo "</td>";
        echo "<td>$evrak_emoji</td>";
        echo "</tr>";
        // Eğer durum RED ise, ek açıklama satırı ekle
        if ($ihbar->durum == "RED") {
          echo "<tr class='text-danger'><td colspan='10'>Bilgilendirme: Dosya geçersiz</td></tr>";
        }
      }
      echo "</tbody>
        <tfoot>
          <tr>
            <th>#</th>
            <th>Tarih</th>
            <th>Bayi Adı</th>
            <th>Sigorta Şirketi</th>
            <th>Plaka</th>
            <th>Dosya Numarası</th>
            <th>Sigortalı Ad Soyad</th>
            <th>DURUM</th>
            <th>İşlemler</th>
            <th>Evrak Durum</th>
          </tr>
        </tfoot>
      </table>";
      ?>
    </div>
    Denermisiniz ?
    Kodda nerede değişiklik yaptınız anlamadım lakin bu kodu yazınca da konuda söyldiğim gibi datatablenin özelliği gidiyor.