-
Ü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()); }
?>
-
Ü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)
-
Ü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"){ ?>
-
Ü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.
1 kişi bu mesajı beğendi.