AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Internetportal: Ähnliches Formular wie ein Treiberdownload
Thema durchsuchen
Ansicht
Themen-Optionen

Internetportal: Ähnliches Formular wie ein Treiberdownload

Ein Thema von Errraddicator · begonnen am 18. Nov 2009 · letzter Beitrag vom 20. Nov 2009
Antwort Antwort
Errraddicator

Registriert seit: 26. Jun 2008
161 Beiträge
 
Delphi 2007 Professional
 
#1

Internetportal: Ähnliches Formular wie ein Treiberdownload

  Alt 18. Nov 2009, 10:29
Hallo Leute,

ich entwickele gerade ein Internetportal mit PHP.
Dort habe ich unter Anderem ein Formular wo ich sinngemäß eingeben kann:

<Mandant>
<Monat>
Daten Laden

<Mandant> ist eine vorgefertigte Liste, welche ich per PHP erstelle und in einer Combobox darstelle.
Der Monat hingegen ist im Moment aber ein frei definierbares Textfeld, welches ich dann validieren muss etc.

...

Schöner wäre es nun, wenn ich - ähnlich wie bei Downloadseiten von Treibern - 2 Listboxen hätte.
Links die für den Mandanten, rechts die für die verfügbaren Monate.

Und je nachdem, welchen Mandant ich auswähle, erhalte ich dann rechts die entsprechenden Monate zur Verfügung.

Nun zu meiner Frage:
Wie mache ich sowas?

...

Das einzige was ich mir so vorstellen kann, wäre doch, dass ich das per JavaScript löse und der HTML-Seite fixe Arrays mit den Zuordnungen mitgebe, oder?

Aber die Lösung finde ich persönlich arg unschön (ma ganz zu schweigen davon, dass ich von JavaScript kaum bis gar keine Ahnung habe) und evt. gibt es ja eine schönere Lösung.


Danke im Voraus

cu Patrick
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 18. Nov 2009, 10:31
Wo kommen die Daten denn her? Du kannst doch auch mit Javascript eine Datenbank abfrage machen oder geht das nicht?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Errraddicator

Registriert seit: 26. Jun 2008
161 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 18. Nov 2009, 10:34
Zitat von Luckie:
Wo kommen die Daten denn her? Du kannst doch auch mit Javascript eine Datenbank abfrage machen oder geht das nicht?
Die liegen in einer Datenbank richtig.
Aber ich würde eigentlich ungern via JavaScript auf die Datenbank zugreifen, weil die Abfragen und Co. dann doch mehr oder weniger sichtbar für jedermann sind, oder?

Wenn dann möchte ich eher diese Logik in PHP auslagern und nur noch das Ergebnis im Browser selbst halten, so dass der User nicht sieht, woher das Ergebnis kommt.

...

Aber die Frage bezog sich ja ganz generell auf die Vorgehensweise, evt. gibt es ja auch noch eine andere Möglichkeit, so etwas zu realisieren, als mit JavaScript?
  Mit Zitat antworten Zitat
Errraddicator

Registriert seit: 26. Jun 2008
161 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 18. Nov 2009, 10:38
Nachtrag:
Ich überleg z.B. gerade in die Richtung, dass ich das "OnChange"-Event (falls es sowas dort gibt) via JavaScript abfange und dann jedes mal die Seite mit den entsprechenden Parametern neu lade:

z.B.
Start der Seite: daten.php
-> (Listet alle verfügbaren Mandanten auf)

Auswahl des Mandanten: daten.php?mandant=1
-> Listet alle Mandanten auf, markiert den 1. und listet dann alle verfügbaren Monate auf

...

So hätte ich doch quasi die komplette Logik weiterhin in PHP und JavaScript bräuchte nur noch das OnChange Event abfangen
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#5

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 18. Nov 2009, 10:48
Zitat von Errraddicator:
Nachtrag:
Ich überleg z.B. gerade in die Richtung, dass ich das "OnChange"-Event (falls es sowas dort gibt) via JavaScript abfange und dann jedes mal die Seite mit den entsprechenden Parametern neu lade:

z.B.
Start der Seite: daten.php
-> (Listet alle verfügbaren Mandanten auf)

Auswahl des Mandanten: daten.php?mandant=1
-> Listet alle Mandanten auf, markiert den 1. und listet dann alle verfügbaren Monate auf

...

So hätte ich doch quasi die komplette Logik weiterhin in PHP und JavaScript bräuchte nur noch das OnChange Event abfangen
Sowas löst man mit AJAX
Und zwar lädst du im OnChange der Combo die 2. Combo nochmal.
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Errraddicator

Registriert seit: 26. Jun 2008
161 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 19. Nov 2009, 10:36
Nur zur Info:
Hab es jetzt übrigens so gelöst, wie ich es weiter oben angedeutet hatte:
Sprich, das Formular ruft so gesehen sich selbst auf und weiß dann wie es sich selbst darzustellen hat.
(Mal mit Monaten, mal ohne etc.)

...

Das mit AJAX, JavaScript und Co. funktioniert bei mir aus div. Gründen nicht so recht,
da das Portal aus mehreren Ebenen besteht und ich nicht mehr so ohne weiteres in den Header der HTML-Seite komme.

Ausserdem müsste ich dann aufgrund div. Abfragemechanismen ein Teil der Programmlogik in das JavaScript auslagern, was natürlich absolut gar nicht geht.

...

Aber was solls, so funktionierts ja auch.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#7

Re: Internetportal: Ähnliches Formular wie ein Treiberdownlo

  Alt 20. Nov 2009, 11:25
Der Grund warum AJAX und Co. nicht funktionieren ist einfach schlechtes Applikations-Design.

Wenn du deine Applikation schoen aufgebaut hast/haettest gibts doch sicherlich eine Methode im Model des Mandanten, welches die verfuegbaren Monate ausgibt. So, diese Methode verknpuefst du mit einer Action im Controller, so dass du eine URL aufrufen kannst, dieser URL eine Mandanten-ID mitgibst und die verfuegbaren Monate rauskriegst. Die View ist dann dafuer zustaendig, das Ganze in JSON oder XML auszugeben. Dann musst du nur noch den Request per JS starten und das XML verarbeiten, was dank heutiger JS-Frameworks bei weitem keine Kunst mehr ist.

Glaub mir - wenn du vor Fertigstellung deiner Applikation sagen musst, dass AJAX und Co nicht funktionieren weil du "nicht mehr so ohne weiteres in den Header der HTML-Seite" kommst, ist es definitiv nochmal an der Zeit zu ueberlegen, ob du beim bisherigen Entwickeln auch wirklich ueberlegt hast. Just my 2 Cents.

@Luckie: mit JS Datenbankabfragen stellen funktioniert - ist aber nur zu empfehlen wenn man eine sehr stark ausgepraegte masochistische Ader hat. Der uebliche Weg ist es eben, dies ueber AJAX-Requests nachzuladen, zumal es auch die Angriffsflaeche signifikant verringert.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz