MySQL php session güncellememe sorunu

nizhenets
08-08-2019, 12:10   |  #1  
nizhenets avatarı
OP Taze Üye
Teşekkür Sayısı: 0
4 mesaj
Kayıt Tarihi:Kayıt: Şub 2019

 

Merhaba internet üzerinde saatlerce ve hatta günlerce bakındım buna benzer sorunlar yaşandığını gördüm ama benimki gibisini görmedim maalesef 


öncelikle sorunumdan bahsediyim kullanıcı form post şeklinde kayıt ve login oluyor herşey güzel herşey sorunsuz ama profilim.php kısmında para kullanıcı adı ip ve diğer tüm sessionlar güncellenmiyor.

güncellenmiyor demek istediğim databaseden örnek veriyorum kullanıcının parasını değiştirdiğimde sayfayı yeniliyorum ve login yaptığım zamandan kalma parasını gösteriyor güncellenmesi için kullanıcının logout ardından tekrar login yapması gerekiyor hangi fonksiyonu atlıyorum acaba ? veya sorun nerede ?

Bu kbilgileri.php

<?php

error_reporting(0);
session_start();


$servername = "";
$username = "";
$password = "";
$dbname = "";

$conn = new mysqli($servername, $username, $password, $dbname);
$new = mysqli_set_charset($conn, "uft8");
if ($conn->connect_error) {
        die("connection failed" . $conn->connect_error);
}


if ($_POST) {
  $username = mysqli_real_escape_string($conn, $_POST['username']);
  $password = mysqli_real_escape_string($conn, $_POST['password']);


$password = md5($password);
$giris = "SELECT * FROM kullanicilar WHERE username = '$username' AND sifre = '$password'";
    $getir = $conn->query($giris);
      if ($getir->num_rows>0) {
       while ($row = $getir->fetch_assoc()) {
        $_SESSION['email'] = $row['email'];
        $_SESSION['telefon'] = $row['telefon'];
        $_SESSION['kayittarih'] = $row['kayittarih'];
        $_SESSION['ip'] = $row['ip'];
        $_SESSION['songiris'] = $row['lastlogin'];
        $_SESSION['passwords'] = $row['sifre'];
        $_SESSION['online'] = $row['online'];
        $_SESSION['para'] = $row['balance'];
        $_SESSION['ip'] = $row['ip'];
        $_SESSION['isim'] = $row['isim'];
        header('location: index.php');
       }
      }


}
//if ($_POST) {
//  $username = $_POST['username'];


//$giris = "SELECT * FROM kullanicilarinparasi WHERE username = '$username' AND sifre = '$password'";
//    $getir = $conn->query($giris);
//      if ($getir->num_rows>0) {
//       while ($row = $getir->fetch_assoc()) {
//        $_SESSION['para'] = $row['balance'];
//        header('location: index1234.php');
//       }
//      }


//}
//?>

Pikod
10-09-2019, 19:55   |  #2  
Pikod avatarı
Taze Üye
Teşekkür Sayısı: 0
17 mesaj
Kayıt Tarihi:Kayıt: Ara 2018

Dostum yaptığın baştan sona çok saçma.

Ilk olarak yazdığın kodların nasıl çalıştığını anlatayım:

Kod çalışıyor ve veri tabanından gelen bilgiler sessionlar'a aktarılıyor.
Giriş yapılıyor ve ana sayfa gösteriliyor.
Sen veri tabanında bir güncelleme yapıyorsun.
Sonrada php'ye para sessionunu okumasını istiyorsun

İyide sessionlar veri tabanındaki veri güncellenince nasıl güncellesinler :D

Dediğin sistem çoook ayrı yapılıyor.

Yapman gerekeni bir resim ile özetleyeceğim...

https://hizliresim.com/VQN0PP

Kodlar:

function kullaniciCek($baglanti = false, $kullanici = false){
        if ($baglanti == false || $kullanici == false) {
                echo "Bağlantı veya kullanıcı adı girilmemiş!";
                return 0;
        }else{
                $komut = "SELECT * FROM users WHERE kullaniciAdi = '".$kullanici."'";
                $query = mysqli_query($conn, $komut);
                $data = mysqli_fetch_array($query, MYSQLI_BOTH);
                return $data;
        }
}
?>

KULLANIM: echo kullaniciCek($mysqlBaglantisi, $kullanici)['para'];

Son Düzenleme: Pikod ~ 10 Eylül 2019 19:56 Neden: Bir şeyi anlatmamışım xD