• 07-11-2023, 02:18:40
    #1
    Üyeliği durduruldu
    Database Bağlantısı Kurulmadı!
    Warning: Undefined variable $db in C:xampphtdocsincludebaglan.php on line 14

    Fatal error: Uncaught Error: Call to a member function query() on null in C:xampphtdocsincludebaglan.php:14 Stack trace: #0 C:xampphtdocsincludeheader.php(1): include() #1 C:xampphtdocsindex.php(1): include('C:\xampp\htdocs...') #2 {main} thrown in C:xampphtdocsincludebaglan.php on line 14


    hatam tamda bu nasıl çözeceğim bulamadım gitti
  • 07-11-2023, 02:19:44
    #2
    Üyeliği durduruldu
    <?php
    
    $user = "ilan"; //VERİTABNANI KULLANICI ADINIZ
    $pass = "********"; //VERİTABANI ŞİFRENİZ
    
    // VERİTABANI ADINIZ
    try{
        $db = new PDO("mysql:host=localhost; dbname=ilan; charset=utf8;",$user,$pass);
    }catch(PDOException $error){
        echo "Database Bağlantısı Kurulmadı!"; $error->getMessage();
    
    }
    
    $ayarlar = $db->query('SELECT * FROM ayarlar')->fetch();
    
    $sitetitle = $ayarlar['site_title'];
    $site = $ayarlar['site_url'];
    $desc = $ayarlar['site_desc'];
    $keyw = $ayarlar['site_keyw'];
    $bakim = $ayarlar['site_durum'];
    
    if ($bakim==1) {
       
    die('<!DOCTYPE html>
    <html lang="en"><head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Bakımdayız</title>
        
    <style>
            body {
                margin: 30px 40px;
                background-color: #f6f6f6;
            }
            .error-container {
                padding: 50px 40px;
                font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
                font-size: 14px;
            }
            h1 {
                margin: 0;
                font-size: 48px;
                font-weight: 400;
            }
            h2 {
                margin: 0;
                font-size: 26px;
                font-weight: 300;
            }
            a {
                color: #336699;
            }
            p.back-to-home {
                margin-top: 30px;
            }
            p.debug{
                padding: 20px 0;
                font-family: "Courier New", Courier, monospace, serif;
                font-size: 14px;
            }
            .info {
                border: solid 1px #999;
                padding: 5px;
                background-color: #d9edf7;
            }
        </style>
    
      </head>
      <body>
        <center><div class="error-container"><h1>Bakımdayız!</h1><p>Web sitemiz kısa süreli olarak bakıma girmiştir. En kısa süre içinde yeniden yayına girecektir.</p></div></center>
      
    </body></html>
    
    <script language="Javascript"><!--
    var isNS = (navigator.appName == "Netscape") ? 1 : 0;
    var EnableRightClick = 0;
    if(isNS)
    document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
    function mischandler(){
    if(EnableRightClick==1){ return true; }
    else {return false; }
    }
    function mousehandler(e){
    if(EnableRightClick==1){ return true; }
    var myevent = (isNS) ? e : event;
    var eventbutton = (isNS) ? myevent.which : myevent.button;
    if((eventbutton==2)||(eventbutton==3)) return false;
    }
    function keyhandler(e) {
    var myevent = (isNS) ? e : window.event;
    if (myevent.keyCode==96)
    EnableRightClick = 1;
    return;
    }
    document.oncontextmenu = mischandler;
    document.onkeypress = keyhandler;
    document.onmousedown = mousehandler;
    document.onmouseup = mousehandler;
    //-->
    </script></section></div></body></html>');
    }
    ?>
  • 07-11-2023, 02:25:38
    #3
    <?php
    
    $user = "ilan"; //VERİTABANI KULLANICI ADINIZ
    $pass = "********"; //VERİTABANI ŞİFRENİZ
    
    try {
        $db = new PDO("mysql:host=localhost; dbname=ilan; charset=utf8;", $user, $pass);
    } catch (PDOException $error) {
        echo "Database Bağlantısı Kurulmadı! Hata Mesajı: " . $error->getMessage();
        exit; 
    }
    
    if ($db === null) {
        // Veritabanı bağlantısı kurulamadı, bu yüzden işleme devam etme.
        exit("Veritabanı bağlantısı kurulamadı.");
    }
    
    $ayarlar = $db->query('SELECT * FROM ayarlar')->fetch();
     
    $sitetitle = $ayarlar['site_title'];
    $site = $ayarlar['site_url'];
    $desc = $ayarlar['site_desc'];
    $keyw = $ayarlar['site_keyw'];
    $bakim = $ayarlar['site_durum'];
     
    if ($bakim==1) {
        
    die('<!DOCTYPE html>
    <html lang="en"><head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Bakımdayız</title>
         
    <style>
            body {
                margin: 30px 40px;
                background-color: #f6f6f6;
            }
            .error-container {
                padding: 50px 40px;
                font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
                font-size: 14px;
            }
            h1 {
                margin: 0;
                font-size: 48px;
                font-weight: 400;
            }
            h2 {
                margin: 0;
                font-size: 26px;
                font-weight: 300;
            }
            a {
                color: #336699;
            }
            p.back-to-home {
                margin-top: 30px;
            }
            p.debug{
                padding: 20px 0;
                font-family: "Courier New", Courier, monospace, serif;
                font-size: 14px;
            }
            .info {
                border: solid 1px #999;
                padding: 5px;
                background-color: #d9edf7;
            }
        </style>
     
      </head>
      <body>
        <center><div class="error-container"><h1>Bakımdayız!</h1><p>Web sitemiz kısa süreli olarak bakıma girmiştir. En kısa süre içinde yeniden yayına girecektir.</p></div></center>
       
    </body></html>
     
    <script language="Javascript"><!--
    var isNS = (navigator.appName == "Netscape") ? 1 : 0;
    var EnableRightClick = 0;
    if(isNS)
    document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
    function mischandler(){
    if(EnableRightClick==1){ return true; }
    else {return false; }
    }
    function mousehandler(e){
    if(EnableRightClick==1){ return true; }
    var myevent = (isNS) ? e : event;
    var eventbutton = (isNS) ? myevent.which : myevent.button;
    if((eventbutton==2)||(eventbutton==3)) return false;
    }
    function keyhandler(e) {
    var myevent = (isNS) ? e : window.event;
    if (myevent.keyCode==96)
    EnableRightClick = 1;
    return;
    }
    document.oncontextmenu = mischandler;
    document.onkeypress = keyhandler;
    document.onmousedown = mousehandler;
    document.onmouseup = mousehandler;
    //-->
    </script></section></div></body></html>');
    }
    ?>

    dener misin
  • 07-11-2023, 02:26:28
    #4
    Üyeliği durduruldu
    AloneTrap adlı üyeden alıntı: mesajı görüntüle
    <?php
    
    $user = "ilan"; //VERİTABANI KULLANICI ADINIZ
    $pass = "********"; //VERİTABANI ŞİFRENİZ
    
    try {
        $db = new PDO("mysql:host=localhost; dbname=ilan; charset=utf8;", $user, $pass);
    } catch (PDOException $error) {
        echo "Database Bağlantısı Kurulmadı! Hata Mesajı: " . $error->getMessage();
        exit;
    }
    
    if ($db === null) {
        // Veritabanı bağlantısı kurulamadı, bu yüzden işleme devam etme.
        exit("Veritabanı bağlantısı kurulamadı.");
    }
    
    $ayarlar = $db->query('SELECT * FROM ayarlar')->fetch();
     
    $sitetitle = $ayarlar['site_title'];
    $site = $ayarlar['site_url'];
    $desc = $ayarlar['site_desc'];
    $keyw = $ayarlar['site_keyw'];
    $bakim = $ayarlar['site_durum'];
     
    if ($bakim==1) {
        
    die('<!DOCTYPE html>
    <html lang="en"><head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Bakımdayız</title>
        
    <style>
            body {
                margin: 30px 40px;
                background-color: #f6f6f6;
            }
            .error-container {
                padding: 50px 40px;
                font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
                font-size: 14px;
            }
            h1 {
                margin: 0;
                font-size: 48px;
                font-weight: 400;
            }
            h2 {
                margin: 0;
                font-size: 26px;
                font-weight: 300;
            }
            a {
                color: #336699;
            }
            p.back-to-home {
                margin-top: 30px;
            }
            p.debug{
                padding: 20px 0;
                font-family: "Courier New", Courier, monospace, serif;
                font-size: 14px;
            }
            .info {
                border: solid 1px #999;
                padding: 5px;
                background-color: #d9edf7;
            }
        </style>
     
      </head>
      <body>
        <center><div class="error-container"><h1>Bakımdayız!</h1><p>Web sitemiz kısa süreli olarak bakıma girmiştir. En kısa süre içinde yeniden yayına girecektir.</p></div></center>
      
    </body></html>
     
    <script language="Javascript"><!--
    var isNS = (navigator.appName == "Netscape") ? 1 : 0;
    var EnableRightClick = 0;
    if(isNS)
    document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
    function mischandler(){
    if(EnableRightClick==1){ return true; }
    else {return false; }
    }
    function mousehandler(e){
    if(EnableRightClick==1){ return true; }
    var myevent = (isNS) ? e : event;
    var eventbutton = (isNS) ? myevent.which : myevent.button;
    if((eventbutton==2)||(eventbutton==3)) return false;
    }
    function keyhandler(e) {
    var myevent = (isNS) ? e : window.event;
    if (myevent.keyCode==96)
    EnableRightClick = 1;
    return;
    }
    document.oncontextmenu = mischandler;
    document.onkeypress = keyhandler;
    document.onmousedown = mousehandler;
    document.onmouseup = mousehandler;
    //-->
    </script></section></div></body></html>');
    }
    ?>
    dener misin
    Database Bağlantısı Kurulmadı! Hata Mesajı: SQLSTATE[HY000] [1045] Access denied for user 'ilan'@'localhost' (using password: YES)
  • 07-11-2023, 02:31:59
    #5
    DB hesap, sunucu vb bilgiler doğru mu ?
  • 07-11-2023, 02:32:33
    #6
    Üyeliği durduruldu
    ufuk_26 adlı üyeden alıntı: mesajı görüntüle
    DB hesap, sunucu vb bilgiler doğru mu ?
    evet
  • 07-11-2023, 02:35:37
    #7
    Üyeliği durduruldu
    script ilemi kaynaklı?
  • 07-11-2023, 03:14:43
    #8
    Şifre veya kullanıcı adı yanlış
  • 07-11-2023, 04:13:35
    #9
    Verdiğiniz PHP kodu örnek bir veritabanı bağlantısı kurmayı ve bir ayarlar tablosundaki verileri kontrol etmeyi gösterir. Eğer site_durum değeri 1 olarak ayarlanmışsa, yani site bakım modundaysa, kullanıcıya bir bakım modu uyarı sayfası gösterilir ve ayrıca JavaScript ile sağ tık fonksiyonelliği devre dışı bırakılır.
    Ancak kodunuzda düzeltilmesi gereken bazı noktalar var:
    1. Parola Açıklaması: Kodunuzdaki şifre yer tutucusunu (********) doğru bir şekilde kullandınız. Gerçek veritabanı parolanızı kodunuzda, özellikle de kamuoyuna açık bir ortamdaysa, asla paylaşmamalısınız.
    2. Hata Yakalama: PDOException yakalandığında, "Database Bağlantısı Kurulmadı!" mesajını ve ardından $error->getMessage() ile hata mesajını echo ile yazdırmalısınız. Şu anda bunları noktalı virgül ( ile yan yana yazmışsınız, bu düzeltilmeli. Aşağıda bu kısmı düzenleyeceğim.
    3. Script Sonlandırma: die() fonksiyonunu kullanarak bakım modu sayfası içeriğini yazdırıyorsunuz, bu doğru bir yaklaşım ancak bakım sayfası içeriğinin sonunda HTML olmayan ve ulaşılamayacak gereksiz içerikler var. JavaScript için <script> etiketi HTML içerisinde ve </body> etiketinin öncesinde yer almalı.
    4. Dil Etiketi: HTML etiketinizde lang="en" (İngilizce) dil belirteci varken içerik başka bir dilde görünüyor. Buna uygun bir dil belirteci kullanmalısınız.
    Şimdi bu sorunları düzeltelim:



    <?php

    $user = "ilan"; // VERİTABANI KULLANICI ADINI YERINE YAZIN
    $pass = "********"; // VERİTABANI ŞİFRENİZİ YERINE YAZIN

    // Veritabanı bağlantısını deneme
    try {
    $db = new PDO("mysql:host=localhost; dbname=ilan; charset=utf8;", $user, $pass);
    } catch (PDOException $error) {
    echo "Veritabanı bağlantısı başarısız: " . $error->getMessage();
    exit; // Eğer veritabanı bağlantısı başarılı değilse scripti sonlandır
    }

    // Ayarlar tablosundan veri çekme
    $ayarlar = $db->query('SELECT * FROM ayarlar')->fetch();

    // Eğer ayarlar başarıyla çekilirse, ayarları değişkenlere ata
    if ($ayarlar) {
    $sitetitle = $ayarlar['site_title'];
    $site = $ayarlar['site_url'];
    $desc = $ayarlar['site_desc'];
    $keyw = $ayarlar['site_keyw'];
    $bakim = $ayarlar['site_durum'];

    // Eğer site bakım modunda ise
    if ($bakim == 1) {
    // Bakım modu sayfasını göster
    die('<!DOCTYPE html>
    <html lang="tr"> <!-- İçeriğin diline uygun dil belirteci kullanın -->
    <head>
    <meta charset="utf-8">
    <title>Bakımdayız</title>
    <!-- Diğer head içerikleri (meta, stiller) -->
    </head>
    <body>
    <center>
    <div class="error-container">
    <h1>Bakımdayız!</h1>
    <p>Web sitemiz kısa süreli olarak bakıma girmiştir. En kısa süre içinde yeniden yayına girecektir.</p>
    </div>
    </center>
    <script language="Javascript">
    // Sağ tık fonksiyonelliğini devre dışı bırakan JavaScript kodunuz...
    </script>
    </body>
    </html>');
    }
    } else {
    echo "Veritabanından ayarlar çekilemedi.";
    }
    ?>


    Parola ve kullanıcı adı kısımlarını gerçek veritabanı bilgilerinizle değiştirmeyi unutmayın. Ayrıca, HTML içerisindeki dil etiketinin sitenizin içerik diline uygun olmasına dikkat edin.