php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.06.2005, 18:58  
Benutzer
 
Registriert seit: 20.07.2008
Beiträge: 52
Luke_Skyscraper befindet sich auf einem aufstrebenden Ast
Standard ereg() Funktionsproblem

Ich versuche geade eine Passwort- und Benutzererkennung in einer Klasse zu schreiben(login) aber die angewannte Funktion ereg() gibt immer false zurück, obwohl die Eingaben richtig sind... Vielleicht liegt es ja an den regulären ausdrücken!?kann mir da jemand weiterhelfen?
PHP-Code:
<?php
function kontrolle($benutzer$passwort)
           {
                    
$filename "user.pdb";
                    if(!
file_exists($filename))
                    {
                     die (
"Fehler: Registrierungsdatei nicht gefunden!");
                    }
                    
$pw fopen($filename,"r");
                    
$fpw fread($pwfilesize ($filename));
                    if(!
ereg("^" $benutzer $passwort "$",$fpw))
                    {
                     echo (
"Fehler: Nutzerdaten falsch eingegeben!");
                     return 
false;
                    }
                    else
                    {
                    return 
true;
                    }
                    
fclose($pw);
           }
?>

danke Flow
Luke_Skyscraper ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 05.06.2005, 19:05  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

öhm das $ musst du schon escapen -> "\$" oder gleich die singe quotes nehmen '$' wäre so mal der erste blick
desweiteren in zukunft bitte so

[php]
<?

dein code]

?>
[/php ] (ohne die leerstelle vor der ])

dann sieht das ganze auch schön buntig aus
robo47 ist offline  
Alt 05.06.2005, 19:08  
Gast
 
Beiträge: n/a
Standard

Zitat:
if(!ereg("^" . $benutzer . $passwort . "$",$fpw))
Zunächst ist $benutzer und $passwort ein kompletter String.
Keine Leerzeichen oder sonstwas.

Deine Funkion prüft nun:
Es darf nicht $benutzer am Anfang und $passwort am Ende einer Zeile stehen.
Soll sicher so nicht sein.

EDIT:

Bzw. $benutzer$passwort darf garnicht vorkommen
 
Alt 05.06.2005, 19:11  
Benutzer
 
Registriert seit: 20.07.2008
Beiträge: 52
Luke_Skyscraper befindet sich auf einem aufstrebenden Ast
Standard

es sollte eigentlich

nutzernameasswort

in der Datei stehen, aber wie mach ich das?

flow

EDIT: ich muss nix escapen
Luke_Skyscraper ist offline  
Alt 05.06.2005, 19:13  
Gast
 
Beiträge: n/a
Standard

Jaaaaa dann musste denn Doppelpunkt auch mit angeben.
 
Alt 05.06.2005, 19:17  
Benutzer
 
Registriert seit: 20.07.2008
Beiträge: 52
Luke_Skyscraper befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von CIX88
Jaaaaa dann musste denn Doppelpunkt auch mit angeben.
das hab ich nicht gemacht, weil ich diesen ja später noch angeben kann... letztendlich ist es egal, wie Benutzername und Passwort in der Datei stehen, es muss nur möglich sein, dass eine Funktion später die Daten wieder auslesen kann
Luke_Skyscraper ist offline  
Alt 05.06.2005, 19:21  
Gast
 
Beiträge: n/a
Standard

Eigentlich willste doch nur überprüfen ob Benutzer und Passwort so auch in der Datei stehen ?
 
Alt 05.06.2005, 19:26  
Benutzer
 
Registriert seit: 20.07.2008
Beiträge: 52
Luke_Skyscraper befindet sich auf einem aufstrebenden Ast
Standard

genau

PHP-Code:
<?php
$this
->benutzer .= $passwort;
                    if(!
ereg($benutzer,$fpw))
?>
funktioniert, aber wieso nicht wenn ich

PHP-Code:
<?php
if(!ereg($benutzer $passwort,$fpw))

?>
schreibe?

Flow

Edit:
Ersteres funktioniert doch nicht ganz, denn jetzt gibt er immer True zurück, auch bei falschem Passwort -> FATAL!
Luke_Skyscraper ist offline  
Alt 05.06.2005, 19:28  
Gast
 
Beiträge: n/a
Standard

Ich habe das jetzt mal so probiert:

PHP-Code:
<?php

$benutzer 
"Name";
$passwort "Passwort";

// TXT-Datei mit einer Zeile: Name:Passwort
// deshalb dann $file[0]

$datei "test.txt";
$file file($datei);

if(
ereg("$benutzer\:$passwort"$file[0])) {
    echo 
"ja";
    } else {
    echo 
"nein";
    }

?>
In der TXT-Datei also Name:Passwort usw.
Das $ am Ende ist mist, da hier noch ein Zeilenumbruch kommt.
 
Alt 05.06.2005, 19:41  
Benutzer
 
Registriert seit: 20.07.2008
Beiträge: 52
Luke_Skyscraper befindet sich auf einem aufstrebenden Ast
Standard

klappt's bei dir?`bei mir nämlich nicht
Luke_Skyscraper 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
[Erledigt] Problem mit ereg Funktion! Horvi PHP Tipps 2008 7 20.05.2008 14:29
ereg() function fehler? Achilles PHP Tipps 2008 9 27.03.2008 12:10
ereg und Stringvorgaben nieselfriem PHP Tipps 2006 5 13.08.2006 16:14
preg / ereg replace FireFIghter PHP Tipps 2006 5 03.02.2006 14:59
Deutsche Erklaerung ereg und Liste escape-charakter PHP Tipps 2006 15 26.01.2006 09:02
Hilfe bei ereg PHP Tipps 2007 4 15.12.2005 11:37
ereg(), preg_match() oder was nu? PHP Tipps 2007 12 25.11.2005 22:40
ereg() PHP Tipps 2005-2 31 30.07.2005 14:12
Problem mit ereg PHP Tipps 2005 6 14.03.2005 19:32
ereg gegen strstr Mutatos PHP Tipps 2005 1 08.01.2005 22:10
ereg kommt fehlermeldung PHP Tipps 2004-2 9 16.12.2004 18:01
ereg Problem PHP Tipps 2004-2 6 13.12.2004 10:30
[Erledigt] (Verständnis-?)Problem mit ereg() PHP-Fortgeschrittene 2 14.08.2004 17:47
EREG - in allen Var's von "aussen" nach $ suchen Schaelle PHP Tipps 2004 4 13.06.2004 17:52
Frage zu Ereg() PHP Tipps 2004 6 02.06.2004 19:28


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