Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
JoelH dein Tut Login funzt nicht [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
JoelH dein Tut Login funzt nicht


 
oli
27-05-2002, 12:49 
 
Ich habe Dein tutorial Loginscript so benutzt wie beschrieben ist leider bekomme ich diese fehler Meldung.

Warning: Supplied argument is not a valid MySQL result resource in D:\Scripte\SQL\logintutorial\\verify.php on line 16
Sorry, aber dieser Name ist leider nicht bekannt !

Hier die verify.php

<?php
$test = "123";
session_start();
include('var.inc.php');
if ((!isset($username)) OR (!isset($passwort)))
{
die ("Sorry, aber ohne Name bzw. Passwort geht hier nichts !");
}
$conn = @mysql_connect($dbserver,$dbuser,$dbpass);
if (!$conn)
{
die ("Sorry, Verbindungsversuch zur Datenbank ist fehlgeschlagen !");
}
mysql_select_db($dbname,$conn);
$result = mysql_query("SELECT pass, level FROM kunden WHERE name = '$username'",$conn);
$zeileholen = mysql_fetch_array($result);
mysql_close($conn);
if (!$zeileholen)
{
die ("Sorry, aber dieser Name ist leider nicht bekannt !");
}
if ($zeileholen["pass"] <> $passwort)
{
die ("Sorry, aber dieses Passwort passt nicht zum Usernamen !");
}
$level = $zeileholen["level"];
session_register('username');
session_register('level');
header ("Location:admin.php");
?>

Was ist da falsch?

Mfg Oli

 
Nezzar
27-05-2002, 14:32 
 
Hm, sieht danach aus als ob die Query nichts zurückgeliefert (d.h. die Query hat keine entsprechenden DS gefunden).
Öffne mal die MySQL-Konsole und gib' diese Query ein (nicht das ; am Ende vergessen, muss man ja in PHP nicht machen) und guck mal was MySQL selbst dazu zu sagen hat.

 
Aragor
27-05-2002, 14:42 
 
Hallo,

Ich habe mit dem Script, fast das selbe Problem!

nur ich habe ein Parse error in Line 24 .

Kann mir da einer weiter helfen?

PHP <--- NEWBEE


//verify.php

<?php


session_start();
include('ad.config.inc.php');

if ((!isset($user)) OR (!isset($pass)))
{
die("<b>Username oder Passwort falsch!</b>");
}

$conn=@mysql_connect($dbserver,$dbuser,$dbpass);
if(!$conn)
{
die("<b>Verbindung zur Datenbank ist fehlgeschlagen");
}

mysql_select_db($dbname,$conn);
$query = "SELECT pass FORM gbadmin WHERE name = '".$user."'";
$result = mysql_query($query,$conn)

$zeileholen = mysql_fetch_array($result,MYSQL_ASSOC); //hier macht er ein parse error ???
mysql_close($conn);

if(!$zeileholen)
{
die("<b>Der Name ist leider nicht bekannt!</b>");
}

if($zeileholen)["pass"]<> $passwort)
{
die("<b>Das Passwort passt nicht zum Usernamen!</b>");
}

session_register('user');

header("Location:admin.php");


?>

MfG

Aragor

 
Gillz
27-05-2002, 17:00 
 
@Aragor

ich bin zwar auch kein Profi aber versuchs mal so vielleicht gehts!


($zeileholen = mysql_fetch_array($result,MYSQL_ASSOC));


grizz
Gillz

 
Aragor
27-05-2002, 17:33 
 
@Gillz

Das war es leider nicht.

Aber hab Dank.

grüße Aragor

 
Basti77
27-05-2002, 23:57 
 
$result = mysql_query($query,$conn);
das ";" hat gefehlt ...
Die Zeilenangabe im Parse Error stimmt selten mit der wirklich falschen Zeile überein ...

Aber was soll das ?
if($zeileholen)["pass"]<> $passwort)

 
JoelH
28-05-2002, 08:52 
 
@Aragor
jo also das ) Zeichen sollte nicht hinter zeileholen stehen !

@oli
Du versucht etwas aus zu lesen was es nicht gibt, dein SQL Statement ist falsch, wie ist denn deine Tabellenstruktur aufgebaut, mach mal einen Dump und poste den, zB. mit phpMyAdmin

 
oli
28-05-2002, 09:03 
 
Hier meine Tabelle in der Mysql

# MySQL-Front Dump 2.2
#
# Host: localhost Database: test
#--------------------------------------------------------
# Server version 3.23.46


#
# Table structure for table 'kunden'
#

CREATE TABLE `kunden` (
`id` tinyint(3) NOT NULL auto_increment,
`vorname` varchar(50) default NULL,
`name` varchar(50) default NULL,
`anr` tinyint(3) default NULL,
`email` varchar(50) default NULL,
`tel` varchar(20) default NULL,
`str` varchar(50) default NULL,
`hnr` varchar(5) default NULL,
`plz` mediumint(5) default NULL,
`ort` varchar(50) default NULL,
`bank` varchar(200) default NULL,
`kntr` varchar(20) default NULL,
`konto` varchar(10) default NULL,
`blz` varchar(20) default NULL,
`username` varchar(10) default NULL,
`passwort` varchar(10) default NULL,
`level` tinyint(4) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM;



#
# Dumping data for table 'kunden'
#
INSERT INTO kunden VALUES("17","Corinne","Boerner","0","boerner@boerner-design.de","Hauptstrasse","49","3116","Drebkau","corinne","corinne","0");
INSERT INTO kunden VALUES("32","Oliver","Boerner","0","boerner@surfeu.de","","","","0","","","","","","oliver","9zh34","0");
INSERT INTO kunden VALUES("33","oliver","","0","me@localhost.com","","","","0","","","","","","oliver","x575256C52","0");
INSERT INTO kunden VALUES("34","","","0","","","","","0","","","","","","","","0");

 
srtune
09-06-2002, 13:42 
 
Hmm also wenn es nichts finden kann würde ich da eine if schleife machen damit der fehler nicht mehr zu sehen ist.Bei mir war der auch bei meinen login sctipt nicht dieses hier.Wenn ich da einen namen eingeben habe den es nicht gibt und wenn es den nicht gibt kann da auch nicht gesucht werden.also kommt der wert 0 oder false und da kannste ja dann bei der if schleife den fehler schreiben.

 
ialla
10-06-2002, 19:58 
 
hi leutz,

hier mein code:
<?php
session_start();
include('var.inc.php');
if ((!isset($username)) OR (!isset($passwort)))
{
die ("Sorry, aber ohne Name bzw. Passwort geht hier nichts !");
}
$conn = @mysql_connect($dbserver,$dbuser,$dbpass);
if (!$conn)
{
die ("Sorry, Verbindungsversuch zur Datenbank ist fehlgeschlagen !".mysql_error());
}
mysql_select_db($dbname,$conn);
$query = "SELECT pass FROM zugriff WHERE name = '$username' ";
$result = mysql_query($query,$conn);
$zeileholen = mysql_fetch_array($result,MYSQL_ASSOC);
mysql_close($conn);
if (! $zeileholen)
{
die ("Sorry, aber dieser Name ist leider nicht bekannt !".mysql_error());
}
if ($zeileholen["pass"] <> $passwort)
{
die ("Sorry, aber dieses Passwort passt nicht zum Usernamen !");
}
$level = $zeileholen["level"];
session_register('username');
session_register('level');
header ("Location:admin.php");
?>

Mein Prob ist, dass es dem script egal ist ob der username oder das Passwort fehlt. Fehlermeldung ist immer:
"Sorry, aber dieses Passwort passt nicht zum Usernamen !"
Einloggen kann ich mich jedoch mit meinem eingetragenen username und passwort!
Die Fehlermeldung kommt auch wenn der username nicht existiert!!

mfg

 
javna
17-06-2002, 15:36 
 
Hallo, ich habe leider auch ein Problem. Ich bekomme gleich eine Reihe von Fehlermeldungen und zwar diese:
Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\partner\verify.php on line 16

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\partner\verify.php on line 18

Warning: 1 is not a valid MySQL-Link resource in c:\apache\htdocs\partner\verify.php on line 19
Sorry, Name oder Passwort sind falsch

Hier mein Script,
ich hoffe es kann mir jemand helfen. Kann auch gut sein, dass schon blind bin vom vielen draufgucken und es nur ein kleiner Fehler ist (hoffe ich:-)

<?php
session_start();
include('var.inc.php');
if((!isset($username)) OR (!isset($passwort)))
{
die ("Bitte geben Sie Benutzernamen und Passwort ein!");
}
$conn=@mysql_connect($dbserver,$dbuser,$dbpass);
if(!$conn)
{
die("Sorry, Verbindung zur Datenbank ist fehlgeschlagen!");
}
mysql_select_db($dbname,$conn);
$query="SELECT pass, level FROM zugriff WHERE name='".$username."'";
$result=mysql_query($query,$conn);
$zeileholen=mysql_fetch_array($result,MYSQL_ASSOC);
mysql_close($conn);
$zeileholen=mysql_fetch_array($result,MYSQL_ASSOC);
mysql_close($conn);
if(!$zeileholen)
{
die("Sorry, Name oder Passwort sind falsch");
}
if($zeileholen["pass"]<>$passwort)
{
die("Sorry, Name oder Passwort sind falsch");
}
$level=$zeileholen["level"];
session_register('username');
session_register('level');
header("Location:admin.php");
?>

 
poli
01-07-2002, 18:58 
 
Hi
ich habe das script so wie in den tutorial aufgebaut(auser schreibfehler in bdname=dbname!)
Bei mir kommt immer:
Versuchen sie es mal mit einloggen(also der text in admin.php)
obwohl ich mich einlogge!
Was mache ich falsch?
Kann mir bitte einer mal den richtigen code posten oder schicken poli-online@gmx.de, wo es klappt!!??
bittebitte!
poli

 
lemmy
17-07-2002, 13:59 
 
mich würde es auch interessieren ob jemand das Script zum laufen bekommt. Bei mir macht es auf jedenfall was es will. Da passiern so komishe Sachen, die kann ich gar nicht alle aufschreiben und jedes mal was anderes, obwohl ich das Script nicht weiter angefasst habe. Wer hat den richten code????
Gruss
Lemmy

 
schmalle
17-07-2002, 14:05 
 
ihr solltet alle mal gucken, ob ihr die vorgegebene PHP version habt, sessions() richtig eingestellt sind, und ob cookies akzeptiert werden.

@javna du hast vermutlich deine mysql_db nicht richtig konfiguriert, oder in dem script nicht die richtigen bentzerdaten eingetargen ...

 
lemmy
18-07-2002, 09:26 
 
nun habe ich den Fehler doch noch gefunden. Die session ID wird anscheinend nicht gelöscht. Nun habe ich versucht immer mit dem Rechner, auf dem auch das PHP läuft, das Script und habe wahrlich wunderliche Dinge erlebt. Von einem anderen Rechner aus hat das Script dann getan was es machen sollte.
Gruss
Lemmy

 
Aroree
18-07-2002, 09:34 
 
WEnn du was am Script geändert hast schreib es doch bitte hier rein damit andere auch etwas von deiner Erkenntnis haben!!

 
DJBlackEagle
25-07-2002, 21:53 
 
Das wäre mein Code und der Geht bei mir soweit:


<?php
session_start();
include('var.inc.php');

if ((!isset($username)) OR (!isset($passwort)))
{
die ("Sorry, aber ohne Name bzw. Passwort geht hier nichts !");
}

$conn = @mysql_connect($dbserver,$dbuser,$dbpass);

if (!$conn)
{
die ("Sorry, Verbindungsversuch zur Datenbank ist fehlgeschlagen !");
}

mysql_select_db($dbname,$conn);
$query = "SELECT pass, level FROM zugriff WHERE name = '".$username."'";
$result = mysql_query($query,$conn);
$result = mysql_query("SELECT pass, level FROM zugriff WHERE name = '$username'",$conn);
$zeileholen = mysql_fetch_array($result,MYSQL_ASSOC);
mysql_close($conn);

if (!$zeileholen)
{
die ("Sorry, aber dieser Name ist leider nicht bekannt !");
}

if ($zeileholen["pass"] <> $passwort)
{
die ("Sorry, aber dieses Passwort passt nicht zum Usernamen !");
}

$level = $zeileholen["level"];

session_register('username');
session_register('level');
header ("Location:admin.php");
?>


mFg
DJ BlackEagle

 
gast
28-08-2002, 02:29 
 
Hallo,

ich habe mich jetzt nicht extra angemeldet, möchte aber auch nicht anonym bleiben. Also, ich heisse Dennis und bin blutiger Newbie.

Mein Problem war bei diesem Tutorial zunächst die Ausgabe von Fehlermeldungen. Nachdem ich in der php.ini die globalen Varaiblen eingeschaltet habe, funktionierte (fast) alles. Hier nun mein Fehler:
Es ist egal, welches Passwort ich eingebe, der Benutzer - vorausgesetzt er steht in der DB - wird immer richtig eingeloggt.
D.h. nichts anderes, als dass das Passwort irgendwie nicht richtig zugeordnet wird. Da im Login-Formular das Feld für das Passwort als "type=password" deklariert ist, habe ich die mysql-DB auch noch einmal daraufhin umgestellt, dass ich per "insert into" das Passwort als "values("Name", PASSWORD('passwort'), 1);" eingetragen habe, aber diese "Sicherheitslücke" bleibt hartnäckig bestehen.

Ich habe auf meinem Rechner den Apache 2.0.39, php 2.4.2 und mysql 3.23 und phpmyadmin 2.3 laufen. Ach ja, unter WindowsXP Pro.

Ich hoffe auf Hilfe, denn ich brauche dieses Login für ein internes kleines Projekt ud würde nur ungern dieses Manko in Kauf nehmen.

Jede Hilfe ist willkommen. Am liebsten per Mail, weil ich die ganzen Foren nicht bookmarken kann.

dennis@lehr-reich.de (dhoffmann@lehr-reich.de)

Gruss, Dennis.

LEHR-REICH: Heute für die Zukunft lernen (http://www.lehr-reich.de)

 
Axel
29-08-2002, 14:38 
 
Hallo,

mich würde zum einen einmal interessieren, ob nun das Script problemlos läuft,

und zum anderen, was passiert, wenn Username und/oder Passwort bereits vorhanden sind? :confused:

 
nomidi
07-09-2002, 00:35 
 
Hi, habe das tutorial auch wie nach anleitung erarbeitet, und dann das passwort per md5 verschlüsselt.

Mein prob ist , das der level nicht mehr richtig angezeigt wird, wenn ich mich als ein user level5 anmelde erscheint es zwar als erstes noch, dann wenn ich aber auf aktualieseieren gehe kommt leevel100.

Liegt das an den cookies , die irgendwie nicht richtig gesetzt sind ?

 
lemmy
23-09-2002, 11:58 
 
Nach einigem hin und her ist es mir nun doch noch gelungen das Script zum laufen zu bringen. In dieser Version läuft es auch schon seit 14 Tagen stabil. EIn includen der datenbankvariablen lässt das Script allerdings nicht zu. Es werden dann die headerinfos aus den Variablen gesendet und das Script bricht ab.
Gruss
Lemmy


<?php

session_start();

$dbserver = "dbserver";
$dbname = "dbname";
$dbuser = "user";
$dbpass = "pass";
$link = mysql_connect ( $dbserver, $dbuser, $dbpass);
if (!$link)
die ("Keine Verbindung zur Datenbank");
mysql_select_db($dbname)
or die ("Konnte Datenbank\" $dbname\"nicht &ouml;ffnen:".mysql_error() );


$holen = mysql_query("select passwort, username from zugriff where username='$username' ");
$row = mysql_fetch_array($holen);


if (!$row)
{
die (include 'name.php');
}

if ($row['passwort'] <> $passwort)
{
die (include 'pass.php');
}



session_register('username');

header ("Location:../script/intern.php");

?>

 
LaHood
02-10-2002, 09:11 
 
Hi,

also bis zum admin.php komme ich mittlerweilen :o)
Aber dann bleibt er immer hängen an:

<?if (! session_is_registered('username'))
{
die ("Sorry, aber sie haben sich wohl nicht eigeloggt, oder ?");
}?>

,und gibt halt die Textmeldung aus. Ich habe in meinem php4\tmp-Ordner geschaut, dort werden auch Sessions angelegt.

Was mich wundert ist, dass ich bei jedem Login 2 Sessions bekomme, eine Datei die leer ist, und eine wo folgendes drin steht:

username|s:4:"testname";level|s:1:"3";

Ich weiß nicht, ob ich in der php.ini noch Einträge ändern muss, und wenn ja welche.

Noch eine grundsätzliche Frage, ich gehe bei Änderungen der php.ini davon aus, dass die gemeint ist die bei mir unter Win2k im \WinNT-Ordner liegt, und nicht die die im \php4-Ordner.

thx
Grüße
cu LaHood

 
Bang
26-11-2002, 12:46 
 
Hallo Junks,

leider habe ich immer noch ein Problem mit den Lock out.

<?php
session_start();
//Session da ?
session_destroy();

header("Location:login.html");
?>
//Fehler ist das hier:
Warning: Cannot add header information - headers already sent by (output started at c:\phpdev\www\public\woerterbuch\logout.php:5) in c:\phpdev\www\public\woerterbuch\logout.php on line 6


Kann mir da einer weiterhelfen?

MFG Bang.

 
Tesox
15-12-2002, 20:07 
 
Moin moin, also bis auf den Tippfehler bei bdname => dbname läuft das Script bei mir einwandfrei.

Der einzige Nachteil ist, dass wenn man sich "NICHT" ausloggt und man versucht sich wieder neu einzuloggen, das Script dann die Fehlermeldung "Sorry, aber Dein Name ist nicht bekannt" ausgibt.

Ansonsten bin ich mit dem Script zufrieden und werd es mit Freuden einsetzen.

Gruss

Tesox

 
mister_x1
23-12-2002, 13:29 
 
mit dem login? hab mir das teil auch mal als vorlage genommen, ein wenig modifiziert und an meine bedürfnisse angepasst! läuft alles problemlos!

mfg eddi

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:53 Uhr.