• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

problem z zmiennymi sesyjnymi

Object Storage Arubacloud
0 głosów
110 wizyt
pytanie zadane 10 lutego 2017 w PHP przez Syl_177 Początkujący (250 p.)

Witam, 

mam problem z sesją. 

Mianowicie mam dwa pilki (log_in.php) i index.php, na samym samej górze skryptu ustawiłam session start (); 

Niestety zmienna sesyjna (error) ustawiona w pliku log_in.php nie wyswietla sie z pilku idex.php. 

log_in.php:


<?php
session_start();
 
require_once('dbconect.php');
require_once('funkcje.php');
 
$mysql = new mysqli($host, $db_user, $db_password, $db_name);
if ($mysql->connect_errno != 0) {
    echo "Connect Error:" . mysqli_connect_errno();
} else {
 
    $login = $_POST['login'];
    $password = $_POST['password'];
 
    $q = "SELECT * FROM members WHERE login='$login' AND password='$password'";
 
    $results = query($mysql, $q);
 
    $number_user = $results->num_rows;
 
    if ($number_user > 0) {
        $_SESSION['log_in']= true;
        $row = $results->fetch_assoc();
        $_SESSION['id'] = $row['id'];
        $_SESSION['login'] = $row['login'];
        $_SESSION['password'] = $row['password'];
 
        unset($_SESSION['error']);
        $results->free();
        header('location:dadaj.php');
    }
    else {
       $_SESSION['error']='<div style="color: red">Nieprawdidłowy login lub hasło </div>';
        header('location:index.php');
    }
 
    $mysql->close();
 
}
 
?>

index.php:

 


<? session_start();
if (isset ($_SESSION['log_in']) && ($_SESSION['log_in']==true)) {
    header('location:log_in.php');
}
?>
<html>
<meta charset="utf-8">
<title>NEW NEWS</title>
<head>
    <h1>Najnowsze informacje z kraju </h1>
    <link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<h2>Zaloguj się aby dodać news</h2>
<div class="form">
<form action="log_in.php" method="post">
   Login:<br> <input type="text" name="login"><br>
   Hasło:<br> <input type="password" name="password"><br>
    <input type="submit" value="Zaloguj" name="new_news">
</form>
    <?php
    if (isset($_SESSION['error'])) {
    echo  $_SESSION['error']; }
    ?>
</div>
<div style="clear: both"></div>
 
<?php
include_once('dbconect.php');
include ('funkcje.php');
$mysql = new mysqli($host, $db_user, $db_password, $db_name);
if ($mysql->connect_errno) {
    echo "Connect Error:" . mysqli_connect_errno();
}
 
$query = 'SELECT * FROM new_news ORDER BY id';
$results = query($mysql, $query);
$results = $results->fetch_all(MYSQLI_ASSOC);
 
foreach($results as $result) {
    ?>
   <div class="news">
       <h2><?php echo $result['nazwa'] ?></h2>
       <div class="author"><?php echo $result['autor']?></div>
       <div class="content">
           <?php echo $result['tresc'] ?>
       </div>
   </div>
<?php
}
?>
 
 
</body>
</html>

Nie umiem znaleść błędu proszę o pomoc. 
 

1 odpowiedź

0 głosów
odpowiedź 10 lutego 2017 przez Assasz Nałogowiec (30,460 p.)
Masz źle otwarty tag php w pliku index.php na samej górze i sesja przez to nie startuje.

Podobne pytania

0 głosów
3 odpowiedzi 446 wizyt
pytanie zadane 29 grudnia 2016 w PHP przez Ditrix Mądrala (5,650 p.)
+1 głos
1 odpowiedź 218 wizyt
pytanie zadane 15 października 2016 w PHP przez ThePatrykOOO Dyskutant (8,400 p.)
0 głosów
2 odpowiedzi 742 wizyt
pytanie zadane 6 lipca 2016 w PHP przez Radekol Bywalec (2,880 p.)

92,547 zapytań

141,388 odpowiedzi

319,506 komentarzy

61,931 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...