php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.02.2012, 21:25  
Neuer Benutzer
 
Registriert seit: 04.02.2012
Beiträge: 11
PHP-Kenntnisse:
Anfänger
nichtskönner befindet sich auf einem aufstrebenden Ast
Standard login via php

hab von hier das Login system

aber die Seite (login.php) bleibt weiß und weitet mich nicht weiter

Also ab jetzt das versucht zu mchen was du gesagt hast aber es klappt nich was mache ich den falsch?

PHP Quellcode:
PHP-Code:
<?php
error_reporting
(-1);
ini_set('display_errors'true);

const 
USER_MIN_LEN 6; const USER_MAX_LEN 30;
const 
PASS_MIN_LEN 6; const PASS_MAX_LEN 30;

$user filter_input(INPUT_POST'user'FILTER_CALLBACK, array('options'=>
    function (
$user) {
        return 
strlen($user) >= USER_MIN_LEN &&
               
strlen($user) <= USER_MAX_LEN $user FALSE;
    }
));
$pass filter_input(INPUT_POST'pass'FILTER_CALLBACK, array('options'=>
    function (
$pass) {
        return 
strlen($pass) >= PASS_MIN_LEN &&
               
strlen($pass) <= PASS_MAX_LEN $pass FALSE;
    }
));

// so geht das bei der neuen mysqli-Extension:
 
$mysqli = new mysqli('localhost''tim''1234''timsdatenabnk') or die (mysqli_connect_errno());

if (
$user && $pass) {
    
$sql 'SELECT * FROM user WHERE
        user = "' 
$mysqli->escape_string($user) . '" AND
        pass = "' 
$mysqli->escape_string($pass) . '"';
    
$result $mysqli->query($sql);

    
// Ja, der Benutzer ist angemeldet und hat Zugang
// --------------- $result, und nicht $mysqli_stmt
// --------------- und prüfen ob es gleich 1 ist.
if ($result->num_rows($result) == 1)
 {
   
session_start();
  
$_SESSION["Login"] = "YES";
  
header('location: Kontakt.php');

}
else {
    
session_start();
    
$_SESSION["Login"] = "NO";
    
header('location: Home.php');
    
// Nein, der Benutzer existiert nicht
    // oder hat Name oder Passwort falsch eingegeben
}
}
// so geht das bei der neuen mysqli-Extension:

?>

Login formular
HTML Quellcode:
Code:
<form method="post" action="login.php">
 
            <p>Benutzername: <input type="text" name="user" /></p>
        <p>Passwort: <input type="password" name="pass" /></p>
                                                <br />
        <p><input type="submit" value="Login!" /></p>

hier meine Seite von der aus ich mich einlogge!
PHP Quellcode:
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
 
<head>
    <title>Tim-Webseite</title>
    <link href="style.css" type="text/css" rel="stylesheet" />
     <link rel="shortcut icon" href="icon.ico"/>
</head>
 
<body>
<header>
    <h1>Tim</h1>
    <h2>News</h2>
 
</header>
 
<nav>
    <ul>
       <li><a href="Home.php">News</a></li>
        <li><a href="http://www.youtube.com/user/Tim" target="_blank"><li>YouTube</li></a></li>
        <li><a href="Projekte.php">Projekte</a></li>
        <li><a href="Kontakt.php">Kontakt</a></li>
        <li><a href="Sonstiges.php">Sonstiges</a></li>
 
 
 
    </ul>
</nav>
</body>
    <section>
     <?php

 
require_once('config.php');

    
$query mysql_query("SELECT * FROM  news ORDER by id DESC ");

    while(
$row mysql_fetch_assoc($query)) {
        
$articleid $row['id'];
        
$hl $row['headline'];
        
$text nl2br($row['text']);
        
$from $row['author'];
        
$datum $row['creatdate'];
        
$time $row['creattime'];
      
      echo 
"<article><h2>{$hl}</h2>
            <p id='admin'>Geschrieben von: {$from} am {$datum} um {$time}</p>
            <p>{$text}</p>
            </article>"
;  }
    
?> 
    </section>
 
         <aside>
            <h3>Diese Seite ist von</h3>
            <p>TIM</p>
                 <a href="http://www.youtube.com/user/Tim">
                    <img src="avatar.jpg" alt="Tim" class="grossebild"/>
                 </a>
 
            <p></p>
            <h3>Login</h3>
 
      <form method="post" action="login.php">
 
            <p>Benutzername: <input type="text" name="user" /></p>
        <p>Passwort: <input type="password" name="pass" /></p>
                                                <br />
        <p><input type="submit" value="Login!" /></p>
 
 
 
       </aside>
 
       <footer>
       <p>&copy; made by Tim 2011</p>
 
       </footer>
</html>
das hier steht vor jeder meiner Adminseiten
PHP-Code:
<?php
session_start
();
if (
$_SESSION["Login"] != "YES") {
header("Location: Home.php");
die(
'access denied');
}
[...]
nichtskönner ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 04.02.2012, 21:27  
Erfahrener Benutzer
 
Registriert seit: 25.01.2009
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Capfly befindet sich auf einem aufstrebenden Ast
Capfly eine Nachricht über ICQ schicken Capfly eine Nachricht über MSN schicken
Standard

error_reporting auf E_ALL stellen!
__________________
MfG
~Capfly
Jetzt NEU! Cpix & Wbits Katahlan.de - Das Browsergame
Capfly ist offline   Mit Zitat antworten
Alt 04.02.2012, 21:34  
Neuer Benutzer
 
Registriert seit: 04.02.2012
Beiträge: 11
PHP-Kenntnisse:
Anfänger
nichtskönner befindet sich auf einem aufstrebenden Ast
Standard

bekomme keine meldung bleibt immer noch weiß =/

also der LoginCode steht in einer extra datei also login.php

ich logge mich auf Home.php ein, in der login.php werden die daten überprüft falls ja---> HomeAdmin.php falls nein --->home.php


für was ist eigenldich der code hier?
PHP-Code:
const USER_MIN_LEN 6; const USER_MAX_LEN 30;
const 
PASS_MIN_LEN 6; const PASS_MAX_LEN 30;

$user filter_input(INPUT_POST'user'FILTER_CALLBACK, array('options'=>
    function (
$user) {
        return 
strlen($user) >= USER_MIN_LEN &&
               
strlen($user) <= USER_MAX_LEN $user FALSE;
    }
));
$pass filter_input(INPUT_POST'pass'FILTER_CALLBACK, array('options'=>
    function (
$pass) {
        return 
strlen($pass) >= PASS_MIN_LEN &&
               
strlen($pass) <= PASS_MAX_LEN $pass FALSE;
    }
)); 
nichtskönner ist offline   Mit Zitat antworten
Alt 04.02.2012, 21:39  
Erfahrener Benutzer
 
Registriert seit: 25.01.2009
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Capfly befindet sich auf einem aufstrebenden Ast
Capfly eine Nachricht über ICQ schicken Capfly eine Nachricht über MSN schicken
Standard

Der überprüft die Länge der Eingaben.

Was steht denn im Quelltext der leeren Seite?
__________________
MfG
~Capfly
Jetzt NEU! Cpix & Wbits Katahlan.de - Das Browsergame
Capfly ist offline   Mit Zitat antworten
Alt 04.02.2012, 21:44  
Neuer Benutzer
 
Registriert seit: 04.02.2012
Beiträge: 11
PHP-Kenntnisse:
Anfänger
nichtskönner befindet sich auf einem aufstrebenden Ast
Standard

Ich bleibe in der login.php hängen

Home.php
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
 
<head>
    <title>Tim-Webseite</title>
    <link href="style.css" type="text/css" rel="stylesheet" />
     <link rel="shortcut icon" href="icon.ico"/>
</head>
 
<body>
<header>
    <h1>Tim</h1>
    <h2>News</h2>
 
</header>
 
<nav>
    <ul>
       <li><a href="Home.php">News</a></li>
        <li><a href="http://www.youtube.com/user/Tim" target="_blank"><li>YouTube</li></a></li>
        <li><a href="Projekte.php">Projekte</a></li>
        <li><a href="Kontakt.php">Kontakt</a></li>
        <li><a href="Sonstiges.php">Sonstiges</a></li>
 
 
 
    </ul>
</nav>
</body>
    <section>
     <?php

 
require_once('config.php');

    
$query mysql_query("SELECT * FROM  news ORDER by id DESC ");

    while(
$row mysql_fetch_assoc($query)) {
        
$articleid $row['id'];
        
$hl $row['headline'];
        
$text nl2br($row['text']);
        
$from $row['author'];
        
$datum $row['creatdate'];
        
$time $row['creattime'];
      
      echo 
"<article><h2>{$hl}</h2>
            <p id='admin'>Geschrieben von: {$from} am {$datum} um {$time}</p>
            <p>{$text}</p>
            </article>"
;  }
    
?> 
    </section>
 
         <aside>
            <h3>Diese Seite ist von</h3>
            <p>TIM</p>
                 <a href="http://www.youtube.com/user/Tim">
                    <img src="avatar.jpg" alt="Tim" class="grossebild"/>
                 </a>
 
            <p></p>
            <h3>Login</h3>
 
      <form method="post" action="login.php">
 
            <p>Benutzername: <input type="text" name="user" /></p>
        <p>Passwort: <input type="password" name="pass" /></p>
                                                <br />
        <p><input type="submit" value="Login!" /></p>
 
 
 
       </aside>
 
       <footer>
       <p>&copy; made by Tim 2011</p>
 
       </footer>
</html>
und das hier ist die Seite and die weitergeführt werden soll falls richtig
PHP-Code:
<?php

session_start
();
if (
$_SESSION["Login"] != "YES") {
header("Location: Home.php");
die(
'access denied');

}
require_once(
'config.php');


if (isset(
$_POST['submit']))
{

       
$hl $_POST['headline'];
       
$text $_POST['text'];
       
$from $_POST['from'];
       
$datum date('d.F.Y');
       
$time date('H:i');


       if (
$hl != "" || $text != "" || $from != "")
       {


           
$query mysql_query("INSERT INTO news Values('', '{$hl}', '{$text}', '{$from}', '{$datum}', '{$time}')");
           echo 
"Artikel wurde gepostet!";

       }


       else
       {
           echo 
"Bitte F&uuml;llen sie alle Felder aus";
       }

}





?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">

<head>
    <title>TIM-Webseite</title>
    <link href="style.css" type="text/css" rel="stylesheet" />
     <link rel="shortcut icon" href="icon.ico"/>
</head>

<body>
<header>
    <h1>TIM</h1>
    <h2>News</h2>

</header>

<nav>
    <ul>
        <li><a href="HomeAdmin.php">News</a></li>
        <li><a href="Codes.php"><li>CODES</li></a></li>
        <li><a href="ProjekteAdmin.php">Projekte</a></li>
        <li><a href="KontaktAdmin.php">Kontakt</a></li>
        <li><a href="SonstigesAdmin.php">Sonstiges</a></li>


    </ul>
</nav>
</body>


    <section>
          <article>
           <h2>Neue News erstellen!</h2>
           <form action="HomeAdmin.php"    method="post">

          <p>&Uuml;berschrift</p><input name="headline" type="text" /><br />
            <p>Geschrieben von:</p><input name="from" type="text" /><br />
          <p>Text:</p><textarea name="text" cols="80" rows="10"></textarea>         <br />
           <input name="submit" type="submit" value="Erstellen" />

          </form>
          </article>

       <?php
      
require_once('config.php');

    
$query mysql_query("SELECT * FROM  news ORDER by id DESC ");

    while(
$row mysql_fetch_assoc($query)) {
        
$articleid $row['id'];
        
$hl $row['headline'];
        
$text nl2br($row['text']);
        
$from $row['author'];
        
$datum $row['creatdate'];
        
$time $row['creattime'];

      echo 
"<article><h2>{$hl}</h2>
            <p id='admin'>Geschrieben von: {$from} am {$datum} um {$time}</p>
            <p>{$text}</p>

            <form action='loeschen.php?articleID=$articleid' method='POST'><input style='float:right' name='loeschen' type='submit' value='Beitrag L&ouml;schen!' /></form>

            </article>"
;  }

    
?>

    </section>

          <aside>
            <h3>Diese Seite ist von</h3>

            <p>TIM</p>

                 <a href="http://www.youtube.com/user/TIM"><img src="avatar.jpg" alt="TIM" class="grossebild"/></a>

            <p>Du befindest dich im Adminbereich</p>

            <h3>Logout</h3>
    <form action="logout.php" method="POST">
    <input type="hidden" name="logout" value="true" />
    <input type="submit" name="logout" value="Logout" />
    </form>
       </aside>
       <footer>
       <p>&copy; made by TIM 2011</p>

       </footer>

</html>
nichtskönner ist offline   Mit Zitat antworten
Alt 04.02.2012, 21:45  
Erfahrener Benutzer
 
Registriert seit: 25.01.2009
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Capfly befindet sich auf einem aufstrebenden Ast
Capfly eine Nachricht über ICQ schicken Capfly eine Nachricht über MSN schicken
Standard

Ich meine von der leeren Seite der Quelltext, der ausgegeben wird.
__________________
MfG
~Capfly
Jetzt NEU! Cpix & Wbits Katahlan.de - Das Browsergame
Capfly ist offline   Mit Zitat antworten
Alt 04.02.2012, 21:59  
Neuer Benutzer
 
Registriert seit: 04.02.2012
Beiträge: 11
PHP-Kenntnisse:
Anfänger
nichtskönner befindet sich auf einem aufstrebenden Ast
Standard

ist leer es steht nich drinen aber solte doch auch so sein oder? PHp codes stehen doch nicht im Quellcode.


Also ich will eigenldich nur das mein login system so sicher wie möglich istund das keiner auf die Amdinseiten zugreifen kann ohne sich daovr einzuloggen.
Außerdem will ich das es möglich ist das man sich mti verschiedenen Daten anmelden kann

z.b
id 1 user "Tim" Pw "123"
id 2 user "tom" pw "456"

Geändert von nichtskönner (04.02.2012 um 22:19 Uhr).
nichtskönner ist offline   Mit Zitat antworten
Alt 04.02.2012, 22:29  
Erfahrener Benutzer
 
Registriert seit: 03.04.2010
Beiträge: 186
PHP-Kenntnisse:
Anfänger
Suralc befindet sich auf einem aufstrebenden Ast
Standard

Du benutzt einmal mysqli(was zu bevorzugen ist(PDO evtl. sogar noch mehr)) und einmal das veraltete mysql, warum?

Außerdem solltest du Passwörter nicht als Plaintext in die DB schreiben.
__________________
Zitat:
Zitat von nikosch Beitrag anzeigen
Naja, anscheinend spricht die Steckdose kein HTTP. LOL
Suralc ist offline   Mit Zitat antworten
Alt 04.02.2012, 22:31  
Neuer Benutzer
 
Registriert seit: 04.02.2012
Beiträge: 11
PHP-Kenntnisse:
Anfänger
nichtskönner befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Suralc Beitrag anzeigen
Du benutzt einmal mysqli(was zu bevorzugen ist(PDO evtl. sogar noch mehr)) und einmal das veraltete mysql, warum?

Außerdem solltest du Passwörter nicht als Plaintext in die DB schreiben.
wie dann? bin erst heute auf mysqli umgestigen und weiß noch nciht alle mysqli codes für die mysql codes =/
nichtskönner ist offline   Mit Zitat antworten
Alt 04.02.2012, 22:47  
Erfahrener Benutzer
 
Registriert seit: 03.04.2010
Beiträge: 186
PHP-Kenntnisse:
Anfänger
Suralc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nichtskönner Beitrag anzeigen
wie dann? bin erst heute auf mysqli umgestigen und weiß noch nciht alle mysqli codes für die mysql codes =/
Wenn du prozedual arbeiten willst, ändert sich eigentlich nichts für dich, außer, das deine Funktionsnamen um einen Buchstaben erweitert werden.

Wenn du aber auf eine OOP-Variante umsteigen willst(zu bevorzugen):

http://php.net/manual/de/book.mysqli.php
bzw.:
http://php.net/manual/de/book.pdo.php
__________________
Zitat:
Zitat von nikosch Beitrag anzeigen
Naja, anscheinend spricht die Steckdose kein HTTP. LOL
Suralc ist offline   Mit Zitat antworten
Antwort


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
Login passabel?! Solu PHP Einsteiger 14 08.12.2011 11:04
Facebook Login und eigener Login Paralell blackcrow PHP-Fortgeschrittene 17 29.05.2011 21:03
[Erledigt] Weiterleitung nach Login Michelangelo PHP Einsteiger 3 05.01.2011 13:46
Login script zeigt immer formular an auch wenn eingeloggt sein sollte salix PHP Tipps 2010 2 28.03.2010 22:21
[Erledigt] Umgehung von Login Script verhindern. YEP PHP Tipps 2009 3 29.11.2009 18:27
login mit datenbank und sessions kael PHP Tipps 2009 4 23.11.2009 21:10
Zend Framework + Smarty + Login foxtrot Beitragsarchiv 0 29.10.2009 11:13
Seite nur nach Login anzeigen??? SimStar001 PHP Tipps 2009 1 16.03.2009 19:54
Forum Login per curl leb0rtran PHP Tipps 2008 1 19.03.2008 12:47
Etwas komplexerer Login --> Keine Angst, Suche benutzt dethlef14 PHP Tipps 2006 7 02.10.2006 00:35
.htaccess Login über HTML Login Felder gestalten php1 PHP-Fortgeschrittene 2 09.08.2006 13:53
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
phpBB Loginscript in eigenes Login Script einbinden 2wuck PHP Tipps 2007 4 19.12.2005 23:10
[Erledigt] Login, LogIn, Anmelden, Einloggen -&amp;amp;amp;amp;gt; ??? Off-Topic Diskussionen 20 14.07.2005 11:01
login mit session id PHP Tipps 2005 10 26.01.2005 12:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
login via php, pass_max_len pass_min_len

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