mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 22:31 Benutzername: Passwort: Auto-Login

Thema: [PHP-Formular] Seite nach Auswahl aus Optionsfeld neu laden vom 02.10.2004


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP-Formular] Seite nach Auswahl aus Optionsfeld neu laden
Seite: 1, 2  Weiter
Autor Nachricht
burnout
Threadersteller

Dabei seit: 31.01.2002
Ort: Osnabrücker Land
Alter: 44
Geschlecht: Männlich
Verfasst Sa 02.10.2004 10:35
Titel

[PHP-Formular] Seite nach Auswahl aus Optionsfeld neu laden

Antworten mit Zitat Zum Seitenanfang

Moin,

also folgendes Problem:

Ich habe ein PHP-Formular, das Daten aus einer DB ausliest und die Input-Felder damit füllt.
Hier kann der Nutzer Änderungen machen, die er dann per Submit-Button auch speichern kann.
Das Formular besteht allerdings nicht nur aus Input-Feldern, sondern auch aus Option-Feldern.
Wenn man in einem der Option-Felder einen Datensatz auswählt (da stehen Namen drin), sollen unter dem Options-Feld zusätzlich noch die Kontakt-Daten des ausgewählten Namens angezeigt werden.
Mein Formular schickt die gespeicherten Daten an eine andere Datei weiter, die die Daten dann in die DB schreibt.
Also ist mein <form action=""> quasi schon besetzt. Muss ich mein Formular jetzt so umbasteln, dass ich die Daten auch in dieser Datei verarbeite oder wie kann ich das sonst einigermaßen praktikabel hinbekommen?

Danke für alle Tipps Lächel
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
beeviZ

Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 02.10.2004 11:34
Titel

Antworten mit Zitat Zum Seitenanfang

kannste nich einfach dem optionsfeld n <select onChange="bla()">... geben und ins javascript dann quasi noch n formular was abgeschickt wird?
  View user's profile Private Nachricht senden
Anzeige
Anzeige
burnout
Threadersteller

Dabei seit: 31.01.2002
Ort: Osnabrücker Land
Alter: 44
Geschlecht: Männlich
Verfasst Sa 02.10.2004 11:56
Titel

Antworten mit Zitat Zum Seitenanfang

hab's vielleicht noch nicht ganz ausreichend erklärt. Ich will erreichen,
dass ich die gleichen Daten bei dem "onchange" wieder angezeigt bekomme, auch wenn jemand schon im formular etwas geändert hat. wenn ich dann einen namen auswähle und die seite neu geladen wird, um die daten aus der DB abzufragen, gehen mir diese Änderungen ja verloren, es sei denn ich übergebe sie wieder per $_POST oder ich speichere sie irgendwie zwischendurch schon in der DB.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
eye-fx

Dabei seit: 24.10.2002
Ort: -
Alter: 48
Geschlecht: Männlich
Verfasst Sa 02.10.2004 12:05
Titel

Antworten mit Zitat Zum Seitenanfang

also zwischendurch in die DB würde ich nix speichern. Mach das doch per Session...

Code:
session_start();
$_SESSION["name"] = $name;
$_SESSION["nachname"] = $nachname;
...
etc


und auslesen mit

Code:
$name= @$HTTP_SESSION_VARS['name'];
$nachname= @$HTTP_SESSION_VARS['nachname'];
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
burnout
Threadersteller

Dabei seit: 31.01.2002
Ort: Osnabrücker Land
Alter: 44
Geschlecht: Männlich
Verfasst Sa 02.10.2004 13:29
Titel

Antworten mit Zitat Zum Seitenanfang

hmm, hab ich noch nie gemacht. ich werd's mal testen...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 02.10.2004 13:35
Titel

Antworten mit Zitat Zum Seitenanfang

http://de3.php.net/manual/de/ref.session.php hat geschrieben:

Anmerkung: Seit PHP 4.1.0 steht $_SESSION genau wie $_POST, $_GET, $_REQUEST und so weiter, als globale Variable zur Verfügung. Im Gegensatz zu $HTTP_SESSION_VARS ist $_SESSION immer global. Deshalb brauchen Sie für $_SESSION nicht das Schlüsselwort global zu verwenden. Bitte beachten Sie, dass in dieser Dokumentation nun überall $_SESSION verwendet wird. Sie können $_SESSION durch $HTTP_SESSION_VARS ersetzen, wenn Sie Letzteres bevorzugen. Beachten Sie auch, dass Sie Ihre Session mit session_start() starten müssen, bevor die Verwendung von $_SESSION zur Verfügung steht.

Für die Schlüssel des assoziativen $_SESSION-Arrays gelten die selben Beschränkungen, wie für die Bezeichnungen von regulären Variablen in PHP, d.h. sie dürfen nicht mit einer Zahl, sondern müssen mit einem Buchstaben oder Unterstrich beginnen. Um weitere Deteils zu erhalten, siehe Abschnitt Variablen.

http://de3.php.net/manual/de/ref.session.php

Dazu vielleicht auch noch folgendes .. bisse Lesestoff zum Thema
Sessions: http://www.php-faq.de/ch/ch-version4_session.html
  View user's profile Private Nachricht senden
Account gelöscht


Ort: -
Alter: -
Verfasst Sa 02.10.2004 14:04
Titel

Antworten mit Zitat Zum Seitenanfang

Das ganze per session ist doch eigentlich total unnütz, da sich werte ja auch mit der "Formularabarbeitung" ändern können, ein Serverrequest also unerlässlich ist. $_SESSION zu verwenden setzt voraus, zu Beginn ALLE möglichen Werte zu laden. Und das ist irgendwie nicht besser als zwischendurch die Datenbank upzudaten. Falls ich das jetzt richtig verstanden hab.

//
nee, hab ich nicht. Sorry *zwinker*. Aber!: Sessions sind hier dennoch fehl am Platze. Du musst wirklich ALLE Kontaktdaten auslesen. Dann brauchst du eine (Clientseitige) Struktur, um diese temporär zu speichern und gegebenenfalls (wenn der User das Dropdown betätigt) auszugeben. Das machst du am besten mit nem Javascript-Array. Wart mal...


Bitte, hier ein Schnipsel als Beispiel, läuft in Firefox und IE 6
Code:

<html>
    <head>
        <script language="Javascript">
            function load() {
                var daten=new Array(0,1,2);
                daten[0]=new Array();
                daten[1]=new Array();
                daten[2]=new Array();
                daten[0]["Name"]="Hans Meiser";
                daten[0]["Anschrift"]="Schlossallee 12";
                daten[1]["Name"]="Ulrike Dicketittschen";
                daten[1]["Anschrift"]="Parkstraße 5";
                daten[2]["Name"]="Max Porn";
                daten[2]["Anschrift"]="Poststraße 254";
                return daten;
            }
            daten=load();
        </script>
    </head>
    <body>
    <select onChange="alert(this.value)" name="name">
        <script language="Javascript">
            for (var i=0; i < daten.length; ++i) {
               document.write("<option value='Id: "+i+"\nName: "+daten[i]["Name"]+"\nAdresse: "+daten[i]["Anschrift"]+"'>"+daten[i]["Name"]+"</option>");
            }
        </script>
    </select>
    </body>
</html>
 
Account gelöscht


Ort: -
Alter: -
Verfasst Mo 04.10.2004 16:14
Titel

Antworten mit Zitat Zum Seitenanfang

Keine Ursache *zwinker*
 
 
Ähnliche Themen Formular über JS verschicken und Rückmeldung in Seite laden
Dreamweaver Formular: Kalenderfelder als Auswahl?!?
Formular Dropdown je nach Erster Auswahl ändern
[PHP/MySQL] Daten aus der Datenbank in ein Formular laden
seite neu laden
Seite will nicht laden
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.