php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.02.2007, 10:37  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Mache doch einfach in deiner Datenbank noch eine spalte mit Admin...

Dann kannst du gezielt die Spalte mitabfragen etc.

Nach deinen Beispiel:

PHP-Code:
if ( $data['admin'] )
{
  
header('Location: Seitexyz');
  exit;
}
else
{
  
header('Location: Seitexyz');
  exit;

Das is auf jeden fall ne bessere Masnahme, denn was is, wenn du das Passwort ändern musst, denn ganz erlich, admin is mein erster gedanke ... :wink:
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.02.2007, 10:38  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Zitat:
Zitat von M3g4Star
Naja trotzdem ist das ja wohl echt schwach.

Bitte schau dir das Tutorial an und mach's bitte mit 'ner weiteren Spalte in deiner DB die einfach als bool beschreibt ob Admin oder nicht !!

Weil ich mein ... warum nicht richtig machen .. und evtl. für weitere Projekte LERNEN !!!!!

War leider schneller
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 22.02.2007, 10:51  
Gast
 
Beiträge: n/a
Standard

@Tomtaz

ich habe eine spalte mit user und kennwort in der datenbank, darunter natürlich auch den admin....

die anweisung von dir klappt nicht ganz, da ich egal ob user oder admin auf die seite der zweiten anweisung komme.....d.h. es wird überhaupt nicht geprüft, ob admin oder user....???
 
Alt 22.02.2007, 10:55  
Erfahrener Benutzer
 
Benutzerbild von dsmcg
 
Registriert seit: 11.10.2005
Beiträge: 2.405
dsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäre
Standard

tabelle:
Code:
ID | username | PW    | admin
1     admin     123     TRUE
2     johan     456     FALSE
Machs irgendwie so.

Dann überprüfst du ob die Spalte admin TRUE oder FALSE ist.
__________________
Wie man Fragen richtig stellt
dsmcg ist offline  
Alt 22.02.2007, 11:48  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Ok, dann hier, aber nur weil ich jetzt Zeit für sowas habe.

Normalerweise müsstest du selber nachdenken...

PHP-Code:
<?php // Session starten
session_start ();

// Datenbankverbindung aufbauen
$connectionid mysql_connect ("xxx""xxx""xxx"); // Hier Benutzername und Passwort
//für die MySqldatenbank eingeben.
if (!mysql_select_db ("xxx"$connectionid)) // Hier den Datenbanknamen eingeben
{
  die (
"Keine Verbindung zur Datenbank");
}

$sql "SELECT ".
"Id, Nickname, Nachname, Vorname, admin ".
"FROM ".
"log ".
"WHERE ".
"(Nickname like '".$_REQUEST["name"]."') AND ".
"(Kennwort = '".md5 ($_REQUEST["pwd"])."')";
$result mysql_query ($sql);

if (
mysql_num_rows ($result) > 0)
{
  
// Benutzerdaten in ein Array auslesen.
  
$data mysql_fetch_array ($result);

  
// Sessionvariablen erstellen und registrieren
  
$_SESSION['admin'] = $data['admin'];
  
$_SESSION["user_id"] = $data["Id"];
  
$_SESSION["user_nickname"] = $data["Nickname"];
  
$_SESSION["user_nachname"] = $data["Nachname"];
  
$_SESSION["user_vorname"] = $data["Vorname"];

  if ( 
$data['admin'] )
  {
    
header('Location: /**Adminbereich*/');
    exit;
  }
  else
  {
    
header('Location: /**Userbereich (keine Admin)**/');
    exit;
  }
// End if
else // fals Kein Eintrag in DB
{
  
header ("Location: formular.php?fehler=1");
}
Natürlich musst du bei der SQL Abfrage "admin" durch die Admin-Spalte erstetzen.
Ausserdem reicht es wenn du für den admin ne Spalte mit INT(1) anlegst, weil du brauchst nur 1 für admin und 0 für kein Admin eintragen.
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 22.02.2007, 12:17  
Gast
 
Beiträge: n/a
Standard

@tomtaz

ja jetzt funktioniert es...lieben Dank für die Hilfe!


Lg,
Kinny
 
Alt 22.02.2007, 12:54  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

achte aber besser auf SQL-Injektion.

z.b. wenn du das als name eingibst,
test'+;GO+EXEC+cmdshell('format+C')+--

dann kann bei deiner Abfrage:

SELECT "."Id, Nickname, Nachname, Vorname, admin "." FROM "."log "." WHERE "."(Nickname like '".$_REQUEST["name"]."') AND "."(Kennwort = '".md5 $_REQUEST["pwd"])."')

Das passieren:

SELECT "."Id, Nickname, Nachname, Vorname, admin "." FROM "."log "." WHERE Nickname LIKE 'test' ;GO EXEC cmdshell('format C') --'

Hier wird der eigentlichen Abfrage ein weiterer Befehl angehängt. Die zwei Bindestriche (--) kommentieren das Hochkomma als Überbleibsel der eigentlichen Anfrage aus. Der Befehl ermöglicht das Formatieren der Festplatte, aber auch Downloads oder Ähnliches lassen sich dadurch erzeugen (am Beispiel Microsoft SQL Server).

http://de.wikipedia.org/wiki/SQL-Injektion
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 22.02.2007, 12:56  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Na siehste...


und war das jetzt so schwer?
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 22.02.2007, 12:58  
Gast
 
Beiträge: n/a
Standard

Nein gar nicht....ich muss noch sehr viel lernen!
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Variable in SQL Anweisung verwenden Beatbox PHP Tipps 2006 2 08.08.2006 16:32
else anweisung - kann ich nicht mikeda PHP Tipps 2006 24 07.04.2006 17:36
OOP SQL anweisung PHP-Fortgeschrittene 12 17.02.2006 14:17
Dynamische switch anweisung? Calli PHP Tipps 2006 12 11.01.2006 21:44
Variable in einer include() Anweisung PHP Tipps 2007 4 16.11.2005 12:18
[Erledigt] Update mit Select Anweisung verknüpfen Datenbanken 3 12.09.2005 16:37
Insert into anweisung bricht ab CrackPod PHP Tipps 2005 6 19.05.2005 11:06
if anweisung innerhalb von HEREDOC-Operator möglich? PHP Tipps 2005 11 16.05.2005 17:58
link anklicken und php anweisung ausführen Matthiasnet PHP Tipps 2005 4 07.03.2005 22:41
Frage zu ORDER BY Anweisung in SQL Befehl suendesizer PHP Tipps 2005 9 11.02.2005 12:26
mysql anweisung scheinbar falsch lindner PHP Tipps 2004-2 6 07.12.2004 15:04
If Anweisung mit zwei bedingungen Beatbox PHP Tipps 2004-2 8 17.11.2004 17:09
[Erledigt] switch anweisung PHP-Fortgeschrittene 9 17.11.2004 16:38
Was ist an dieser Include Anweisung falsch?? Beatbox PHP Tipps 2004 3 29.09.2004 21:08
einfache IF Anweisung PHP Tipps 2004 6 21.07.2004 10:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
if anweisung mit zwei bedingungen

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:33 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.