• 12-04-2020, 16:46:12
    #1
    Merhabalar,

    pdo ile veritabanı bağlantısı yapıyorum lakin burada, böyle bir tablo yok ise if içine girmesini istiyorum bunu nasıl yapabilirim? araştırdım lakin bulamadım
  • 12-04-2020, 16:59:42
    #2
    MixCoder adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,

    pdo ile veritabanı bağlantısı yapıyorum lakin burada, böyle bir tablo yok ise if içine girmesini istiyorum bunu nasıl yapabilirim? araştırdım lakin bulamadım
    $db = new PDO('mysql:host=localhost;dbname=test','root','root');
    
    $rs = $db->query("SHOW TABLES");
    $all = $rs->fetchAll();
    $tables=[];
    foreach($all as $item) {
    array_push($tables,$item[0]);
    }
    print_r($tables);
    yukarıdaki örnekte tabloları listeleyebilirsin. ondan sonrası sana kalmış
  • 12-04-2020, 17:01:17
    #3
    if ( mysql_query( "DESCRIBE `tablo`" ) ) {
      // tablo var
    }
    PDO
    $x= $pdo->prepare( "DESCRIBE `tablo`");
    if ($x->execute() ) {
       //tablo var
    } else {
        // tablo yok
    }
  • 12-04-2020, 17:06:32
    #4
    Sorgu https://codeshare.io/aljO0D buradaki gibi olmalı. Tabloları Information_schema üzerinden sorgulamanız gerekiyor.
    Bu sorgu sonuç DÖNDÜRMÜYORSA tablo yok demektir.

    Edit: sorguyu neden burada paylaşamadım emin değilim
  • 12-04-2020, 17:23:37
    #5
    TheKhan adlı üyeden alıntı: mesajı görüntüle
    Sorgu https://codeshare.io/aljO0D buradaki gibi olmalı. Tabloları Information_schema üzerinden sorgulamanız gerekiyor.
    Bu sorgu sonuç DÖNDÜRMÜYORSA tablo yok demektir.

    Edit: sorguyu neden burada paylaşamadım emin değilim
    strong adlı üyeden alıntı: mesajı görüntüle
    if ( mysql_query( "DESCRIBE `tablo`" ) ) {
      // tablo var
    }
    PDO
    $x= $pdo->prepare( "DESCRIBE `tablo`");
    if ($x->execute() ) {
       //tablo var
    } else {
        // tablo yok
    }
    TekstilTurkiye adlı üyeden alıntı: mesajı görüntüle
    $db = new PDO('mysql:host=localhost;dbname=test','root','root');
    
    $rs = $db->query("SHOW TABLES");
    $all = $rs->fetchAll();
    $tables=[];
    foreach($all as $item) {
    array_push($tables,$item[0]);
    }
    print_r($tables);
    yukarıdaki örnekte tabloları listeleyebilirsin. ondan sonrası sana kalmış
    hocam aslında yapmak istediğim şuydu biri scripti ilk kuruşunca karşısına bir form çıksın veritabanı adını yazacağı vs onu bulamadım
  • 12-04-2020, 17:25:21
    #6
    Üyeliği durduruldu
    Veri tabanıya bağlanamadığında sana zaten error veriyor pdo eğer error verirse sende bunu ekrana basabilirsin
  • 12-04-2020, 17:37:26
    #7
    Son anladığım formdan gelen tablo adi sorgulama
    $x= $pdo->prepare( "DESCRIBE '.$tablo.'");