Merhaba, curl ile ziyaretçi bilgilerini alıp veritabanına kaydetmek için uğraşıyorum. JSON veriyi parçaladım alanlara göre ayarladım ama bir türlü veritabanına kaydettiremedim. 1 gündür bakıyorum yanlışımı bulamıyorum. Hatamı düzeltmem konusunda yardımcı olmanızı rica ediyorum.

 

<?php 
include "baglan.php";

error_reporting(E_ALL);
ini_set("display_errors", 1  ); 


// Initialize cURL.
$ch = curl_init();

// Set the URL that you want to GET by using the CURLOPT_URL option.
curl_setopt($ch, CURLOPT_URL, 'https://ipgeolocation.abstractapi.com/v1/?api_key=c2fd959b56b34c8a807201529c6cac3d');

// Set CURLOPT_RETURNTRANSFER so that the content is returned as a variable.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Set CURLOPT_FOLLOWLOCATION to true to follow redirects.
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

// Execute the request.
$data = curl_exec($ch);

// Close the cURL handle.
curl_close($ch);

// Print the data out onto the page.

$jsonVeri = json_decode($data, true);

$veri = [
    'ipadresi' => $jsonVeri['ip_address'],
    'ulke' => $jsonVeri['country'],
    'sehir' => $jsonVeri['city'],
    'postakodu' => $jsonVeri['postal_code'],
    'kita' => $jsonVeri['continent'],
    'enlem' => $jsonVeri['longitude'],
    'boylam' => $jsonVeri['latitude'],
    'saataralik' => $jsonVeri['timezone']['name'],
    'ziyaretsaati' => $jsonVeri['timezone']['current_time'],
    'bayrak' => $jsonVeri['flag']['svg'],
    'operator' => $jsonVeri['connection']['autonomous_system_organization'],
    'baglanti' => $jsonVeri['connection']['connection_type'],
    'servis' => $jsonVeri['connection']['isp_name']

];

if(!empty($veri)){

    $kaydet=$db->prepare("INSERT into ziyaretci set

        ipadresi=:ipadresi,

        ulke=:ulke,

        sehir=:sehir,

        postakodu=:postakodu,

        kita=:kita,

        enlem=:enlem,

        boylam=:boylam,

        saataralik=:saataralik,

        ziyaretsaati=:ziyaretsaati,

        bayrak=:bayrak,

        operator=:operator,

        baglanti=:baglanti,

        servis=:servis

        ");

    $insert=$kaydet->execute(array(

        'ipadresi' => $veri['ipadresi'],

        'ulke' => $veri['ulke'],

        'sehir' => $veri['sehir'],

        'postakodu' => $veri['postakodu'],

        'kita' => $veri['kita'],

        'enlem' => $veri['enlem'],

        'boylam' => $veri['boylam'],

        'saataralik' => $veri['saataralik'],

        'ziyaretsaati' => $veri['ziyaretsaati'],

        'bayrak' => $veri['bayrak'],

        'operator' => $veri['operator'],

        'baglanti' => $veri['baglanti'],

        'servis' => $veri['servis']

    ));

    if ($insert) {

        echo "Başarılı";
        exit;

    } else {

        echo "Başarısız";
        exit;

    }

}  
?>