Futzi: Session- und Variablenverlust bei Aufruf des Formmailers

Hallo,

beim eintreten in meine Seite wird eine Session gestartet,

<?php
   include('../php/header.inc.php');
   $varKategorie="nachricht";
?>

<html>...
</html>
------------------------------------

in der Datei "header.inc.php" steht folgender Code:

<?php
   // Session anlegen
   session_name('sid');
   session_start();
   session_register('varKategorie');
?>
------------------------------------

in einem Anmeldeformular wir ein Formmailer aufgerufen:
<form name="formularAnmeldung" action="../php/send.php" method="post" onSubmit="return checkFormular()">

dieser Formailer enthält folgenden Code:

<?php
  include("header.inc.php");

$mailto = "futzi@ismafuto.de";
  $subject = "Seminaranmeldung";
  $fmtResponse= implode("", file("../seiten/antwort.php"));

$text = "Vorname = $vorname\nName = $name\nStrasse = $strasse\nHaus-Nr = $nummer\n";
  $text .="PLZ = $plz\nOrt = $ort\n\nTelefon = $telefon\nFax = $fax\n\nMail = $mail\n\n";
  $text .="Wunschtermin = $wunschtermin\n\nAnmerkung = \n$kommentar";

foreach($_POST as $key=> $val) {
  $fmtResponse= str_replace("<$key>", $val, $fmtResponse);
  }
  if ($_POST["access"] == "koehli") {
     mail($mailto, $subject, $fmtMail, $text );
  }
echo $fmtResponse;
?>
----------------------------

Leider verliert sich beim Aufruf des Formmailer die Session und die mitgelieferte Variable "&varKategorie".

weis jemand wie ich die Variable bzw. die Session bis zum Aufruf der "antwort.php" Seite erhalten kann?

  1. hi,

    eigentlich sollte es keine probleme geben, wenn die session in jeder seite übernommen wird; ist die ganze session weg (echo session_encode()) oder nur die variable?

    ich hatte vor kurzem mal das problem auf einem windows-rechner (iis + php + mysql), dass "session_register('variable')" nicht funktionierte: ich musste mit "$_SESSION['variable']" arbeiten, dann funktionierte alles.

    grüße basti

    1. hallo,

      hi,

      eigentlich sollte es keine probleme geben, wenn die session in jeder seite übernommen wird; ist die ganze session weg (echo session_encode()) oder nur die variable?

      wenn ich echo session_encode() in meine "antwort.php" einfüge kommt keine angabe => demnach ist wohl die ganze session mit der variablen weg.

      ich hatte vor kurzem mal das problem auf einem windows-rechner (iis + php + mysql), dass "session_register('variable')" nicht funktionierte: ich musste mit "$_SESSION['variable']" arbeiten, dann funktionierte alles.

      ich habe auch einen windows-rechner (iis+php) und hab es nun mit "$_SESSION['variable']" versucht, aber es funktionierte nicht.

      grüße basti

      gruß  futzi

  2. hi,

    Leider verliert sich beim Aufruf des Formmailer die Session und die mitgelieferte Variable "&varKategorie".

    wie übergibst denn die session-id, GET oder cookie?
    und wie sieht die session-konfiguration aus, insb. use_trans_sid und url_rewriter_tags?

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. hallo,

      hi,

      wie übergibst denn die session-id, GET oder cookie?
      und wie sieht die session-konfiguration aus, insb. use_trans_sid und url_rewriter_tags?

      ich denk doch mal, dass ich die session-id mit GET übergebe (siehe "header.inc.php")
      <?php
         // Session anlegen
        session_name('sid');
        session_start();
        //session_register('varKategorie');
        $_SESSION['varKategorie'];
      ?>

      die session- konfiguration sieht bei "use_trans_sid" so aus:
      session.use_trans_sid = 0
      und für "url_rewriter_tags" hab ich nichts gefunden.

      gruß,
      wahsaga

      Gruß  futzi

      1. hi,

        ich denk doch mal, dass ich die session-id mit GET übergebe (siehe "header.inc.php")

        da übergibst du gar nichts, sondern verlässt dich darauf, dass PHP das macht.

        die session- konfiguration sieht bei "use_trans_sid" so aus:
        session.use_trans_sid = 0

        gut, also wird von PHP die SID nur per cookie übergeben.

        und für "url_rewriter_tags" hab ich nichts gefunden.

        na gut, url_rewriter.tags heißt die option wohl.

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."