2015-04-09 4 views
0

Ну, в настоящее время я пытаюсь написать код, который проверяет, является ли поток подергиваний живым или нет. Для этого я создал массив $_SESSION['errors']; На втором .php$_SESSION['errors'] либо дано «живое», либо «Не живое», однако всякий раз, когда он возвращается к первой странице .php, $_SESSION['errors'] будет перезаписан в точке, в которой он был определен.Переменная PHP, которая перезаписывается

Мой вопрос в том, как, если возможно, я обойду эту проблему.

Код:

PHP в index.php:

<?php 
$_SESSION['errors'] = ''; 
echo $_SESSION['errors']; 
?> 

PHP от streaminfo.php:

<?php 
    if (empty($_POST) === false) { 
     header('Location: index.php'); 
    } 
    $streamer = $_POST['username']; 
    $apiurl = "https://api.twitch.tv/kraken/streams/" . $streamer; 
    $apicontent = file_get_contents($apiurl); 
    $streamerinfo = json_decode($apicontent); 

      if ($streamerinfo->stream == '') { 
       echo '<h2>' . 'Streamer is not live' . '</h2>'; 
       $_SESSION['errors'] = 'not live'; 
       header('Location: index.php'); 
      } 
?> 

Я понимаю, что я перезаписью массив, когда index.php загружен, однако Я должен определить его, и я не знаю, что его определить.

+0

Где ваш 'session_start();'? – Rizier123

+2

У вас есть *, чтобы определить его? Почему бы не проверить, если он определен, и если он не *, то * вы его определяете? –

ответ

1

Вы можете проверить, нет ли элемента, и если да, вы можете определить его.

index.php:

<?php 
session_start(); // Do you have this in another file? 
if (empty($_SESSION['errors'])) { 
    $_SESSION['errors'] = ''; 
} 
echo $_SESSION['errors']; 
?> 
Смежные вопросы