<?php error_reporting(0);
@ob_start();
@session_start();
@include("include/baglan.php");
@include("include/fonksiyonlar.php");
oturumkontrolana();
?>bu kodlar her projemde kullanırım. sunucuda sıkıntısız çalışır oturum açmamışsa giris.php ye yönlendirir. ama wamp serverde bu kodlar varken sayfa bembeyaz ve giris.php ye yönlendirmiyor. ama şimdi yaptığım bir çalışmada çalışma yaparken canlı görmeliyim. nasıl bu sorunu çözebilirim. yardımlarınızı alabilirmiyim.
session çalışmıyor
10
●226
- 27-01-2021, 22:02:52
- 27-01-2021, 22:15:31fonksiyon bu ( internete yüklediğimde sıkıntı yok)umut28 adlı üyeden alıntı: mesajı görüntüle
function oturumkontrolana(){ $ogrencimail = $_SESSION['ogrencimail']; $ogrencisifre = $_SESSION['ogrencisifre']; $oturumkontrol = mysql_query("select * from ogrenci where ogrencimail ='$ogrencimail' and ogrencisifre ='$ogrencisifre'"); $durum = mysql_fetch_array($oturumkontrol); if($durum){ }else{ echo '<script language="javascript">window.location="giris.php";</script>'; die(); } } - 27-01-2021, 22:22:59error_reporting(0); kısmını kaldırınca
( ! ) Error: Call to undefined function mysql_connect() in C:wamp64wwwtuskarakutuincludebaglan.php on line 1( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:wamp64wwwtuskarakutuincludebaglan.php on line 1
hatalarını alıyorum
oysa baglan.php de kodlarım şöyle : veritabanı adıda root
<?php $bag = mysql_connect("localhost","root",""); mysql_select_db("root",$bag) or die ("<br><br><center><font color='red'><strong>Veritabanina Baglanti Yapamadim! </strong> <br><br>Lutfen Bilgileri Kontrol Ederek Yeniden Deneyiniz.</center>"); mysql_query("SET NAMES 'utf8'"); ?> - 27-01-2021, 22:34:12Sürüm ve Pdo kaynaklı olduğunu anladım.
Fonksiyonlarıyla birlikte bana kütüphanesini paylaşacak olan varmı. oturumkontrol için PDO - 27-01-2021, 22:46:10Maalesef hocam benim elimde hazır bir kütüphane bulunmuyor ama github üzerinde illa ki bulursunuzahmetderyalar adlı üyeden alıntı: mesajı görüntüle
- 27-01-2021, 22:58:35Kimlik doğrulama veya yönetimden onay bekliyor.mysql_connect php 7 ve üzerinde çalışmayacaktır, kodlarınız oldukça eski ve sql injectiona müsait durumda. Fonkiyonunuzu şu şekilde değiştirmeyi deneyin;
function oturumkontrolana(){ global $database; // database adlı değişkende pdo bağlantısı yaptığınızı varsayıyorum if ( !isset( $_SESSION['ogrencimail'] ) || !isset( $_SESSION['ogrencisifre'] ) ) return false; $ogrencimail = $_SESSION['ogrencimail']; $ogrencisifre = $_SESSION['ogrencisifre']; $oturumkontrol = $database->prepare("SELECT COUNT(*) FROM ogrenci WHERE ogrencimail = :mail AND ogrencisifre = :password"); $oturumkontrol->bindValue("mail", $ogrencimail, PDO::PARAM_STR); $oturumkontrol->bindValue("password", $ogrencisifre, PDO::PARAM_STR); $oturumkontrol->execute(); $durum = $oturumkontrol->fetch()[0]; if ( $durum ) return true; return false; }Sonrasında oturumkontrolana(); şeklinde kullanmak yerine
if ( oturumkontrolana() ) { header('Location: giris.php', true, 303); exit; }Tarzında bir kullanım yapmanızı tavsiye ederim.