Überprüfen ob Variable Definiert ist... wenn nicht mache Nichts (NOTICE problem)

Crav3X

Erfahrenes Mitglied
Hallo,

ich habe mit Sessions angefangen und ein kleines Notice problem...

Nach erfolgreichem Login soll das aus dem Login das User menü werden. Tut es auch... nur leider zeigt er im NICHT eingelogten bereich (also beim Login "formular") eine Notice das die Globalen Variablen $_SESSION['abc'] nicht definiert sind...

Nun suche ich eine möglichkeit mit einer kurzen abfrage die Variable auf ihre Definition zu überprüfen und dadurch die NOTICE bei nicht definierten Variablen zu unterbinden...


Aktuell sieht die login.php halt so aus...

PHP:
<?php 
if (1 > $_SESSION['users_rang'])
{
?>
<form method="post" action="index.php?crav=loginchk">
		<br>
		<table border="0" cellpadding="0" cellspacing="0" width="137">
			<tr>
				<td>Name:</td>
				<td><input type="text" name="nickname" size="10"></td>
			</tr>
			<tr>
				<td>Password:</td>
				<td><input type="password" name="passwd" size="10"></td>
			</tr>
		</table>
		<br>
		<input type="submit" name="submitButtonName" value="Login">
		</form>
<?php 
}
if ($_SESSION['users_rang'] > 1)

{
print "<a href=\"index.php?crav=admincontrol\">Admin Menü</a>";

}?>

Ich hoffe ihr könnt mir da helfen... mit fällt da leider nichts ein...
Danke
 
äh, jo Vielen Dank erstmal für die Antwort...

ganz ehrlich... versteh ich es nicht ganz... da $_SESSION ja als Array arbeitet mit den verschiedenen Varablen (users_rang) etc...

du könntest mit nicht freundlicherweise die abfrage oben einmal rein schreiben?

Wäre super Nett
 
Vermutlich so in der Art:

PHP:
<?php
....
if ( !isset( $_SESSION['users_rang'] ) ) 
{ 
?> 
<form method="post" action="index.php?crav=loginchk"> 
        <br> 
        <table border="0" cellpadding="0" cellspacing="0" width="137"> 
            <tr> 
                <td>Name:</td> 
                <td><input type="text" name="nickname" size="10"></td> 
            </tr> 
            <tr> 
                <td>Password:</td> 
                <td><input type="password" name="passwd" size="10"></td> 
            </tr> 
        </table> 
        <br> 
        <input type="submit" name="submitButtonName" value="Login"> 
        </form> 
<?php  
}
 
Ah... achja^^ ich stell mich manchmal auch an... unglaublich...

Jo, habs nun gelöst :)

Das ganze sieht dann so aus:

PHP:
<?php 
if ( !isset( $_SESSION['users_rang'] ) ) 
{
?>
<form method="post" action="index.php?crav=loginchk">
		<br>
		<table border="0" cellpadding="0" cellspacing="0" width="137">
			<tr>
				<td>Name:</td>
				<td><input type="text" name="nickname" size="10"></td>
			</tr>
			<tr>
				<td>Password:</td>
				<td><input type="password" name="passwd" size="10"></td>
			</tr>
		</table>
		<br>
		<input type="submit" name="submitButtonName" value="Login">
		</form>
<?php 
}
if ( isset( $_SESSION['users_rang'] ) ) {
if ($_SESSION['users_rang'] >= 2)
{
print "<a href=\"index.php?crav=admincontrol\">Admin Menü</a>";
}}
?>

Vielen Dank für die Hilfe ;)
 
PHP:
<?php 
if ( !isset( $_SESSION['users_rang'] ) ) 
{
?>
<form method="post" action="index.php?crav=loginchk">
        <br>
        <table border="0" cellpadding="0" cellspacing="0" width="137">
            <tr>
                <td>Name:</td>
                <td><input type="text" name="nickname" size="10"></td>
            </tr>
            <tr>
                <td>Password:</td>
                <td><input type="password" name="passwd" size="10"></td>
            </tr>
        </table>
        <br>
        <input type="submit" name="submitButtonName" value="Login">
        </form>
<?php 
}
elseif ($_SESSION['users_rang'] >= 2)
{
print "<a href=\"index.php?crav=admincontrol\">Admin Menü</a>";
}
?>

Schöner und kürzer ;)
 
Zurück