JeffLiteral Ответов: 1

Как мне исправить это уведомление: неопределенная переменная?


Когда пользователь находится в состоянии Не вошел в систему но он исчезает, когда пользователь зарегистрированный:

1. Обратите внимание: неопределенная переменная: uname in C:\xampp\htdocs\fileupload\contact.php на линии 9
2. Обратите внимание: неопределенная переменная: uname in C:\xampp\htdocs\fileupload\contact.php на линии 30

Вот коды, которые я использую:
  1  <?php
  2  	    session_start();
  3  	    if (!isset($_SESSION['username'])) {
  4  	    }
  5  	    else{
  6  		$uname=$_SESSION['username'];
  7  	    }
  8  	    
  9  	    if($uname!=""){
 10  		echo "<a class='brand' href='home.php'>Bais City Division LRMS</a>";?>
 11  		<div class="nav-collapse">
 12  		<ul class="nav">
 13  		    <li><a href="home.php">Home</a></li>
 14  		    <li><a href="about.php">About</a></li>
 15  		    <li class="active"><a href="contact.php">Contact</a></li>              
 16  		</ul>
 17  		<a class="btn btn-primary pull-right" href="logout.php" title="Click to logout"><?=$_SESSION['username']?></a>
 18  	    <?php
 19  	    }
 20  	    else{
 21  		echo "<a class='brand' href='index.php'>Bais City Division LRMS</a>";?>
 22  		<div class="nav-collapse">
 23  		<ul class="nav">
 24  		    <li><a href="index.php">Home</a></li>
 25  		    <li><a href="about.php">About</a></li>
 26  		    <li class="active"><a href="contact.php">Contact</a></li>              
 27  		</ul>
 28  	     <?php
 29  	    }
 30  		if($uname!=""){
 31  		}
 32  		else{
 33  	    ?>
 34  	    <a class="btn btn-primary pull-right" href="filter.php" title="Click to login">Login</a>
 35  	    <?php } ?>
 36            </div><!--/.nav-collapse -->
 37          </div>
 38        </div>
 39      </div>  
 40      <div id="mainsection">
 41          <div class="main">
 42  	<?php
 43  	    if($uname!=""){
 44  		echo "<a href='addfile.php'><button class='btn btn-success'>">Add File</button></a>";
 45  	    }
 46  	    else{
 47  	?>
 48             <a href="index.php?categ=Images"><button class="btn btn-inverse">Images</button></a>
 49  	   <a href="index.php?categ=Music"><button class="btn btn-success">Music</button></a>
 50             <a href="index.php?categ=Videos"><button class="btn btn-primary" id="clickme">Videos</button></a>
 51             <a href="index.php?categ=Documents"><button class="btn btn-info">Documents</button></a>
 52             <a href="index.php?categ=Text Files"><button class="btn btn-warning">Text Files</button></a>
 53             <a href="index.php?categ="><button class="btn">All Files</button></a>
 54  	<?php } ?>


Что я уже пробовал:

Я пробовал использовать глобальный тег, но необходимые кнопки, предназначенные только для вошедших в систему пользователей, появлялись даже тогда, когда ни один пользователь не входил в систему.

0x01AA

Пытался добавить номера строк, но, к сожалению, они не соответствуют вашему исходному коду. Пожалуйста, добавьте дополнительную информацию о том, что представляют собой эти две проблемные линии. извините и спасибо.

JeffLiteral

Я уже обновил номера строк, где происходят ошибки. Я просто надеюсь, что вы могли бы помочь мне с этим. Заранее спасибо.

0x01AA

Пока что спасибо.
Сейчас я почти ничего не знаю о php, но я уверен, что другие помогут вам здесь.

Для меня это выглядит как ключевой момент, который вы должны наблюдать:

if (!isset($_SESSION['username'])) {
}
else{
$uname=$_SESSION['username'];
}

и это выглядит так $_SESSION['username'] не определен и поэтому также $uname остается неопределенным. Но, как я уже упоминал, php-это не моя область, лучше дождитесь профов ;)

1 Ответов

Рейтинг:
8

0x01AA

Еще посмотри здесь

if (!isset($_SESSION['username'])) {
}
else{
   $uname=$_SESSION['username'];
}
$uname
не определяется скорее всего потому что
$_SESSION['username']
не определено

Я надеюсь, что это поможет


JeffLiteral

Спасибо. Работает как шарм.

0x01AA

Добро пожаловать. Большое вам спасибо за то, что вы приняли участие и проголосовали.