| 
		|  Willkommen |  
	|  |  
 
		|  myGully |  
	|  |  
 
		|  Links |  
	|  |  
 
		|  Forum |  
	|  |  
 |  | 
	
		|  |  
	
	
		
	
	
	
		|  22.01.13, 16:50 | #1 |  
	| Erfahrener Newbie 
				 
				Registriert seit: Dec 2010 Ort: Hannover 
					Beiträge: 120
				 
		
			
				 Bedankt: 97 
			
		
	      | 
				 If abfrage aus datei (hilfe) 
 
			
			VERGESSEN IN ÜBERSCHRIFT -> PHP 
ich bin NICHT erfahren und habe schon alles mögliche probiert .. 
aber nix will so richtig ..
 
ich versuche es mir momentan selber beizubringen 
 
nun zu meinem problem .
 
in einer datei ( die den usernamen trägt [jeweilig in $user" variable]) sind username und pw angegeben 
datei liegt im ordner "user" 
nun will ich die zwie sachen in eine verschiedene array reinhaben. [0],[1] 
(hab das schon pro absatz versucht, das will aber auchnicht so.
 
mein aktueller code:
 
	PHP-Code: 
		
			
<?php$pw = $_POST["pw"];
 $user = $_POST["user"];
 chdir("user");
 $array = implode("",file($user));
 if($user==$array[0] && $pw==$array[1])
 {
 echo "Sie sind eingeloggt ( Es passiert jetzt nix weiter)";
 }
 else
 {
 echo "Falscher Username oder Passwort";
 }
 ?>
 irgendwie glaube ich, das die if abfrage nicht funktioniert ..
 
MfG 
Slluxx
		 |  
	|   |   |  
	
		
	
	
	
		|  22.01.13, 17:35 | #2 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
 
			
			chdir($user);   |  
	|   |   |  
	
		
	
	
	
		|  22.01.13, 18:07 | #3 |  
	| Erfahrener Newbie 
				 
				Registriert seit: Dec 2010 Ort: Hannover 
					Beiträge: 120
				 
		
			
				 Bedankt: 97 
			
		
	      | 
 
			
			der ordner ist fest "user" ^^
 aber im ordner user wird die datei $user angelegt ..
 |  
	|   |   |  
	
		
	
	
	
		|  22.01.13, 21:48 | #4 |  
	| Stammi 
				 
				Registriert seit: Jan 2010 
					Beiträge: 1.122
				 
		
			
				 Bedankt: 1.457 
			
		
	      | 
 
			
			inhalt der variablen ausgeben lassen (var_dump(implode("",file($user)); 
wie sind in der datei username und passwort eigentlich voneinander getrennt?
 
ggf auch mal mit error ausgabe in php beschäftigen, hilft bei der fehlersuche. zBsp: [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren  ]
		
				__________________Irgendwie komisch, dass das was wir gemeinhin als "unmenschlich" bezeichnen, ausschließlich Verhalten von Menschen beschreibt.
 |  
	|   |   |  
	
		
	
	
	
		|  22.01.13, 22:16 | #5 |  
	| Erfahrener Newbie 
				 
				Registriert seit: Dec 2010 Ort: Hannover 
					Beiträge: 120
				 
		
			
				 Bedankt: 97 
			
		
	      | 
 
			
			ich kann sie durch absatz trennen . momentan ist es aber ein leerzeichen(absatz ist mir lieber .)
 
 kannst du / ihr mir das gleich in meinen code einfügen ? . dann vestehe ich den zusammenhang besser ^^
 MfG
 Slluxx
 |  
	|   |   |  
	
		
	
	
	
		|  23.01.13, 07:30 | #6 |  
	| Stammi 
				 
				Registriert seit: Jan 2010 
					Beiträge: 1.122
				 
		
			
				 Bedankt: 1.457 
			
		
	      | 
 
			
			im moment sucht dein implode nicht nach einem trennzeichen, es wird user und pw also nicht korrekt aus der datei extrahieren; aus dem grund muss die if abfrage im else landen.
 darauf solltest Du mit dem Ausgeben des Ergebnis selbst kommen.
 
 in Deinen Code einfügen .. sorry, nein.  Das Du Zusammenhang bzw. Funktion Deines Code besser verstehst wenn es jemand anderes für Dich macht, halte ich für eine Fehleinschätzung.
 
				__________________Irgendwie komisch, dass das was wir gemeinhin als "unmenschlich" bezeichnen, ausschließlich Verhalten von Menschen beschreibt.
 |  
	|   |   |  
	
		
	
	
	
		|  23.01.13, 10:40 | #7 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
				  
 
			
			
	Zitat: 
	
		| 
					Zitat von Slluxx  der ordner ist fest "user" ^^
 aber im ordner user wird die datei $user angelegt ..
 |  stümmt ^^ hatte ich in der eile überlesen    der ordner ist fest ....
 
JETZT habe ich mir mal kurz zeit genommen    
1. das s***** funktioniert nur dann, wenn VORHER z.b. ein formular die variablen pw und user via POST gesendet hat. ein direkter aufruf des s*****s wird also nicht hinhauen - ausser du änderst ZUM TEST auf $_GET; um das s***** zu testen, müssen die vars beim aufruf des s*****s aber in die url. 
2. haut dein implode SO nicht hin;  man explodiert strings   
3. dein s***** schmeisst einen fehler, falls $user nicht als file vorliegt 
4. chdir("user")  - zum lernen ja, später wirds besser  - gell   
<?php 
$pw = $_GET["pw"]; // bzw. $_POST wenns vom formular kommt 
$user = $_GET["user"]; // siehe oben 
chdir("user"); 
//$array = implode("",file($user)); 
$array =  explode(" ", file_get_contents($user)); 
if($user==$array[0] && $pw==$array[1]) 
   { 
   echo "Sie sind eingeloggt ( Es passiert jetzt nix weiter)"; 
   } 
else 
   { 
   echo "Falscher Username oder Passwort"; 
   } 
?>
 
dein benutzerfile darf hier natürlich keine endung haben;
 
obiges beispiel funktioniert mit dem trennzeichen " " zwischen pw und user
 
^^    |  
	|   |   |  
	
		
	
	
	
		|  23.01.13, 10:55 | #8 |  
	| Mamas Liebling 
				 
				Registriert seit: Jan 2012 
					Beiträge: 57
				 
		
			
				 Bedankt: 10 
			
		
	      | 
 
			
			kleiner Tipp von mir.
 Ich arbeite auch gerade an einer neuen Website komplett mit Userinterface, Datenbankanbindung und bla bla bla^^
 
 Mach sowas wie User-Daten (Benutzername, PW, Mail, usw) nicht in einer Datei. das ist nachher zu umfangreich und brauch nachher viel zu viel rechenleistung vom Server (weis ja nicht was du dort noch alles speicherst).
 
 am besten ist es wenn du die User-Daten in eine Datenbank speicherst und wenn sich ein User einloggt mit seinen Daten, dann kannst du das mit Sessions lösen (damit er eingeloggt bleibt).
 
 Ist meiner Meinung nach die bessere lösung und da du ja Anfänger mit PHP bist, kann ich es dir nur ans Herz legen so viel wie möglich über Datenbanken zu machen. Da kommst du früher oder später nicht mehr drumherum.
 
 
 MfG
 
 Euer Exe777
 
				__________________Ich: MÖPSE!!!
 Schwiegervater: WOOO?
 Ich: na da hinten
 Schwiegervater: das ist meine Tochter -.-
 |  
	|   |   |  
	
		
	
	
	
		|  23.01.13, 11:09 | #9 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
				  
 
			
			
	Zitat: 
	
		| 
					Zitat von Exe777  kleiner Tipp von mir.
 Ich arbeite auch gerade an einer neuen Website komplett mit Userinterface, Datenbankanbindung und bla bla bla^^
 
 Mach sowas wie User-Daten (Benutzername, PW, Mail, usw) nicht in einer Datei. das ist nachher zu umfangreich und brauch nachher viel zu viel rechenleistung vom Server (weis ja nicht was du dort noch alles speicherst).
 
 am besten ist es wenn du die User-Daten in eine Datenbank speicherst und wenn sich ein User einloggt mit seinen Daten, dann kannst du das mit Sessions lösen (damit er eingeloggt bleibt).
 
 Ist meiner Meinung nach die bessere lösung und da du ja Anfänger mit PHP bist, kann ich es dir nur ans Herz legen so viel wie möglich über Datenbanken zu machen. Da kommst du früher oder später nicht mehr drumherum.
 
 
 MfG
 
 Euer Exe777
 |  ein richtiges(!) login-s***** schaut ja eh total anders aus; er sagte jedoch, er wolle "lernen"; 
ich finde den ansatz gut, grundsätzliches zunächst ohne db zu lernen. 
 
die aussage, das eine datei mehr leistung abfordert halte ich für etwas sehr verwegen    denn datenbanken sind ja auch nix anderes als "verwaltete dateien"    |  
	|   |   |  
	
		
	
	
	
		|  23.01.13, 20:55 | #10 |  
	| Banned 
				 
				Registriert seit: Mar 2012 
					Beiträge: 337
				 
		
			
				 Bedankt: 93 
			
		
	      | 
 
			
			@thomy
 Ich glaube eher, dass er so nichts vernünftiges lernen wird.
 Macht es Sinn mit einem Auto, das Auto nur rückwärts und max. 5km/h fährt, das Autofahren zu lernen?
 
 Und wenn man der Meinung ist, dass es keinen Unterschied macht Daten nebenläufig aus einer Datei oder einer DB zu ermitteln, dann hat man definitiv absolut keine Ahnung von IT und sollte hier auch keine Ratschläge geben.
 |  
	|   |   |  
	
		
	
	
	
		|  24.01.13, 22:25 | #11 |  
	| Erfahrener Newbie 
				 
				Registriert seit: Dec 2010 Ort: Hannover 
					Beiträge: 120
				 
		
			
				 Bedankt: 97 
			
		
	      | 
				  
 
			
			eigentlich wollte ich später sowieso mit datenbanken lernen . beides gleichzeitig würde aber nicht klappen . und so kann ich eben noch lernen , wie ich richtig auf nen file ( meinetwegen auch textdatei) zugreife und damit arbeite. was jetzt nicht nur auf ein logins***** bezogen sein soll .. 
Ich bedanke mich doch recht herzlich für die antworten    
das phps***** bekommt voher auch die variablen von ner html geschickt ^^ also theoretisch funtzt das ja auch .. nur nicht so wie es sollte    
	Code:  
Notice: Undefined variable: _post in C:\xampp\htdocs\111\login.php on line 2
Notice: Undefined variable: _post in C:\xampp\htdocs\111\login.php on line 3
Warning: file_get_contents(): Filename cannot be empty in C:\xampp\htdocs\111\login.php on line 6
Notice: Undefined offset: 1 in C:\xampp\htdocs\111\login.php on line 7 hm . ich bekomme jetzt zwar sie sind eingeloggt . 
aber die fehlermeldungen, die meinen, das ich es nicht sein dürfte    
( post wird nicht erkannt . also kann er die arrays doch garnicht abgleichen und das sollte dan ja automatisch zu nem ( oder 2 ) false's kommen . 
dh mich nicht einloggen  oder nicht ?! o.o
 
( ich beschäftige mich mit php erst seit 3 tagen) 
bitte erklärt mich noch, was was bedeutet, wenn ihr ne lösung vorschlagt    
MfG 
Slluxx
 
EDIT: 
PS:
 
meijn phps***** schaut nun so aus.. bitte nicht meckern sondern einfach nur sagen, wenn ich was übersehe/falsch mache ^^
 
	Code: <?php
$pw = $_post["pw"]; // bzw. $_POST wenns vom formular kommt
$user = $_post["user"]; // siehe oben
chdir("user");
//$array = implode("",file($user));
$array = explode(" ", file_get_contents($user));
if($user==$array[0] && $pw==$array[1])
{
echo "Sie sind eingeloggt ( Es passiert jetzt nix weiter)";
}
else
{
echo "Falscher Username oder Passwort";
}
?> |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 17:12 | #12 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
				  
 
			
			
	Zitat: 
	
		| 
					Zitat von ProgMaster  @thomy
 Ich glaube eher, dass er so nichts vernünftiges lernen wird.
 Macht es Sinn mit einem Auto, das Auto nur rückwärts und max. 5km/h fährt, das Autofahren zu lernen?
 |  siehe unten - "ratschläge" geben - ich bin mir sicher, das du noch pickel ausdrückst und grad weisst, wie man in eine auto einsteigt, ohne sich den kopf anzuhauen ^^   
so einen unsinn habe ich noch nie gehört. zum einen man - bleiben wir bei deinem planlosen beispiel - zuerst auto fahren lernt und dann gas gibt.
 
weiter will ich da gar nicht eingehen, denn erkläre einem blinden eine farbe!
 
	Zitat: 
	
		| 
					Zitat von ProgMaster  @thomyUnd wenn man der Meinung ist, dass es keinen Unterschied macht Daten nebenläufig aus einer Datei oder einer DB zu ermitteln...
 |  ..wo steht diese aussage von mir?
 
	Zitat: 
	
		| 
					Zitat von ProgMaster  @thomy...dann hat man definitiv absolut keine Ahnung von IT und sollte hier auch keine Ratschläge geben.
 |  sagt wer? wie wir jetzt gelernt haben, sind bis dato alle unbekannten berechtigt dies zu mir zu sagen - nur nicht du.
		 |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 17:17 | #13 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
				  
 
			
			
	Zitat: 
	
		| 
					Zitat von Slluxx  eigentlich wollte ich später sowieso mit datenbanken lernen . beides gleichzeitig würde aber nicht klappen . und so kann ich eben noch lernen , wie ich richtig auf nen file ( meinetwegen auch textdatei) zugreife und damit arbeite. was jetzt nicht nur auf ein logins***** bezogen sein soll .. 
Ich bedanke mich doch recht herzlich für die antworten    
das phps***** bekommt voher auch die variablen von ner html geschickt ^^ also theoretisch funtzt das ja auch .. nur nicht so wie es sollte    
	Code:  
Notice: Undefined variable: _post in C:\xampp\htdocs\111\login.php on line 2
Notice: Undefined variable: _post in C:\xampp\htdocs\111\login.php on line 3
Warning: file_get_contents(): Filename cannot be empty in C:\xampp\htdocs\111\login.php on line 6
Notice: Undefined offset: 1 in C:\xampp\htdocs\111\login.php on line 7 hm . ich bekomme jetzt zwar sie sind eingeloggt . 
aber die fehlermeldungen, die meinen, das ich es nicht sein dürfte    
( post wird nicht erkannt . also kann er die arrays doch garnicht abgleichen und das sollte dan ja automatisch zu nem ( oder 2 ) false's kommen . 
dh mich nicht einloggen  oder nicht ?! o.o
 
( ich beschäftige mich mit php erst seit 3 tagen) 
bitte erklärt mich noch, was was bedeutet, wenn ihr ne lösung vorschlagt    
MfG 
Slluxx
 
EDIT: 
PS:
 
meijn phps***** schaut nun so aus.. bitte nicht meckern sondern einfach nur sagen, wenn ich was übersehe/falsch mache ^^
 
	Code: <?php
$pw = $_post["pw"]; // bzw. $_POST wenns vom formular kommt
$user = $_post["user"]; // siehe oben
chdir("user");
//$array = implode("",file($user));
$array = explode(" ", file_get_contents($user));
if($user==$array[0] && $pw==$array[1])
{
echo "Sie sind eingeloggt ( Es passiert jetzt nix weiter)";
}
else
{
echo "Falscher Username oder Passwort";
}
?> |  
sorry, das passiert, wenn man(n) gewohnt ist immer klein zu schreiben    
$_post etc. sind umgebungsvariablen und sind somit GROSS zu schreiben    
also...$_POST oder $_GET
 
und NOCHMAL: die umgebungsvariable/array $_POST hat nur dann inhalt, wenn die daten via POST an dein s***** geschickt wurden - 
 
aber wie gesagt, setze dieses login s***** NIEMALS produktiv ein    |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 17:26 | #14 |  
	| Banned 
				 
				Registriert seit: Aug 2012 
					Beiträge: 223
				 
		
			
				 Bedankt: 68 
			
		
	      | 
 
			
			
	Zitat: 
	
		| 
					Zitat von thomy68  die aussage, das eine datei mehr leistung abfordert halte ich für etwas sehr verwegen    denn datenbanken sind ja auch nix anderes als "verwaltete dateien"   |  Daraus folgere ich, dass Du absolut keine Ahnung von IT hast!
		 |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 19:16 | #15 |  
	| Anfänger 
				 
				Registriert seit: Aug 2012 
					Beiträge: 13
				 
		
			
				 Bedankt: 13 
			
		
	      | 
 
			
			
	Zitat: 
	
		| 
					Zitat von NetWebs  Daraus folgere ich, dass Du absolut keine Ahnung von IT hast! |  ja sowas, progmasters bruder ist auch da - gibts da noch mehr von euch?
 
ihr müsst beide zwillinge sein, denn wenn man eurer beider beiträge mal so liest, dann erkennt man eigentlich nirgendswo effektive lösungen oder verwertbare hilfestellungen, sondern nur gequake - luftblasen - nachgequatsche    
nun gut, aber ich will mich ja nicht mit euch meistern messen    macht weiter so und grüsst mir eure brüder, die hier dann noch ihren senf dazugeben    |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 21:13 | #16 |  
	| Banned 
				 
				Registriert seit: Mar 2012 
					Beiträge: 337
				 
		
			
				 Bedankt: 93 
			
		
	      | 
 
			
			Selbst wenn dem so wäre, würde es nichts daran ändern, dass Deine IT-Kenntnisse stark begrenzt sind.
		 |  
	|   |   |  
	
		
	
	
	
		|  27.01.13, 21:36 | #17 |  
	| abcdefgh 
				 
				Registriert seit: Oct 2008 Ort: Ziegengehege 
					Beiträge: 2.620
				 
		
			
				 Bedankt: 2.535 
			
		
	      | 
 
			
			
	Zitat: 
	
		| 
					Zitat von ProgMaster  Selbst wenn dem so wäre, würde es nichts daran ändern, dass Deine IT-Kenntnisse stark begrenzt sind. |  Und darum geht es hier im Thread nicht. Also Ball flach halten!
		 |  
	|   |   |  
	
		
	
	
	
		|  23.02.13, 18:58 | #18 |  
	| Erfahrener Newbie 
				 
				Registriert seit: Dec 2010 Ort: Hannover 
					Beiträge: 120
				 
		
			
				 Bedankt: 97 
			
		
	      | 
 
			
			problem ist immernoch da xD
		 
				__________________Nichts hier. Trozdem mal bedanken.
 |  
	|   |   |  
	
		
	
	
	
		|  23.02.13, 19:49 | #19 |  
	| Profi 
				 
				Registriert seit: May 2009 Ort: riding the roos 
					Beiträge: 1.461
				 
		
			
				 Bedankt: 1.057 
			
		
	      | 
 
			
			Wow, das ist ja mal ne umfassende Fehlerveschreibung.
 Du erwartest ernsthaft das dir so jemand hilft ?
 
 Wo ist denn der Rest deines Codes, nämlich der Teil wo der User Benutzernamen und Kennwort eingibt und wie sieht dein jetziger Code komplett aus ?
 
 Was erhälst du für eine Fehlermeldung ?
 |  
	|   |   |  
	
		
	
	
	
	
	| 
	|  Forumregeln |  
	| 
		
		Du kannst keine neue Themen eröffnen Du kannst keine Antworten verfassen Du kannst keine Anhänge posten Du kannst nicht deine Beiträge editieren 
 HTML-Code ist Aus. 
 |  |  |  Alle Zeitangaben in WEZ +1. Es ist jetzt 22:50 Uhr. ().
 
	
	
		
	
	
 |