Jump to content
Sign in to follow this  
aress12

Przekazywanie sesji w PHP, generator pliku. Strona z ogłoszeniami

Recommended Posts

Witam,

 

Od jakiegoś czasu klepie sobie stronkę z ogłoszeniami. Po dodaniu ogłoszenia generuje mi profil użytkownika z wszystkimi danymi z formularzy.

Tutaj zaczyna się problem: 

 

podaje dane do formularza >> wrzuca je do bazy danych >> przerzucam ID użytkownika w sesji z formularza do templatki aby wygenerować plik imie_nazwisko_id.php

W templatce mamy taki kod:

<?php
    session_start();
    include "../connection.php";
    $id = $_SESSION['sesja'];
    $sql = "SELECT imie,nazwisko,link_fanpage,opis,telefon,email,avatar,tlo,link_zdj1,link_zdj2 FROM ogloszenia WHERE id='$id';";
    $query = mysql_query($sql) or die(mysql_error());
    $row = mysql_fetch_array($query); 
?>

Teraz mam pytanie: jak podtrzymać tą sesje? Problem polega na tym że gdy odpale ten wygenerowany pliczek po raz pierwszy wszystko pięknie śmiga i zczytuje dane z bazy. Jednak po chwilii kiedy chce odpalić go jeszcze raz np. w incognito itd nie łapie mi tego ID, które mam przekazywane w sesji.

 

ewentualnie proszę o wskazówke jak to ID mogę przenosić miedzy pliczkami php bez sesji. Mogę przebudować wszystko tylko potrzebuje aby ktoś mnie nakierował.

 

Wygląda to jakby przekazywanie tego ID w sesji było jednorazowe i jako że uczę się to nie potrafię sobie z tym poradzić. 

Z góry dzięki za pomoc.

 

Share this post


Link to post

do zamkięcia, poradziłem sobie i zmieniłem strukture tworzenia pliku ☺️

  • Like 1

Share this post


Link to post

Może wróć do książek i teorii najpierw, bo piszesz i chcesz zrobić głupotę. Sesja, to mechanizm działający w obrębie danej aplikacji na jakiś czas. Aby mieć dostęp do danych sesyjnych, w pliku PHP - na samym początku - wystarczy umieścić:

<?php
session_start();

I tyle. Masz wtedy dostęp taki jak potrzebujesz. Natomiast (teoretycznie) nie będziesz mieć do nich dostępu z innej karty. W trybie incognito wszystkie dane - sesje, cache, ciasteczka - zostają wyczyszczone (identycznie jakbyś wszedł z innej przeglądarki czy innego sprzętu na swoją stronę), więc automatycznie nie będziesz mieć dostępu dodanych sesyjnych z innej karty.

 

A to o czym piszesz - tak wywnioskowałem - to chcesz zalogować się raz do aplikacji i mieć dostęp do niej wiecznie. Czyli jeżeli zalogujesz się u siebie w domu, to dostęp chcesz otrzymać nawet po drugiej stronie globu? 

  • Like 2

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Create a New Account. It’s free and easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
×
×
  • Create New...