Punkte vergabe aber nicht für einen Admin

Gutne Abend,

ich habe mal eine ganz wichtige Frage. Auf meiner Seite vergebe ich Punkte für einzelne Sachen. Nun möchte ich das aber so machen, dass ein Admin keine Punkte bekommt. Hmm kann mir da jemand helfen wie ich das umsetzten kann?

So sieht das bis jetzt mal aus

PHP:
						    <?
 		    		    	//Points
 		    		    	$x = points_add(5);
 		    		    	if($x == false)
 		    		    	{
 		    		    		
 		    		    		 "Kein Benutzername in der session";
 		    		    	}
 		    		    	else
 		    		    	{
 		    		    		//echo points_get("all");
 		    		    	}
 		    		    	?>

Dann ein Admin wird bei mir so erkannt:

PHP:
($_SESSION["rights"]=="ad")

Na ja ich hoffe mir da kann da jemand helfen. Ach ja noch was. Könnte man die Funktion auch noch so erweiteren, dass z.B. ein Reload also mit F5 nicht möglich ist, also wenn das ein User macht, dass er dann keine Punkte mehr bekommt?

Gruß Claudia
 
PHP:
if ($_SESSION["rights"]!="ad") $x = points_add(5);

Und das mit dem Reload kannst du so machen, dass du, wenn ein User Punkte bekommt, die Zeit in die Datenbank schreibst. Immer bevor du Punkte vergibst schaust du dann wann das dieser User das letzte mal Punkte bekommen hat, wenn er wieder erhlaten darf gibst du sie ihm und sonst nicht.
 
Hallo,

habe ich dich richtig versntaden dass das ganze dann nun so aussehen wird oder?

PHP:
 <?
 							//Points
 							$x = points_add(5);
 							if($x == false)
 							{
 								
 								 "Kein Benutzername in der session";
 							}
 							else
 							{
 								//echo points_get("all");
 							}
 if ($_SESSION["rights"]!="ad") $x = points_add(5);  
  							?>
 
Nein nicht ganz, ich würde das so machen:
PHP:
if (emtpy($_SESSION['username']) {
    echo 'Kein Username in der Session';
}
else if ($_SESSION["rights"]!="ad") {
   $x = points_add(5);
}

$_SESSION['username'] musst du natürlich ersetzten mit dem Namen der Session wo der Username drin ist. Weisst du wie ich meine?
 
Nein.... wenn du mit der Variable x die Punkte setzt mach es so:
PHP:
<?
  //Points
  if ($_SESSION["rights"]!="ad"){
    $x = points_add(5);
  }
  if($x == false) {
      echo "Kein Benutzername in der session";
  } else {
    //echo points_get("all");
    header("LOCATION: irgendeineseite.html");
  }
?>

Mit dem header wird dann auch auf eine andere Seite gesprungen was dann dein Reload problem verhindert!

// EDIT: Da war jemand schneller ;)
 
Hallo,

aber wenn ich das so mache, wie Ihr das gerade gesagt habt, dann bekommt doch der Admin Punkte und das will ich ja gerade nicht. Und was soll das:

PHP:
 header("LOCATION: irgendeineseite.html");

woher bringst du das nun wieder?

Und was ist das ?

PHP:
if (emtpy($_SESSION['username']) {
 
Wenn du das so machst wie ich es Dir gesagt habe dann bekommt der Admin keine Punkte. 1. Leitet auf die Seite irgendeineseite.html um
2. prüft ob etwas in der Session "Username" drin ist (da fehlt noch eine Klammer;))
 
Hallo,

so geht das leider nicht, da kommt dann die Meldung:

Fatal error: Call to undefined function: emtpy() in /www/htdocs/v148718/bilder.php on line 388

In der Zeile steht dann:

PHP:
if (emtpy($_SESSION['benutzername'])) {

Ich habe doch gesagt es muss genau so sein wie ich das oben gemacht habe und dann einfach noch das mit dem Admin dazu das was du mir da geschrieben hast das ist was ganz anderes das geht dann mit meinen Funktionen nimmer.

Gruß claudia
 
Und nun kommt das :-(


Parse error: parse error, unexpected ')', expecting T_VARIABLE or '$'


So sieht mein Code nun aus:

PHP:
<?php
 if (empty()($_SESSION['benutzername'])) {
 	echo 'Kein Username in der Session';
 }
 else if ($_SESSION["rights"]!="admin") {
    $x = points_add(10);
 } 
 ?>

aber warum kann ich das nicht machen wie ich das oben schon gemacht habe da ging alles und dann einfach noch was mit dem Admin dazu. Ich verstehe das nicht
 
Zurück