• 22-02-2017, 03:42:53
    #10
    Session olarak öyle bir atama yok ama sorguda ogrencitc_1453 değişkenine eşitlemişim, veritabanından gelen ogrencitc'yi.



    Cycl0ne adlı üyeden alıntı: mesajı görüntüle
    mysql_connect yerine pdo kullanın diyor. Bu şekilde düzeltin öncelikle.

    http://php.net/manual/tr/pdo.connections.php

    Session atama işlemini nerede yapıyorsunuz?

    $_SESSION['ogrencitc'] = 123; gibi?
  • 22-02-2017, 03:44:11
    #11
    şunu yapabilirsin

    $degisken = @$gelenveri?$gelenveri:false;
  • 22-02-2017, 03:53:18
    #12
    Fhm adlı üyeden alıntı: mesajı görüntüle
    Session olarak öyle bir atama yok ama sorguda ogrencitc_1453 değişkenine eşitlemişim, veritabanından gelen ogrencitc'yi.
    Session olarak öyle bir atama yoksa nasıl yazdırmayı planlıyorsunuz. Ayrıca yardımcı olmaya çalışıyorum ama kodları parça parça koyuyor veya hiç koymuyorsunuz.
  • 22-02-2017, 03:58:39
    #13
    Hocam acemiyim kusura bakmayın, bütün kodları ekleyeyim ona göre yönlendirin.

    Login.php Kodları:

    <?php
    	include("Connections/baglanti.php");
    	if($_POST){
    	
    		$kadi= mysql_real_escape_string ((int)$_POST['name']);
    		$sifre= $_POST['pass'];
    		
    		$sorgu = mysql_query('SELECT * from ogrenciler WHERE ogrencitc="'.$kadi.'" AND ogrencipass="'.$sifre.'" ');
    		
    
    	if (mysql_num_rows($sorgu))	{
    	
    	$liste = mysql_fetch_array($sorgu);
    	
    	
    	
    	echo "Hoşgeldin ".$kadi." giriş başarılı oldu.";
    	
    	header("location:log.php");
    	
    	}else
    	
    	{
    		header("location:index.php?error=1");
    	
    		}
    	}
    	?>

    İndex.php Kodları :

    <?php require_once('Connections/baglanti.php');?>
    
    <?php
    
    
    // ** Logout the current user. **
    $logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
    if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
      $logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
    }
    
    if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
      //to fully log out a visitor we need to clear the session varialbles
      $_SESSION['MM_Username'] = NULL;
      $_SESSION['MM_UserGroup'] = NULL;
      $_SESSION['PrevUrl'] = NULL;
      unset($_SESSION['MM_Username']);
      unset($_SESSION['MM_UserGroup']);
      unset($_SESSION['PrevUrl']);
    	
      $logoutGoTo = "index.php";
      if ($logoutGoTo) {
        header("Location: $logoutGoTo");
        exit;
      }
    }
    
    
    
    ?>
    
    <?php
    $ogrencitc_1453 = $_SESSION['ogrencitc'];
    $ogrenci = mysql_query('SELECT * from ogrenciler WHERE ogrencitc="'.$ogrencitc_1453.'" ');
    $ogrenci = mysql_fetch_array($ogrenci);
    
    $sinavlar	= mysql_query('
    				SELECT * FROM ogrenciler AS o 
    				INNER JOIN sonuc AS s ON o.`ogrenciid`=s.`ogrenciid` 
    				INNER JOIN denemesinavi  AS d ON d.`denemeid`=s.`denemeid` 
    				WHERE o.ogrencitc="'.$ogrencitc_1453.'" 
    		');
    
    ?>
    Baglanti.php Kodları :

    <?php
    
    session_name(substr(md5('http://'.$_SERVER['HTTP_HOST']), 0, 10));
    session_start();
    error_reporting(E_ALL); 
    ini_set('display_errors',1);
    
    $database_baglanti = ['yildiz'];
    $server		= "localhost";
    $nick		= 'root';
    $pass		= '';
    $databasename	= 'yildiz';
    
    
    $conn = mysql_connect('localhost', 'root', '') or die('Error');
    mysql_select_db('yildiz', $conn);
    $db = mysql_connect('localhost','root','') or die ('Error');
    
    ?>
    PDO'ya çevirmeye çalıştım verdiğiniz bağlantıya göre, o zaman da Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\log.php on line 35
    hatası verdi.

    Cycl0ne adlı üyeden alıntı: mesajı görüntüle
    Session olarak öyle bir atama yoksa nasıl yazdırmayı planlıyorsunuz. Ayrıca yardımcı olmaya çalışıyorum ama kodları parça parça koyuyor veya hiç koymuyorsunuz.
  • 22-02-2017, 04:12:31
    #14
    Hatalarınızı tek tek belirtmeye çalışacağım.

    if($_POST){

    }


    Hatalı kullanım buna çok sık rastlıyorum.


    $kadi= mysql_real_escape_string ((int)$_POST['name']);

    $_POST['name']'den gelen değeri sayıye çevirdikten sonra filtreden geçiriyorsunuz?

    $sifre= $_POST['pass'];
    Buna ise hiçbir işlem yapmamışsınız.

    echo "Hoşgeldin ".$kadi." giriş başarılı oldu.";
    header("location:log.php");

    ekrana çıktı verdikten sonra yönlendirme yapmaya kalkmışsınız. Bu kullanımda hatalı.

    PDO'ya çevirmeye çalıştım verdiğiniz bağlantıya göre, o zaman da Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\log.php on line 35


    PDO kütüphanesini inceleyebilirsiniz. İnternette bolca dökümantasyonu bulunuyor.


    Kodların bir kısmını internetten almışsınız sanırım. SESSION ile GET'i karıştırmış olabilir misiniz?
  • 22-02-2017, 04:17:05
    #15
    Teşekkürler ilginiz için.

    Cycl0ne adlı üyeden alıntı: mesajı görüntüle
    Hatalarınızı tek tek belirtmeye çalışacağım.

    if($_POST){

    }


    Hatalı kullanım buna çok sık rastlıyorum.


    $kadi= mysql_real_escape_string ((int)$_POST['name']);

    $_POST['name']'den gelen değeri sayıye çevirdikten sonra filtreden geçiriyorsunuz?

    $sifre= $_POST['pass'];
    Buna ise hiçbir işlem yapmamışsınız.

    echo "Hoşgeldin ".$kadi." giriş başarılı oldu.";
    header("location:log.php");

    ekrana çıktı verdikten sonra yönlendirme yapmaya kalkmışsınız. Bu kullanımda hatalı.

    PDO'ya çevirmeye çalıştım verdiğiniz bağlantıya göre, o zaman da Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\log.php on line 35


    PDO kütüphanesini inceleyebilirsiniz. İnternette bolca dökümantasyonu bulunuyor.


    Kodların bir kısmını internetten almışsınız sanırım. SESSION ile GET'i karıştırmış olabilir misiniz?
  • 22-02-2017, 23:02:37
    #16
    @Cycl0ne , açıklamasına ek olarak.

    $_SESSION['ogrencitc'] = $liste['ogrencitc']; 'yi atamanız gerek ki index.php de o değeri alsın.

    şifre için md5 yada sha1 gibi bir fonksiyon kullanmakta fayda var. Örneğin kendi giriş sayfam için bir ara şifreyi;

    $sifre=trim(addslashes(sha1(strtolower($_POST['kadi']).$_POST['ksifre'])));

    bu şekilde yapmıştım.

    Post ya da GET ten gelen veriyi temzilemekta fayda var.

    function temizle($veri){
    $veri = strip_tags($veri);
    $veri = addslashes($veri);
    $veri = mysql_real_escape_string($veri);
    return $veri;
    }

    kullanımı;

    $kullanici = temizle($_POST['kadi']);

    gibi.

    Header yönlendirmesi için öncesinde çıktı olmaması gerekir.

    Tavsiyem yeni başlıyorsanız, basit bir betik bulun ya da sıfırdan dökümanları okuyarak yapınız.