lostyazilim
tr.link

PHP 7 mysql_ problemi

4 Mesajlar 1.294 Okunma
acebozum
tr.link

bysabo bysabo WM Aracı Kullanıcı
  • Üyelik 23.09.2014
  • Yaş/Cinsiyet 34 / E
  • Meslek E-Ticaret
  • Konum İstanbul Avrupa
  • Ad Soyad i** E**
  • Mesajlar 95
  • Beğeniler 0 / 3
  • Ticaret 1, (%100)
Merhaba

Php 7 ve üzeri sürümde index.php ve config.php de sorunlar yaşıyorum. Sanırım scriptte kullanılan mysql bağlantılarını php7 desteklemiyor.

Aşağıdaki kodları php 7'e göre nasıl düzeltmemiz gerekiyor ?

index.php
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION = 'utf8_bin'");
$query = mysql_query("select * from ayarlar"); while($print = mysql_fetch_array($query)){
$sure = time()-$print['zaman']; $mysql = mysql_query("delete from sepet where zaman<'$sure'"); ?>



Config.php
'; exit(); }


$dbhost = "localhost";
$dbuser = "dbkullanici"; //Veritabanı Kullanıcı Adı
$dbpass = "dbsifre"; //Veritabanı Şifresi
$dbdata = "dbadi"; //Veritabanı Adı

if(!@mysql_connect($dbhost, $dbuser, $dbpass)){ die("Veritabanına bağlanılamadı...
HATA: ".mysql_error()); }

if(!@mysql_select_db($dbdata)){ die("Veritabanı seçilemedi
HATA: ".mysql_error()); }

?>
 

 

elektronikssl
webimgo

OmerGunay OmerGunay https://omergunay.net Kullanıcı
  • Üyelik 15.05.2015
  • Yaş/Cinsiyet 33 / E
  • Meslek PHP Developer
  • Konum İstanbul Avrupa
  • Ad Soyad Ö** G**
  • Mesajlar 1207
  • Beğeniler 382 / 381
  • Ticaret 16, (%100)
bysabo PDO ile değişeceksin kodlarını. https://www.erbilen.net/pdo-kullanimi/ burayı inceleyebilirsin.
 

 

Herkes yediğinden ikram eder..(Yavuz Sultan Selim)

bysabo bysabo WM Aracı Kullanıcı
  • Üyelik 23.09.2014
  • Yaş/Cinsiyet 34 / E
  • Meslek E-Ticaret
  • Konum İstanbul Avrupa
  • Ad Soyad i** E**
  • Mesajlar 95
  • Beğeniler 0 / 3
  • Ticaret 1, (%100)
Yukarıda bahsettiklerimi hallettim ancak index.php 'deki diğer alanlarda bir sürü hata var

örneğin aşağıdakini nasıl düzeltebiliriz ?

echo '
  • Kayıt bulunamadı.
  • '; }else{ while($fff = mysql_fetch_array($eee)){
    if($print['seourl']==".php"){ ?>
     

     

    Mango Mango WM Aracı Kullanıcı
    • Üyelik 23.11.2015
    • Yaş/Cinsiyet 30 / E
    • Meslek Front-End Developer
    • Konum Bursa
    • Ad Soyad N** K**
    • Mesajlar 311
    • Beğeniler 8 / 81
    • Ticaret 0, (%0)
    mysql fonksiyonları artık desteklenmiyor. Bunun yerine PDO veya mysqli sınıflarını kullanmanız gerekiyor.

    Örneğin, mysql_query yerine PDO'nun prepare ve execute metodları ile çalışmalısınız.

    $eee = mysql_query("select * from altkat order by id desc limit 0,".$print['lmtsy']."");

    yerine

    $eee = $db->prepare("select * from altkat order by id desc limit 0");
    $eee->execute();
    $veriCek = $eee->fetchAll(PDO::FETCH_ASSOC);
    foreach($veriCek as $veri) {
    echo $veri['lmtsy'];
    }


    gibi.

    Zaten farkettiyseniz bazı mysql fonksiyonlarının başına @ işareti koyularak hatalar gizlenmiş. Onları kaldırdığınızda PHP uyarısı ile karşılaşır ve bu fonksiyonların artık desteklenmediğine dair hata alırsınız.
    redkiit

    kişi bu mesajı beğendi.

    wmaraci
    wmaraci
    Site Ayarları
    • Tema Seçeneği
    • Site Sesleri
    • Bildirimler
    • Özel Mesaj Al