php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.01.2006, 02:10  
Erfahrener Benutzer
 
Registriert seit: 17.05.2004
Beiträge: 286
c01001
Standard Seiten sichern!?

Hallo,
habe MySQL DB und PHP auf mein server.

http://localhost/index.html
das sind die seiten standard seiten drin.

http://localhost/user/xyz/index.html
da sind die seiten von User drin.

Ich wollte wissen ob es möglich ist, das die user Seiten für alle gesperrt und so eingerichtet werden, so das man die Seiten erst zu sehen krigt wenn man sich angemeldet hat, mit username & passwort auf der Hauptseite.
http://localhost/index.html
Und dann kann man auch nur seine Seiten anzeigen lassen, die für den
user gedacht ist.

Die frage hat einer schon von euhc das mal gemacht mit PHP & MySQL oder weisst wo ich ne info kriegen kann?

Dank im Voraus
c01001.
__________________
Ob eine Sache gelingt, erfährst du nicht, wenn du darüber nachdenkst, sondern wenn du es ausprobierst.
c01001 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 19.01.2006, 10:46  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

localhost rules ...

Loginskript?
imported_Ben ist offline  
Alt 19.01.2006, 10:48  
Erfahrener Benutzer
 
Registriert seit: 09.03.2005
Beiträge: 219
webbi
Standard

HTML Dateien kannst du nicht per PHP Schützen. Du müsstest alle Dateien in PHP umwandeln und dann einen Schutz in jede(!) Datei einbauen.
Willst du ein Verzeichnis komplett schützen ist der einfachste Weg htaccess zu verwenden. Einfach mal nach dem Begriff suchen.
webbi ist offline  
Alt 19.01.2006, 10:51  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Oder c01001 kopiert für jeden User ein Template-Dateisystem in den Ordner.
Was natürlich der falsche Ansatz ist.
Zergling-new ist offline  
Alt 19.01.2006, 11:43  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Hier eine einfache Skizze, wie das etwa aussehen könnte. Wie webbi schon gesagt hat, muss aus den index.html natürlich ein index.php werden
(oder du leitest von index.html direkt auf index.php weiter).
index.php:
PHP-Code:
session_start();
if(!isset(
$_SESSION['user'])){
    if(!isset(
$_POST['go'])){
        if(isset(
$_SESSION['msg'])){
                     echo 
$_SESSION['msg'] . "
\n"
;
                     unset(
$_SESSION['msg']);
        }
        echo 
"
            <form method='POST'>
              <table border='0'>
                <tr><td>Name:</td><td><input name='user'/></td></tr>
                <tr><td>Passwort:</td><td><input type='password' name='passw'/></td></tr>
                <tr><td colspan='2'><input type='submit' name='go' value='Login'/></td></tr>
              </table>
            </form>\n"
;
    }
    else{
        if(<
Login gültig>){          // Muss natürlich angepasst werden
            
$_SESSION['user'] = $_POST['user'];
        }
        else{
            
$_SESSION['msg'] = "Ung&uuml;ltiges Passwort";
        }
        
header("Location: " $_SERVER['PHP_SELF']);
    }
}
else{
    echo 
"<a href=user/" $_SESSION['user'] . "/index.php>Deine Seite</a>";

Dann schribst du ein kleines Script, zb. login_test.inc.php:
PHP-Code:
$pfad explode('/'$_SERVER['PHP_SELF']);
if(
$_SESSION['user'] != $pfad[count($pfad) - 2]){
    die(
"Keine Berechtigung für diese Seite");

Diese includierst du dann in jedem user/<name>/index.php am anfang:
PHP-Code:
session_start();
include 
"../../login_test.inc.php";
... 
__________________
Gruss
L
lazydog ist offline  
Alt 19.01.2006, 19:49  
Erfahrener Benutzer
 
Registriert seit: 17.05.2004
Beiträge: 286
c01001
Standard

htaccess das sagt mir schon.
Loginscript ist achon auf meinserver.
Also ich bin gerade unterwegs aber mit dem Script unten sieht schon mal gut aus muss mir das ganuer anschauen.
Ob es so möglichst ist.
__________________
Ob eine Sache gelingt, erfährst du nicht, wenn du darüber nachdenkst, sondern wenn du es ausprobierst.
c01001 ist offline  
Alt 20.01.2006, 01:45  
Erfahrener Benutzer
 
Registriert seit: 17.05.2004
Beiträge: 286
c01001
Standard

Frage
muss die datei in jeden Ordner oder wie soll ich mir das vorstellen?
PHP-Code:
<?
$pfad 
explode('/'$_SERVER['PHP_SELF']);
if(
$_SESSION['user'] != $pfad[count($pfad) - 2]){
    die(
"Keine Berechtigung für diese Seite");
}
?>
oder muss ich für jeden user das manuel schreiben und das will ich ja nicht.
Ich möchte gern versuchen das über mysql.
So das welche Seite welche user sehen kann über MySQL läuft. Nicht das ich das tausend mal manuel machen muss.
__________________
Ob eine Sache gelingt, erfährst du nicht, wenn du darüber nachdenkst, sondern wenn du es ausprobierst.
c01001 ist offline  
Alt 20.01.2006, 09:13  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Natürlich kannst du das auch über die Datenbank machen. Dann änderst du eben die Login-Test-Datei (die nur einmal existiert) entsprechend ab. Wie du das machst, hängt natürlich von deiner Tabellen-Struktur ab. Das ändert aber nichts daran, dass dieser Test in alle User-Dateien eingebunden werden muss.
__________________
Gruss
L
lazydog ist offline  
 


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
gibt es überhaupt seiten mit validem HTML? imported_Ben Beitragsarchiv 104 22.06.2009 18:28
Frage zu Query Results auf mehreren Seiten verteilen whiggy Datenbanken 2 13.06.2006 22:05
[Erledigt] Zuviele Seiten werden angezeigt PHP Tipps 2007 5 24.12.2005 12:49
Mysql Inhalt auf mehreren Seiten verteilen... Datenbanken 4 02.11.2005 11:26
[Erledigt] gute seiten gesucht Off-Topic Diskussionen 1 09.10.2005 23:12
Wer kennt demo seiten Beitragsarchiv 2 16.07.2005 20:49
HTML Seiten generieren obi PHP Tipps 2005-2 5 05.06.2005 03:21
3 Seiten durch Passwort schützen mit einmaliger PW-Eingabe? PHP Tipps 2005 12 19.04.2005 22:41
Suche Programm um FTP-Server zu sichern Tears_of_Hate Off-Topic Diskussionen 2 07.02.2005 17:14
wml oder php/html Seiten automatisch erkennen Soese PHP Tipps 2005 4 13.01.2005 22:57
[Erledigt] div auf mehreren Seiten HTML, Usability und Barrierefreiheit 0 25.11.2004 19:10
PHP Seiten Cachen ?! MadCro PHP-Fortgeschrittene 6 02.11.2004 11:08
[Erledigt] Seitenaufrufe auf statischen Seiten mit PHP PHP-Fortgeschrittene 6 25.10.2004 18:59
Wie erstelle ich eine Suchseite für meine eigenen PHP Seiten PHP Tipps 2004 8 06.10.2004 12:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
seiten sichern

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:31 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.