Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 17
  1. #1
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    MoinMoin,

    ich kann HTML, MYSQL und PHP und suche eine Problemlösung, für die ich wahrscheinlich zusätzlich Javascript und Ajax benötige. Bevor ich einen falschen Weg einschlage, würde ich gerne Eure Meinung hören.


    Die Kalorien für ein Rezept sollen berechnet werden:
    Der Benutzer gibt in 5 Eingabefelder jeweils eine Zutat ein (nicht aus einer Auswahlliste sondern händisch geschrieben).
    Jetzt sollen die Zutaten serverseitig in einer Datenbank gesucht und die Kalorien addiert werden. Dann soll der Benutzer die Gesamtkalorienzahl angezeigt bekommen. Die Internetseite soll dabei nicht neugeladen werden.
    Das soll sich in einer kleinen Box abspielen, die sich einfach in andere Internetseiten einbauen lässt.

    Lösung(?)
    Grob wird der Weg so sein:
    a Formular wird angezeigt: HTML + Javascript + CSS
    b Eingabe des Benutzers wird an Server übertragen: Ajax
    c Datenbank durchsuchen + Gesamtkalorienzahl zeigen: MYSQL + PHP
    d Daten zurück an Internetseite: Ajax
    e Ergebnis anzeigen: Javascript

    Liege ich da richtig? Oder was muss ich beachten?

    Weitere Fragen:
    • Muss die Eingabe in einem HTML-Formular erfolgen oder hat Javascript selbst Befehle, für Eingabeaufforderungen? Und kann man dann die ganze Eingabe-/Ausgabe-Box mit Javascript erstellen?
    • Zum Einbauen in andere Internetseiten: ich möchte anderen diese Kalorienberechnungs-Box zur Verfügung stellen. Wie kann man es anstellen, damit derjenige, der die Box in seine Homepage einsetzt, möglichst wenig Arbeit damit hat und der Einbau auch für Laien nicht kompliziert ist? Gäb es die Möglichkeit, die ganze Geschichte in eine javascript-Datei zu packen und die von meinem Server abrufen lassen? Und für den Einbau in die Homepage dann nur der Abruf dieser
      javascript-Datei - also nur ein Befehl in der Homepage?


    Ich hoffe, ich liege mit meinen Überlegungen nicht ganz falsch ... bzw. werde von Euch auf den richtigen Weg gebracht.

    Schönen Tag noch
    Jan

  2. #2
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Dein Lösungsweg über PHP, HTML-Formulare und MySQL ist im groben ok. Ajax und Javascript brauchst du dazu nicht unbedingt. Du kannst mit javascript die Eingabedaten validieren, dies sollte aber immer serverseitig (PHP) erfolgen. Das Laden der Box kann ja nicht so viel sein, denn groß sollte sie auch nicht sein, wenn sie in fremde Seiten eingebaut wird. Verstehe deshalb nicht so ganz die Forderung, die Seite nicht neu laden zu lassen. Dadurch wird vieles einfacher, und die Seite läuft auch ohne javascript. Wenn die Forderung bleibt, dann wirst du um Ajax nicht umhin kommen, und die Lösung ist genau so wie von dir beschrieben.
    Der den Einbau in eine fremde Seite kann z.B. über einen iframe erfolgen. Grundsätzlich ist die Same Origin Policy (SOP) zu beachten.

  3. #3
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jspit Beitrag anzeigen
    Das Laden der Box kann ja nicht so viel sein, denn groß sollte sie auch nicht sein, wenn sie in fremde Seiten eingebaut wird. Verstehe deshalb nicht so ganz die Forderung, die Seite nicht neu laden zu lassen. Dadurch wird vieles einfacher, und die Seite läuft auch ohne javascript.
    Richtig ist, dass die Box klein ist. Die Seite, in der sie eingebunden ist, kann jedoch recht groß sein, mit vielen Bildern. Deshalb soll das Ergebnis ohne Neuladen der ganzen Seite erfolgen.

    Zitat Zitat von jspit Beitrag anzeigen
    Der Einbau in eine fremde Seite kann z.B. über einen iframe erfolgen.
    Ist das Einfügen des iframes dann alles, was der fremde Webmaster machen muss? Oder muss er noch separat eine Javascript. und eine CSS-Datei einbinden und evtl. noch irgendwelche onklicks?

    Zitat Zitat von jspit Beitrag anzeigen
    Grundsätzlich ist die Same Origin Policy (SOP) zu beachten.
    Wenn die fremde Seite auf meinen Server zugreift, verstößt das doch sicherlich immer gegen die SOP. Wobei mir sehr viele Seiten begegnen, auf denen man Javascript für eine ganze Latte an Domains zulassen muss, bevor ich die Seite komplett angezeigt bekomme.

  4. #4
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jannmann Beitrag anzeigen
    Wenn die fremde Seite auf meinen Server zugreift, verstößt das doch sicherlich immer gegen die SOP. Wobei mir sehr viele Seiten begegnen, auf denen man Javascript für eine ganze Latte an Domains zulassen muss, bevor ich die Seite komplett angezeigt bekomme.
    Das ist etwas anderes. Wenn du ein JS auf deine Seite einbindest, dann hat es ganz normalen Zugriff auf alle Elemente. Die SOP kommt erst zum tragen, wenn du eine fremde Seite in deine einbindest (z.b. mit einem iframe), dann hast du keinen Zugriff auf diese.

  5. #5
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jannmann Beitrag anzeigen
    Ist das Einfügen des iframes dann alles, was der fremde Webmaster machen muss?
    Ja. Bei Aktivitäten im iframe (z.B. Absenden eines Formulars) wird auch nur der iframe aktualisiert und nicht die umgebende Seite.

  6. #6
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jspit Beitrag anzeigen
    Ja. Bei Aktivitäten im iframe (z.B. Absenden eines Formulars) wird auch nur der iframe aktualisiert und nicht die umgebende Seite.
    Also gäbe es für meine Box zwei Möglichkeiten:
    1. ohne iframes dafür über Ajax
    2. mit iframes: dafür wird Ajax nicht benötigt

    Lösung 2 zwei könnte ich jetzt schon erstellen, da Ajax dafür nicht benötigt

    Welches ist denn die zeitgemäßere, elegantere Lösung?
    a für Surfer
    b für denjenigen, der sie in seine Homepage einbauen soll? (Einige Freunde, die EDV-Laien sind, haben Interesse daran).

  7. #7
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Ohne iframe hast du sofort ein SOP-Problem, wenn eine fremde Webseite von deinem Server per Ajax Daten/Code holen soll.

  8. #8
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jspit Beitrag anzeigen
    Ohne iframe hast du sofort ein SOP-Problem, wenn eine fremde Webseite von deinem Server per Ajax Daten/Code holen soll.
    Also kommt nur eine iframe-Lösung in Frage und da in der Box nicht viel Inhalt ist, kann man sich Ajax schenken und nicht nur die Ergebnisse für die Box sondern gleich den ganzen iframe mit der Box neu laden.

    Ich benötige also nur ein HTML-Formular in einem iframe, dass je nach Eingabe des Benutzers Daten vom Server abruft.

    1. Wie können die Freunde, die diesen iframe auf ihre Homepage einbinden Farben und Aussehen anpassen (per css)?
    2. Ist auch ein Javascript-Befehl in dem Formular möglich, der z.B. nach Auswahl aus einer Auswahliste automatisch anstößt, den Input an den Server zu schicken und dann das neue Ergebnis anzuzeigen?

  9. #9
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jannmann Beitrag anzeigen
    1. Wie können die Freunde, die diesen iframe auf ihre Homepage einbinden Farben und Aussehen anpassen (per css)?
    2. Ist auch ein Javascript-Befehl in dem Formular möglich, der z.B. nach Auswahl aus einer Auswahliste automatisch anstößt, den Input an den Server zu schicken und dann das neue Ergebnis anzuzeigen?
    Du hast irgendwie Verständnisprobleme, was iframes betrifft. Lies dich da mal ein. Was im iframe abläuft, ist deine Webseite. Die fremde Webseite bindet den iframe ein, und gibt als Quelle (src) deine Webseite an. Deine Freunde können Größe und Rahmen des iframe's festlegen, nicht jedoch im iframe Veränderungen vornehmen, auch nicht mit JS (SOP!).
    Ich schlage vor, fang doch erstmal an, die php-Seite zu erstellen.

  10. #10
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jspit Beitrag anzeigen
    Du hast irgendwie Verständnisprobleme, was iframes betrifft. Lies dich da mal ein. Was im iframe abläuft, ist deine Webseite. Die fremde Webseite bindet den iframe ein, und gibt als Quelle (src) deine Webseite an. Deine Freunde können Größe und Rahmen des iframe's festlegen, nicht jedoch im iframe Veränderungen vornehmen, auch nicht mit JS (SOP!).
    Ich schlage vor, fang doch erstmal an, die php-Seite zu erstellen.
    Nö, ganz so schlimm ist es nicht. Der Nebel lichtet sich langsam. Und ich sehe auch Möglichkeiten, damit meine Freunde das css im iframe beeinflussen: Es wird einige Parameter geben die mit Aufruf von Source übergeben werden. Die auf dem Server genutzte css-Datei wird dann dynamisch generiert und die Parameter berücksichtigt ... da geht glaube ich viel.

    Nur Javascript ist mein Stiefkind :-( Da habe ich wirklich Verständnisprobleme. Ich bräuchte schon eine Reaktion im iframe, wenn der Benutzer aus einer Kombobox eine Auswahl trifft. Da kommt ja wohl nur javascript in Frage. Ich trau mich noch (ein letztes Mal) zu fragen: Geht da was oder geht da gar nichts?

    Und gleich fange ich in der Tat an, erste Versuche zu programmieren.

    Gruß
    Jan
    Geändert von jannmann (18-06-2012 um 20:39 Uhr)

  11. #11
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jannmann Beitrag anzeigen
    Nur Javascript ist mein Stiefkind :-( Da habe ich wirklich Verständnisprobleme. Ich bräuchte schon eine Reaktion im iframe, wenn der Benutzer aus einer Kombobox eine Auswahl trifft. Da kommt ja wohl nur javascript in Frage. Ich trau mich noch (ein letztes Mal) zu fragen: Geht da was oder geht da gar nichts?
    Nein, da geht gar nichts

  12. #12
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Thema: javascript im iframe:
    Zitat Zitat von ein schlauer Beitrag anzeigen
    Nein, da geht gar nichts
    Die Nebel lichten sich schneller als ich dachte: kleines PHP-Beispiel gebaut und Lösungen gefunden, wie im iframe css vom client beeinflusst werden kann und dass auch javascript vom Server mitgegeben werden kann.

    Was will man mehr :-)

    Danke für Eure Anregungen - hab mein Projekt fast fertig.
    Gruß, Jan

  13. #13
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von jannmann Beitrag anzeigen
    Die Nebel lichten sich schneller als ich dachte: kleines PHP-Beispiel gebaut und Lösungen gefunden, wie im iframe css vom client beeinflusst werden kann und dass auch javascript vom Server mitgegeben werden kann.
    Vom Server, der die Inahlte vom iframe ausliefert? Das geht natürlich schon. Du kannst mit Hilfe von Parameter dein PHP Skript natürlich beeinflussen, dass ist i.d.R. der Sinn und Zweck von dynamischen Skripten. Du kannst mit PHP Skripten dann alles an den Client senden, was er versteht. Du kannst aber nicht mit JS fremde Inhalte beeinflussen.

  14. #14
    jannmann ist offline Jungspund
    registriert
    18-06-2012
    Beiträge
    13

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Zitat Zitat von ein schlauer Beitrag anzeigen
    Vom Server, der die Inahlte vom iframe ausliefert? Das geht natürlich schon. Du kannst mit Hilfe von Parameter dein PHP Skript natürlich beeinflussen, dass ist i.d.R. der Sinn und Zweck von dynamischen Skripten. Du kannst mit PHP Skripten dann alles an den Client senden, was er versteht. Du kannst aber nicht mit JS fremde Inhalte beeinflussen.
    Ich glaube wir sind nicht mehr weit voneinander entfernt :-)
    Vermutlich geht es nur noch um Missverständnisse, wo welche Datei liegt.
    Ich habe es wie unten gemacht und das funktioniert wunderbar.

    1. Server der den iframe ausliefert
    ... hier liegt auch das php-Programm, dass den iframe befüllt
    ... hier liegt auch das css, das den iframe formatiert
    hier liegt auch das javascript, das im iframe mitgeliefert wird (z.B. mit onklick, um Aktionen auszulösen)
    ||
    \/
    2. Server der den iframe empfängt (ist eigentlich Client bezgl. des iframes)
    ... der enthält die Homepage, die der Surfer aufruft
    ||
    \/
    3. Client vom Surfer
    ... der ruft bei 2 die Homepage auf
    ... und freut sich, dass durch Javascript Aktionen ausgelöst werden, wenn er in den iframe klickt.

    Danke noch einmal für Deine/Eure Anregungen - haben mir geholfen, von der Ajax-Lösung Abstand zu nehmen und die Methoden anzuwenden, die ich beherrsche.

    Gruß, Jan
    Geändert von jannmann (19-06-2012 um 10:14 Uhr)

  15. #15
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.732

    AW: Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen

    Der iFrame wird von keinem Server empfangen/angefordert, sondern vom Client direkt.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Javascript/HTML -> PHP/MYSQL -> Javascript: Projekt umsetzen
    Von jannmann im Forum Serverseitige Programmierung
    Antworten: 0
    Letzter Beitrag: 18-06-2012, 04:55
  2. Antworten: 5
    Letzter Beitrag: 10-01-2012, 08:58
  3. Javascript umsetzen
    Von yachubashi im Forum JavaScript
    Antworten: 8
    Letzter Beitrag: 23-06-2011, 10:13
  4. Antworten: 4
    Letzter Beitrag: 11-10-2010, 15:48

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •