Announcement

Collapse
No announcement yet.

include klappt nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • include klappt nicht

    Hallo beisammen,

    ich versuche mich in PHP und nutze hierzu Delphi4PHP 2.0.0.1041.

    Die Aufgabe:
    Es soll eine Formular erstellt werden, welches sich an der Optik der Homepage orientiert und mittig dargestellt wird.

    Der Fehler:
    Cannot send session cookie..
    Cannot send session cache limiter..

    Es stehen keine Lehrzeichen bzw. Zeilen vor <?php

    Mein Ansatz:
    1. Formular erstellt in PHP
    2. HTML- Datei erstellt mit folgendem Inhalt ( ersetzt <:
    (!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    (html>
    (head>
    (title></title>
    (meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    (link href="style.css" rel="stylesheet" type="text/css" />
    (script src="rollover.js" type="text/javascript"></script>

    (/head>

    (body>
    (div text-align="center"><? include ("Personalstamm.php") ;?>
    (/div>
    (/body>
    (/html>

    Ergebnis ist vorgenannter Fehler. Nehme ich statt der html eine PHP mit der include-Anweisung, dann klappt es. Das Formular selbst aufgerufen klappt auch. Bloss aus einer html- Datei heraus klappt es nicht. Mit einer anderen PHP- Datei (kein Formular) wiederum funktioniert es ebenfalls.

    Die Fehlermeldung verweist in die forms.inc.php in die Zeile 130

    Was kann ich hier tun?

    Danke euch und Gruß

    Peter

  • #2
    Hallo,

    wenn du mit D4PHP ein Formular erstellst, dann ist der gesamte HTML - Überbau (Doctype, <head> .. usw) bereits mit dabei.
    Bei deiner Lösung ist das dann doppelt - einmal aus deinem HTML - 'Container' und einmal von Delphi.

    Eigentlich müßte es gehen, personalstamm.php direkt ohne Umwege aufzurufen. Brauchst du spezielle stylesheets o.ä., dann werden diese über die Formulareigenschaften eingebunden, nicht hart eincodiert.

    Hab' lange nix in PHP gemacht, hoffe das stimmt so. Probier bitte einfach mal den Aufruf Personalstamm.php.

    Viel Erfolg!
    Tino
    Ich habs gleich!
    ... sagte der Programmierer.

    Comment


    • #3
      Hallo Tino,

      dass das geht hatte ich ja schon beschreiben.

      Ich bin mittlwerweile etwas weiter. Das Stylesheet habe ich per Komponente eingebunden. Zur Vereinfachung:

      Im Event onstartbody habe ich eingefügt:
      echo '<div align="center">';

      Im Event onaftershow habe ich eingefügt:
      echo '</div>';

      Der Hintergrund wird auch korrekt in die Mitte gerückt. Das Formular jedoch klebt weiterhin am linken Rand. align gegen Text-align ausgetauscht bringt auch nichts.

      Was mache ich blos falsch?

      Vielen Dank für euer Interesse

      Peter

      Comment


      • #4
        Setzte GANZ an den Anfang der Datei (noch vor die DOCTYPE-Declaration) folgendes:
        [highlight=php]
        <?php
        ob_start('ob_gzhandler');
        ?>
        [/highlight]
        und an den Schluss
        [highlight=php]
        <?php
        ob_end_flush();
        ?>
        [/highlight]

        Damit hast du einen Puffer, der dir zur kompletten Laufzeit des Scriptes das Setzen von Sessions erlaubt. Somit kannst du das Problem in deiner Personalstamm.php umgehen.

        Comment

        Working...
        X