PHP Script korrekt?
cyberchris
- php
0 cyberchris0 Tom
Hi,
ist mein Script eigentlich korrekt geschrieben?
Denn es funzt nicht richtig.
<?php
$curdir = dirname($_SERVER["PHP_SELF"]);
if ($curdir == "/") { $curdir = ""; }
session_name("sid");
session_start();
$userx = $_SESSION["userx"];
if (file_exists("../daten/mdata/$userx.pwl")) {
$tf = fopen ("../daten/mdata/$userx.pwl", "r-");
$user = fgets ($tf,30);
$user = trim ($user);
$pwd = fgets ($tf,15);
$pwd = trim ($pwd);
$status = fgets ($tf,5);
fclose ($tf); }
else {
header("location: http://".$_SERVER["SERVER_NAME"].$curdir."/mlog.php?msg=Vorgang fehlgeschlagen. Bitte einloggen!1");
exit; }
if (!isset($_SESSION["pwdx"]) OR $_SESSION["pwdx"] != $pwd){
header("location: http://".$_SERVER["SERVER_NAME"].$curdir."/mlog.php?msg=Vorgang fehlgeschlagen. Bitte einloggen!2");
exit; }
?>
vielen dank
gruss chris
Hallo,
ich glaube ich habe den Fehler: In der vorgehenden Datei überträgt er die Variablen nicht. Aber wieso?:
....
session_start();
session_name("sid");
$_SESSION["userx"] = $userx;
$_SESSION["pwdx"] = $pwdx;
$_SESSION["status"] = $status;
header("location: http://".$_SERVER["SERVER_NAME"].$curdir."/main.php?".session_name()."=".session_id());
exit; }
?>
Seht ihr einen Fehler?
vielen dank
Hallo!
ich glaube ich habe den Fehler: In der vorgehenden Datei überträgt er die Variablen nicht. Aber wieso?
In neueren PHP-Versionen funktioniert das so nicht mehr, Du musst die Parameter über passende Superglobale Arrays aufrufen: http://de2.php.net/manual/de/language.variables.predefined.php
siehe auch:
http://tut.php-q.net/get.html
http://tut.php-q.net/formulare.html
http://de2.php.net/manual/de/language.variables.external.php
http://de2.php.net/register_globals
Grüße
Andreas
Hi cyberchris,
session_start();
session_name("sid");
Du kannst nach session_start() den Session Namen nicht mehr setzen:
<Zitat PHP Manual session_name()>Der Session-Name wird auf den Ausgangswert zurückgesetzt, der zu Beginn in session.name gespeichert wurde. Deshalb muss session_name() bei jeder Anfrage aufgerufen werden (und bevor session_start() oder session_register() aufgerufen wurden).</Zitat>
MfG, Dennis.
Hello,
leider hast Du weder beschrieben, was die Aufgabe des Scriptes ist, noch was nicht funktioniert.
Und Fehlermeldungen hast Du uns auch nicht mitgeteilt.
Welche Fehlermeldungen sind denn überhaupt eingeschaltet? Ich hoffe doch, alle!
Harzliche Grüße aus http://www.annerschbarrich.de
Tom