Hilfe bei Mysql Abfrage mit Php

02/22/2014 00:15 Counfiused#1
Serv .. ich hab ein kleines Login Script und möchte nun den eingeloggten User ($_SESSION["username"];) in meiner Datenbank abfragen und anschließend überprüfen welchen Eintrag die Spalte "Rang" des Users hat.

Nun möchte ich dem ganzen noch Anweisungen geben:
Steht in "Rang" der Wert "100" dann echo "Admin"
Steht in "Rang" der Wert "10" dann echo "User"

Ich hab es geschafft den Wert in Rang von User so und so auszulesen, aber nicht dem ganzen eine Anweisung zu geben. Kann mir da jemand behilflich sein?

Mein bisheriger Fortschritt ..

Code:
<?php
$verbindung = mysql_connect($_CONFIG["log_host"], $_CONFIG["log_user"], $_CONFIG["log_pwd"]) 
or die ("Verbindung fehlgeschlagen.");

mysql_select_db($_CONFIG["log_db"])
or die ("Verbindung zur Datenbank fehlgeschlagen.");
							
$abfrage = "SELECT * FROM accounts WHERE user = '/* eingeloggten User abfragen */'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo "$row->rang <br>";
}
?>
02/22/2014 00:52 Syc#2
Einfach mit ner If den Wert abfragen? Oder versteh ich was falsch?
02/22/2014 01:31 Counfiused#3
Quote:
Originally Posted by Sycophantic View Post
Einfach mit ner If den Wert abfragen? Oder versteh ich was falsch?
Und die If Anweisung bau ich wie ein? Hab nicht wirklich Ahnung von Php und Mysql hab mir den obigen Code notdürftig zusammengebastelt.

Hätte das so gemacht, nur wie krieg ich das nun in Mysql?

Code:
SELECT user FROM accounts WHERE user = '$_SESSION['username']'";
IF rang 100 THEN ECHO "You are a Admin"
IF rang 10 THEN ECHO "You are a Member"
02/22/2014 01:40 Requi#4
mysql_fetch gibt einen Array zurück.
Den musst du nur überprüfen.

$row = mysql_fetch_assoc(query)
if($row['rang'] == "100") {
echo 'Admin';
}


Das ist Pseudocode und am Handy geschrieben.
02/22/2014 02:05 Counfiused#5
Danke hab es mit deinem Tip zum laufen bekommen!

Code:
<?php
$verbindung = mysql_connect($_CONFIG["log_host"], $_CONFIG["log_user"], $_CONFIG["log_pwd"]) 
or die ("Verbindung fehlgeschlagen.");

mysql_select_db($_CONFIG["log_db"])
or die ("Verbindung zur Datenbank fehlgeschlagen.");
														
$abfrage = "SELECT * FROM accounts WHERE user = '$_SESSION[username]'";
$ergebnis = mysql_query($abfrage);							
$row = mysql_fetch_assoc($ergebnis);

if($row['rang'] == "100") {
echo 'Welcome back, <font color="red">';
echo ucfirst ($_SESSION['username']);
echo '</font>';
?>
02/22/2014 13:38 Cℓoud#6
Hab mal noch ne Frage zu Mysql Abfragen. Ich möchte gerne eine Memberlist erstellen in der Username, Rang und Login stehen. Die Abfrage für die Daten bekomme ich hin:

Code:
<?php
	$abfrage = "SELECT user, rang, date FROM accounts";
	$ergebnis = mysql_query($abfrage);

	while($row = mysql_fetch_object($ergebnis)) {
	
	echo "<table><tr>";
		echo "<td>";
		echo "$row->user";
		echo "</td>";
 
		echo "<td>";
		echo "$row->rang";
		echo "</td>";
 
		echo "<td>";
		echo "$row->date";
		echo "</td>";
	echo "</table></tr>";
	}
?>
Allerdings bekomme ich die Anweisung nicht hin das wenn Rang 100 ist der betroffene $row->user in rot ausgegeben wird. Hab folgendes versucht funktioniert jedoch nicht.

Code:
<?php
$abfrage = "SELECT user, rang, date FROM accounts";
	$ergebnis = mysql_query($abfrage);
	$row = mysql_fetch_assoc($ergebnis);
						
	echo '<table><tr>';
						
	if "rang" == "100" {
	echo '<td><span class="admin">';
	echo '$row->user';
	echo '</td></span>';
	}
						
	if "rang" == "10" {
	echo '<td><span class="member">';
	echo "$row->user";
	echo '</td></span>';
	}
						
	echo '<td>';
	echo "$row->rang";
	echo '</td>';
						
	echo '<td>';
	echo "$row->date";
	echo '</td>';
						
	echo '</tr></table>';
?>
02/22/2014 14:09 ~ JWonderpig ~#7
Deine if Abfragen stimmen nicht.

Code:
if "rang" == "100" {
...
}
Ergibt keinen Sinn
Probier mal so etwas in der Art

Code:
if $row['rang'] == "100" {
...
}
02/22/2014 18:05 3lue#8
Schaut euch alle am besten mal mysqli an, bevor euch in den nächsten Monaten euer komplettes Tool in Arsch fährt.
02/23/2014 01:34 Ihsukay#9
oder in meinen Augen so besser PDO.