christian: Umfrage erstellen

Hallo,

ich möchte auf meiner Seite eine Umfrage erstellen die voraussichtlich aus zwei Dateien bestehen wird die ich mit include einbinden will.
Die erste Datei wird eine config Datei sein die im Head Bereich eingebunden werden soll, da da css angaben gemacht werden.
Die zweite Datei ist dann die eigentliche Umfrage die in den Body Bereich eingebunden wird.

Das Problem das ich nun habe, ist das ich es möglich machen will, dass mehrere Umfragen gleichzeitig auf der gleichen Seite angezeigt werden sollen.

Dazu habe ich mir folgendes überlegt:

Lösung 1)

ich gebe beim einbinden der Datei gleich einen Wert mit. Also:

<head>
include('load_config.inc?cnf=1'); // Lädt dann z.B. config1.cnf
include('load_config.inc?cnf=2'); // Lädt dann z.B. config2.cnf
</head>

und

<body>
include('umfrage.inc?cnf=1');
include('umfrage.inc?cnf=2');
</body>

wenn ich jetzt auf eine Variable aus einer der load_config.inc zugreifen will müssen diese Variablen natürlich auch verschieden heißen. Wie stelle ich das an?

Lösung 2)

ich vergesse das mit dem Head Bereich und definiere die css Angaben direkt im tag. :) Also:

<body>
include('config1.cnf');
include('umfrage.inc');

include('config2.cnf');
include('umfrage.inc');
</body>

Lösung 3)

ich binde nur die Umfrage in den Body Bereich ein mit jeweiligem config Wert. Also:

<body>
include('umfrage.inc?cnf=1');
include('umfrage.inc?cnf=2');
</body>

und binde dann in der umfrage.inc die entsprechende config Datei ein (wobei ich glaube das das nicht funktioniert).

zu Lösung 1) Ich hab irgendwo mal gelesen das das geht, habs aber nicht verstanden wie. wäre nett wenns mir jemand erklären kann.

zu Lösung 2) Das funktioniert auf jeden Fall gefällt mir aber nicht so gut.

zu Lösung 3) Das wäre mein Favorit. Wenn irgendwie geht....

Danke schon mal für deine Antwort.
MfG Christian

  1. Hallo,

    und binde dann in der umfrage.inc die entsprechende config Datei ein (wobei ich glaube das das nicht funktioniert).

    <head>
    include('load_config.inc?cnf=1'); // Lädt dann z.B. config1.cnf
    include('load_config.inc?cnf=2'); // Lädt dann z.B. config2.cnf
    </head>

    Wenn du versuchst, Include-Dateien Werte zu übergeben, dann hast du nicht verstanden, wie sie funktionieren.

    Grüße aus Barsinghausen,
    Fabian

    1. Hallo,

      Wenn du versuchst, Include-Dateien Werte zu übergeben, dann hast du nicht verstanden, wie sie funktionieren.

      Ja, danke hat rob schon geschrieben und auch gleich ne Lösung beigelegt.

      MfG Christian

  2. Hallo,

    Hallo!

    ich gebe beim einbinden der Datei gleich einen Wert mit. Also:
    include('load_config.inc?cnf=1'); // Lädt dann z.B. config1.cnf
    include('load_config.inc?cnf=2'); // Lädt dann z.B. config2.cnf

    Funktioniert so aber leider nicht.
    Du kannst hier eine Datei einbinden, aber keinen Variablen per GET übergeben. Das wird einen Fehler geben.

    und
    <body>
    include('umfrage.inc?cnf=1');
    include('umfrage.inc?cnf=2');
    </body>

    Geht genauso wenig. Da müßtest Du das so machen:
    $cnf = 1;
    include("umfrage.inc");

    wenn ich jetzt auf eine Variable aus einer der load_config.inc zugreifen will müssen diese Variablen natürlich auch verschieden heißen.

    Klar. Zwei verschiedene Variablen mit verschiedenen Werten, aber gleichen Namen sind nicht möglich.

    Wie stelle ich das an?

    Die Variablen anders benennen.

    Und noch ein Tip:
    Benenne Deine Files alle um. Laß niemals ein File auf .inc enden!
    Das kennt der Webserver mit Sicherheit nicht und wird es nicht parsen.
    Wenn ich jetzt per Browser z.B. das File www.deine_seite.de/config.inc aufrufe, dann wird mir der Browser den Inhalt zeigen.
    Wenn da jetzt Zugangsdaten zu einer Datenbank oder einem anderen Server drin stehen, dann hast Du ein Problem.
    Wenn Du deine Files aber .inc.php nennst, dann kommt es zwar evtl. zu einer Fehlermeldung, wenn ich so ein File direkt aufrufe, aber ich sehe nichts von den Variablen darin...

    1. Hallo, danke für die schnelle Antwort.

      <body>
      include('umfrage.inc?cnf=1');
      include('umfrage.inc?cnf=2');
      </body>
      Geht genauso wenig. Da müßtest Du das so machen:
      $cnf = 1;
      include("umfrage.inc");

      ok, das ist kein Problem so. thx.

      wenn ich jetzt auf eine Variable aus einer der load_config.inc zugreifen will müssen diese Variablen natürlich auch verschieden heißen.
      Klar. Zwei verschiedene Variablen mit verschiedenen Werten, aber gleichen Namen sind nicht möglich.
      Wie stelle ich das an?
      Die Variablen anders benennen.

      Doch hab es grad gelesen: http://forum.de.selfhtml.org/?t=70769&m=407130

      Und noch ein Tip:
      Benenne Deine Files alle um. Laß niemals ein File auf .inc enden!
      Das kennt der Webserver mit Sicherheit nicht und wird es nicht parsen.
      Wenn ich jetzt per Browser z.B. das File www.deine_seite.de/config.inc aufrufe, dann wird mir der Browser den Inhalt zeigen.
      Wenn da jetzt Zugangsdaten zu einer Datenbank oder einem anderen Server drin stehen, dann hast Du ein Problem.
      Wenn Du deine Files aber .inc.php nennst, dann kommt es zwar evtl. zu einer Fehlermeldung, wenn ich so ein File direkt aufrufe, aber ich sehe nichts von den Variablen darin...

      dazu 1000 mal Danke. Das werd ich gleich ändern, da ich das bis jetzt immer so gemacht habe und nicht über das Sicherheitsloch bescheid wusste.

      MfG Christian