• 24-02-2023, 01:37:35
    #1
    Merhabalar. admin klasörü içinde oluşturduğum "1.json", "2.json", "3.json" gibi dosyaları kök klasördeki "index.php" de nasıl listeletebilirim. Problemim yol verme ile alakalı değil. Şu şekilde şeyler buldum. admin klasörünü "open_dir" ile açıp içinde json uzantılı dosya var mı yok mu diye bakıp, varsa eğer "index.php" sayfasında listeleteceğim. Sorunum bu.
  • 24-02-2023, 01:39:17
    #2
    File metodu ile kontrol etmene gerek yok, dosyaların yolunu belirtip curl ile o dizine istek attıktan sonra curl response 200 döndüğünde aldığın veriyi json_decode ile çözüp array formatına vererek istediğin işlemi yapabilirsin.
  • 24-02-2023, 01:39:37
    #3
    <?php
    if ($handle = opendir(dirname(__FILE__))) {
        echo '<ul>';
        while (false !== ($name = readdir($handle))) {
            if ($name != '.' && $name != '..') {
                if (substr($name, -5) == '.json') {
                    echo '<li>' . $name . '</li>';
                }
            }
        }
        echo '</ul>';
    }
  • 24-02-2023, 19:34:52
    #4
    Yolu nasıl vereceğim peki. Aşağıdaki gibi olmadı çünkü.
    if ($handle = opendir(dirname(__FILE__ . "admin/panel/json/"))) {
    Curl ile istek nasıl atılır bir örneği var mı?
  • 24-02-2023, 21:34:15
    #5
    Sorun devam ediyor ise ulaşın çözelim
  • 24-02-2023, 22:31:05
    #6
    Buradan halletmeye çalışalım.
  • 25-02-2023, 08:20:30
    #7
    $list = glob('/klasor/altklasor/*.json');
    buradaki $list değişkeni size array olarak json dosyalarının tam yollarını verir. /klasor/altklasor/1.json gibi

    json mevcut çalıştığınız php dosyasıyla aynı dizinde ise
    $list = glob( dirname(__FILE__). '/*.json' ); olara kullanabilirsiniz.

    $list = glob( dirname(__FILE__).'/*.json' );
    foreach($list as $json){
        //$json değişkeni /dizin/altdizin/1.json gibi çıktı verir
        $exp = explode( '/', $json );
        // $json değişkenini / ile böldük
        $filename = end($exp); 
        // end ile array in son value sunu aldık
        echo $filename.PHP_EOL;
    }
  • 25-02-2023, 20:34:49
    #8
    Peki benim bütün json dosyalarını çekmem lazım ama bu kodlar son json ı çekiyor tamam. Ama bu çektiğim json dosyasının içindeki veriyi nasıl listeleteceğim. Aşağıdaki gibi yaptım kodları ama aşağıdaki hatayı alıyorum.
    $list = glob( dirname(__FILE__).'/*.json' );
    foreach($list as $json){
        $exp = explode( '/', $json );
        $filename = end($exp); 
        $yeniveri = json_decode($filename);
        $yeniveri->ss_ozellik;
    }
    Hata
    : Trying to get property 'ss_ozellik' of non-object in on line
  • 25-02-2023, 23:20:41
    #9
    trgino dediğin şekilde uyguladım. Şunları da ekleyerek, çalıştı. 3 haftadır uğraşırım bu işe vallahi. Tek sorun yol veremedim klasöre. "admin/panel/json/" klasörlerinin içinde, json dosyaları. Yolu veremedim bir türlü.
    $list = glob( dirname(__FILE__).'*.json' );
    foreach($list as $json){
        $exp = explode( '/', $json );
        $filename = end($exp); 
        $veriokujson = file_get_contents($filename);
        $yeniveri = json_decode($veriokujson);
        echo $yeniveri->ss_ozellik;