JSON yanitinda veriyi otomatik olarak DataTable'a yansıtmak mümkün mü?

pathpath1

Centipat
Katılım
22 Ağustos 2023
Mesajlar
24
Daha fazla  
Cinsiyet
Erkek
PHP'de API'den gelen JSON yanıtını, sütunları ve veriyi otomatik olarak DataTable'a yansıtmak mümkün mü? Örneğin, aşağıdaki gibi bir JSON yanıtı olduğunu varsayalım:

{
"ID": 98765,
"NAME": "Mehmet Demir",
"EMAIL": "[EMAIL][email protected][/EMAIL]",
"AGE": 34,
"IS_ACTIVE": false,
"CREATED_AT": "2024-09-10T14:20:00Z",
"LAST_LOGIN": "2024-09-11T21:15:00Z"
}

Bu JSON yanıtına göre, DataTable'da sütunları otomatik olarak "ID", "NAME", "EMAIL", "AGE", "IS_ACTIVE", "CREATED_AT", "LAST_LOGIN" şeklinde oluşturup, verileri altlarına doğru yerleştirmek PHP'de mümkün mü?
 
Tabloda eksik var mı veya tablo yapısı birebir aynımı olacak ona göre senaryoyu düzenliyelim.
 
Evet, mümkün. Sayfaya yazdırdığınız veriyi basit bir API sistemi hazırlayarak çekip json_decode() ile çözerek JSON_DATA'yı bir değişken şeklinde atayın:
PHP:
$jsonData = '{
    "ID": 98765,
    "NAME": "Mehmet Demir",
    "EMAIL": "[email protected]",
    "AGE": 34,
    "IS_ACTIVE": false,
    "CREATED_AT": "2024-09-10T14:20:00Z",
    "LAST_LOGIN": "2024-09-11T21:15:00Z"
}';

$data = json_decode($jsonData, true);

if ($data === null) {
    echo "Geçersiz JSON formatı";
    exit;
}

Şöyle bir tablo oluşturarak da veriyi yazdırabilirsiniz:
PHP:
<thead>
            <tr>
                <?php
                foreach ($data as $key => $value) {
                    echo "<th>" . htmlspecialchars($key) . "</th>";
                }
                ?>
            </tr>
        </thead>
        <tbody>
            <tr>
                <?php
                foreach ($data as $value) {
                    echo "<td>" . htmlspecialchars($value) . "</td>";
                }
                ?>
            </tr>
        </tbody>

Tabii bunlar için datatable kurmanız gerek:
HTML:
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdn.datatables.net/1.10.21/js/jquery.dataTables.min.js"></script>

Datatable kullanmayı dökümantasyonundan öğrenebilirsiniz.
 
Evet, mümkün. Sayfaya yazdırdığınız veriyi basit bir API sistemi hazırlayarak çekip json_decode() ile çözerek JSON_DATA'yı bir değişken şeklinde atayın:
PHP:
$jsonData = '{
 "ID": 98765,
 "NAME": "Mehmet Demir",
 "EMAIL": "[email protected]",
 "AGE": 34,
 "IS_ACTIVE": false,
 "CREATED_AT": "2024-09-10T14:20:00Z",
 "LAST_LOGIN": "2024-09-11T21:15:00Z"
}';

$data = json_decode($jsonData, true);

if ($data === null) {
 echo "Geçersiz JSON formatı";
 exit;
}

Şöyle bir tablo oluşturarak da veriyi yazdırabilirsiniz:
PHP:
<thead>
 <tr>
 <?php
 foreach ($data as $key => $value) {
 echo "<th>" . htmlspecialchars($key) . "</th>";
 }
 ?>
 </tr>
 </thead>
 <tbody>
 <tr>
 <?php
 foreach ($data as $value) {
 echo "<td>" . htmlspecialchars($value) . "</td>";
 }
 ?>
 </tr>
 </tbody>

Tabii bunlar için datatable kurmanız gerek:
HTML:
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdn.datatables.net/1.10.21/js/jquery.dataTables.min.js"></script>

Datatable kullanmayı dokümantasyonundan öğrenebilirsiniz.

Bu yanıtlar sabıt değil hocam birçok yanıt var yani koda veriyi yazmadan otomatik apiyi bağlayan bir şey sormuştum.
 

Technopat Haberler

Yeni konular

Geri
Yukarı