PHP Benutzerrechte abfrabe Fehler

Superroger

Cadet 1st Year
Registriert
Jan. 2011
Beiträge
10
Guten Abend,

für meine Homepage brauche ich eine Abfrage, diese soll in die Datenbank von PMA gehen (Tabelle: "jos_users" Feld: "usertype") und feststellen ob der Benutzer der angemeldet ist die Benutzerrechte hat. Wenn er sie hat wird die php-Datei "index_benutzer.php" aufgerufen.
Nur bekomme ich die Fehlermeldung: Parse error: syntax error, unexpected T_IF in C:\xampp\htdocs\hak1_fussball\tabelleeinfuegenaendernloeschen\start.php on line 11

diese Zeile wäre
PHP:
echo if($RESULT["usertype"] == "Publisher") {


Hier der ganze Code
PHP:
<?php
//Anbindung der MYSQL Datenbank
include ("sys/anbindung_benutzer.inc.php");

//Abfrage in der Datenbank
$query=mysql_query("SELECT usertype FROM jos_users WHERE usertype");
mysql_real_escape_string($usertype);
$RESULT=mysql_query($SQL,$CONN);

//Wenn man als Registrierter Benutzer angemeldet ist ...
echo if($RESULT["usertype"] == "Publisher") {
$_SESSION["login"] = 1;
//Aufruf index_bunutzer.php
include("index_benutzer.php");
else
echo "Du hast nicht die erforderlichen Benutzerrechte!";
}

Ich seh mittlerweile den Wald vor lauter Bäume nicht mehr, ich hoffe ihr könnt mir sagen wo der Fehler liegt oder ob noch was fehlt.

danke im vorraus


gruß Roger
 
Wenn ich das echo streiche kommt zwar keine Fehlermeldung mehr, aber dafür passiert nichts. Es bleibt weißer Bildschirm, also fehlt noch irgendwas.
 
PHP:
[..]
//Wenn man als Registrierter Benutzer angemeldet ist ... 
if($RESULT["usertype"] == "Publisher") { 
$_SESSION["login"] = 1; 
//Aufruf index_bunutzer.php 
include("index_benutzer.php"); 
} else {
echo "Du hast nicht die erforderlichen Benutzerrechte!"; 
}
 
Ok dann sieht es so aus oder?
PHP:
<?php
//Anbindung der MYSQL Datenbank
include ("sys/anbindung_benutzer.inc.php");

//Abfrage in der Datenbank
$query=mysql_query("SELECT usertype FROM jos_users WHERE usertype");
mysql_real_escape_string($usertype);
$RESULT=mysql_query($SQL,$CONN);

//Wenn man als Registrierter Benutzer angemeldet ist ...
if($RESULT["usertype"] == "Publisher") {
$_SESSION["login"] = 1;
//Aufruf index_bunutzer.php
include("index_benutzer.php");
{
else
}
echo "Du hast nicht die erforderlichen Benutzerrechte!";
} 
?>

Jetzt kommt dieselbe Fehlermeldung für die Zeile mit dem else:(
Ergänzung ()

redeye86 schrieb:
PHP:
[..]
//Wenn man als Registrierter Benutzer angemeldet ist ... 
if($RESULT["usertype"] == "Publisher") { 
$_SESSION["login"] = 1; 
//Aufruf index_bunutzer.php 
include("index_benutzer.php"); 
} else {
echo "Du hast nicht die erforderlichen Benutzerrechte!"; 
}

Habs jetzt so gemacht und jetzt kommt die Else Nachricht also "Du hast nicht die erforderlichen Benutzerrechte!", immerhin ein Anfang. Ich bin aber angemeldet also fehlt noch immer was.
 
Code:
if($RESULT["usertype"] == "Publisher") {
$_SESSION["login"] = 1;
//Aufruf index_bunutzer.php
include("index_benutzer.php");
}
else
{ ... }
 
Zuletzt bearbeitet: (Zu spät :-))
Dann mach doch mal ein bisschen Debugging und schau dir mal an, was wirklich in $RESULT["usertype"] steht:

einfach vor dem if mal ein
PHP:
echo $RESULT["usertype"];
einfügen.
 
Mit dem echo davor kommt wieder die Parse error: syntax error, unexpected T_IF in ... Fehlermeldung.:(
 
Dann hast du aber nicht die genannte Zeile eine Zeile vor deiner if-Anweisung eingefügt, sondern das echo wieder direkt vor if(...) stehen
 
Also irgendwas scheinst du Grundlegend bei der Formatierung noch nicht begriffen zu haben. Eigentlich ist das relativ einfach und logisch.
Sieht der Code so ungefähr aus?

PHP:
<?php 
//Anbindung der MYSQL Datenbank 
include ("sys/anbindung_benutzer.inc.php"); 

//Abfrage in der Datenbank 
$query=mysql_query("SELECT usertype FROM jos_users WHERE usertype"); 
mysql_real_escape_string($usertype); 
$RESULT=mysql_query($SQL,$CONN); 


echo $RESULT["usertype"];  


//Wenn man als Registrierter Benutzer angemeldet ist ...  
if($RESULT["usertype"] == "Publisher") {  
$_SESSION["login"] = 1;  
//Aufruf index_bunutzer.php  
include("index_benutzer.php");  
} else { 
echo "Du hast nicht die erforderlichen Benutzerrechte!";  
}  
?>
 
Mr. Snoot schrieb:
Dann hast du aber nicht die genannte Zeile eine Zeile vor deiner if-Anweisung eingefügt, sondern das echo wieder direkt vor if(...) stehen

stimmt

@redeye86 sieht jetzt genauso aus, jetzt kommt wieder die Else Meldung
 
Das ist seltsam. Sicher das alle { wieder durch } geschlossen wurden und nirgends ein ; fehlt?
 
Ja, ich bin den Code schon ein paar mal durchgegangen kann aber keinen Fehler finden
 
Ok hier nochmal der gesamt Code
PHP:
<?php
//Anbindung der MYSQL Datenbank 
include ("sys/anbindung_benutzer.inc.php");

//Abfrage in der Datenbank
$query=mysql_query("SELECT usertype FROM jos_users WHERE usertype");
mysql_real_escape_string($usertype);
$RESULT=mysql_query($SQL,$CONN);

echo $RESULT["usertype"];  


//Wenn man als Registrierter Benutzer angemeldet ist ...  
if($RESULT["usertype"] == "Publisher") {
$_SESSION["login"] = 1;
include("index_benutzer.php");
} else {
echo "Du hast nicht die erforderlichen Benutzerrechte!"; 
}

?>

Ich hau mich mal aufs Ohr, vielleicht zeigt mir ja der Sandmann den Fehler:lol:
 
Ein "echo if" gibt es nicht !!!

Und der Grund warum nix funktioniert ist deine MySQL-Abfrage:
PHP:
$query=mysql_query("SELECT usertype FROM jos_users WHERE usertype"); 
mysql_real_escape_string($usertype); 
$RESULT=mysql_query($SQL,$CONN);

Du willst einen usertype auswählen, aber du sagst nicht von welchem user...

nehmen wir mal an:
$user = "benutzer1";

dann wäre die abfrage:
PHP:
$abfrage = "SELECT username, usertype FROM jos_users WHERE username LIKE '$user' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($row->usertype == "Publisher")
{...}
else
{...}


Aber da du nicht viel Ahnung hast würde ich dir erst mal dieses Tutorial empfehlen:
http://www.php-einfach.de/tuts_mysql_login.php


mfg
 
Zurück
Oben