Mein erster session Versuch klappt nicht so recht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • markusschmitt
    antwortet
    Ich denk des ist die richtige Datei, bin mir aber nicht sicher
    httpd.conf

    #
    # Action lets you define media types that will execute a script whenever
    # a matching file is called. This eliminates the need for repeated URL
    # pathnames for oft-used CGI file processors.
    # Format: Action media/type /cgi-script/location
    # Format: Action handler-name /cgi-script/location
    #

    Action application/x-httpd-php /php/php.exe

    Des ist eigentlich die einzige Zeile wo auch der Pfad vorkommt, dann gibts noch die Zeile
    ScriptAlias /php/ "/apache/php/"


    Mfg Markus
    Zuletzt geändert von markusschmitt; 08.05.2003, 17:28.

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    In welcher Datei finde ich des nochmal, finds gerade nicht.

    Mfg Markus

    Einen Kommentar schreiben:


  • Coragon Rivito
    antwortet
    zeig mal die zeilen wie du php in deinen webserver einbindest ..
    am besten nach php suchen und alles posten was da steht =)

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    OK das stimmt, da ich mir $PHP_SELF oben noch habe ausgeben lassen aber das ändert nichts drann warum er mir in den Ordner
    http://al-capone/php/php.exe/neuftp/eingeloggt.php geht anstatt in den ordner
    http://al-capone/neuftp/eingeloggt.php

    Woran kann das liegen?

    Mfg Markus

    Einen Kommentar schreiben:


  • Abraxax
    antwortet
    desweiteren bekomm ich jetzt ne Fehlermeldung für die session_start() zeile
    vorher darf keinerlei ausgabe erfolgt sein.

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    Habs umbenannt, dann geöffnet aber es steht immernoch dort
    /php/php.exe/neuftp/login.php
    desweiteren bekomm ich jetzt ne Fehlermeldung für die session_start() zeile
    Cannot send session cookie - headers already sent by (output started at C:\apache\htdocs\neuftp\login.php:12) in C:\apache\htdocs\neuftp\login.php on line 25

    Bin jetzt mal für 4 Stunden weg

    Mfg Markus

    Einen Kommentar schreiben:


  • mister_x1
    antwortet
    heißt dein normales script so? nenn das mal um in login.php.
    .inc dateien nimmt man zum ablegen von fkt. und allem möglichem und nennt sie so, da diese nicht im browser angezeigt werden können und man
    somit keinen direkten zugriff darauf hat.

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    Hab ich gemacht

    Hier ist das Ergebniss

    "/php/php.exe/neuftp/login.inc.php"


    Hab jetzt gerade noch die php.ini durchsucht aber den Pfad dort nicht gefunden. Was läuft da falsch und wie mach ichs passend?


    Mfg Markus
    Zuletzt geändert von markusschmitt; 08.05.2003, 07:52.

    Einen Kommentar schreiben:


  • Günni
    antwortet
    Lass dir mal die Variable $PHP_SELF ausgeben...

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    Danke
    hat vorzüglich geklappt.

    JUPPPIIIIIIII


    Mfg Markus


    Sorry zu früh gefreut, kleiner Bug

    Sobald ich auf den Submit Butten drück springt er mir in das Verzeichnis
    http://al-capone/php/php.exe/neuftp/login.inc.php
    was komisch ist, die header Funktion klappt dennoch obwohl die File gar nicht in dem Verzeichnis ist.

    er soll aber in dem hier bleiben
    http://al-capone/neuftp/login.inc.php und daruas wird dann die Datei eingeloggt.php aufgerufen.

    das ist der Code für den Submit Butten
    <form name=\"login\" method=\"post\" action=\"$PHP_SELF\">

    Bis jetzt hab ich immer mit der direkten Datei gearbeitet also ich hab z.B aus index.php die Datei mit action = "index.php" gearbeitet und nicht mit $PHP_SELF. Wieso erfolgt der Sprung in dieses Verzeichnis?

    Mfg Markus
    Zuletzt geändert von markusschmitt; 08.05.2003, 01:23.

    Einen Kommentar schreiben:


  • Günni
    antwortet
    Erstelle einen Ordner TMP in dem Apache Verzeichnis. Anschließend gib den Pfad in der PHP.INI an.
    Bei mir sieht dies z. B. so aus:

    ; Argument passed to save_handler. In the case of files, this is the path
    ; where data files are stored. Note: Windows users have to change this
    ; variable in order to use PHP's session functions.
    session.save_path = C:/Server/Apache/tmp

    Einen Kommentar schreiben:


  • markusschmitt
    antwortet
    Das steht in der php.ini

    session.save_handler = files ; handler used to store/retrieve data
    session.save_path = /tmp ; argument passed to save_handler
    ; in the case of files, this is the
    ; path where data files are stored
    session.use_cookies = 1 ; whether to use cookies
    session.name = PHPSESSID
    ...
    heisst des jetzt das ich einen Ordner erstellen muss der /tmp heisst in meinem Orner neuftp/tmp oder wie?

    Letzteres klappt nicht. Hab auch keinen Ordner in meinem Apache Verzeichnis gefunden des tmp heisst. Wo muss ich denn den Ordner erstellen?

    Mfg Markus
    Zuletzt geändert von markusschmitt; 07.05.2003, 23:37.

    Einen Kommentar schreiben:


  • Abraxax
    antwortet
    der kann die session -datei nicht öffnen, wenn ich deine erste meldung richtig sehen. schaue mal in der php.ini nach, wo er seine sessions abspeichern will.

    die zweite meldung kannst du irgnorieren. ist das erste problem behoben, so ist es das zeite automatisch auch.

    Einen Kommentar schreiben:


  • markusschmitt
    hat ein Thema erstellt Mein erster session Versuch klappt nicht so recht.

    Mein erster session Versuch klappt nicht so recht

    Hab meine ersten Versuche mit sessions gestarte um einen login in einen geschützen Bereich zu machen. In dem Bereich will ich dann überprüfen ob die Variable die ich beim login gesetzt hab existiert.

    Mein Code
    PHP-Code:
    if($submit)
    {
        if(
    strlen($adminpasslogin) == "" || strlen($adminuserlogin) == "" )  //adminpass-userlogin existiert und kommt aus ner DB
        
    {
            unset(
    $submit);
            
    header ("Location: $PHP_SELF");  //klappt
        
    }
        else
        {
            if(
    $adminpasslogin == $passlogin && $adminuserlogin == $userlogin)  //klappt
            
    {
                
    session_start();  //Fehlermeldung
                
    session_register("login");
                
    $login "LOGIN";
                
    header ("Location: eingeloggt.php");  //zweite Fehlermeldung
            
    }
            else
            {
                unset(
    $submit);
                
    header ("Location: $PHP_SELF");
            }
        }

    Fehlermeldung
    PHP-Code:
    Warningopen(/tmp\sess_97fe8a08596da005a4054584bf0eb3a1O_RDWRfailed(2in C:\apache\htdocs\neuftp\login.inc.php on line 23

    Warning
    Cannot add header information headers already sent by (output started at C:\apache\htdocs\neuftp\login.inc.php:23in C:\apache\htdocs\neuftp\login.inc.php on line 26 
    Ausserdem springt er mir in das Verzeichnis
    http://al-capone/php/php.exe/neuftp/login.inc.php
    das wäre richtig:
    http://al-capone/neuftp/login.inc.php

    Code von eingeloggt.php
    PHP-Code:
    <?php
    session_start
    ();
    if(
    $login)
    {
        echo 
    "Hallo";
    }
    else
    {
        echo 
    "Shit";
    }
    ?>
    Mfg Markus
Lädt...
X