Ergebnis 1 bis 18 von 18

Thema: PHP-Skript in Seite einbinden

  1. #1
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard PHP-Skript in Seite einbinden

    Hallo,
    ich baue grade eine neue Seite für einen Gewerbeverein. Dieser hat eine alte Homepage auf Frame-Basis. In dieser existiert ein von Hand geschriebenes PHP-Skript welches die Mitglieder die in einer mySQL Datenbank gespeichert sind in der jeweils gewünschten Form anzeigt.
    Auch die neue Seite wird eine entsprechende Funktion benötigen. Ich habe es jetzt auch erstaunlich schnell geschafft das PHP-Skript und die Datenbank von der alten seite auf meine neue Seite zu kopieren und jetzt ein Modul "custom html" genutzt um ein einfaches suchformular auf der Seite einzubinden, welches wie auf der alten Seite das PHP Skript mit den entsprechenden parametern öffnet. Nur habe ich jetzt das Problem, dass durch die Framesetbasis der alten Seite das Skript natürlich im normales Frameset angezeigt wurde.
    Leider weiß ich jetzt nicht, wie ich das im Contao-System hinkriegen. Sollte ich einfach ein IFrame einsetzen in welchem ich das Skript öffne? (Das wäre natürlich nicht gerade elegant...)
    Oder hilft es vielleicht eine art eigenes "echtes" Modul zu schreiben? Denn die werden ja schließlich auch nur im entsprechenden Teil der Homepage angezeigt.
    Wen mich jemand auf ein entsprechendes Tutorial oder etwas ähnliches verweisen könnte wäre ich wirklich dankbar. Ich weiß leider nicht wirklich wonach ich suchen soll...

    Danke

  2. #2
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Nik-ffm,

    wen es nur um die Anzeige von Daten aus einer Datentabelle geht und das Suchen von Einträgen, solltest Du Dir mal das Auflistungsmodul näher anschauen. Das Modul gehört zum Contao-Standard (Du brauchst also nichts nachinstallieren).

    Mit der Auflistung kannst Du ggf. sogar auf Dein PHP-Skript verzichten und die Abfrage sauber mit Boardmitteln realisieren.

  3. #3
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Danke für den Tipp soweit schonmal. Ich habe jetzt auch eine Weile im Quellcode gestöbert und verstehe um ehrlich zu sein nur Bahnhof. Das sind einfach zu viele Contao-Eigene Funktionen um gescheit durchzublicken. Ich kenne mich sonst in der Contao-Dokumentation jetzt auch nicht sonderlich gut aus. Alles was ich fand war: http://www.contao.org/module.html und das Wiki, wobei ich auch dort nicht genau weiß welchen Beitrag ich mir anschauen soll. Hat von euch vielleicht noch jemand einen Tipp wo ich mich einlesen kann?

    Danke schonmal,
    Nico

  4. #4
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo,

    ich meinte nicht, dass Du in den Contao-Core-Modulen Änderungen machen sollst (Da braucht man bei Contao fast nie ran). Es gibt ein Modul, welches speziell zur Ausgabe von Datenbankinhalten aller Art gemacht ist.

    Du legst Dir ein neues Modul an und wählst den Modultyp "Auflistung" (unter Anwendungen). Dort kannst Du dann alle Parameter für die Datensatz-Selektion angeben.

  5. #5
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Ok, ja, da hast du wohl recht. Contao ist schon wirklich super gut durchdacht - das bin ich nicht gewohnt. Bei den kleineren Systemen die ich bisher genutzt hab hab ich einfach an den Dateien selbst rumgeschraubt...

    Nach ein paar kleineren Problemen (meine Datenbank hatte zum Beispiel kein id-feld...) scheint es jetzt zu funktionieren. Jetzt muss ich nur noch das Template ein wenig abändern und die Suche einbinden. Allerdings weiß ich noch nicht wie das geht. Es gibt doch bestimmt auch hierfür in Contao einen Parameter den ich noch nicht entdeckt habe, oder? Also ich meine, dass ein Suchfeld auf der Startseite nur die Daten einer bestimmten MySQL Tabelle durchsucht und dann die Ergebnisse in einem von mir eingesteltem Listing anzeigt.

  6. #6
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Nik,

    im Auflistungsmodul kannst Du im Feld "Durchsuchbare Felder" eine Liste der Spalten angeben, in denen Du Suchen zulassen möchtest.

    Wenn Du dann das originale Template "list_default" eingestellt läßt, erzeugt Contao automatisch über der Auflistung ein Suchformular, was nur in der ausgewählten Spalte sucht.

    Ist es das, was Du brauchst?

    EDIT: Wenn ich den Quellcode richtig deute, kannst Du den Suchbegriff auch als GET-Parameter in der URL mit übergeben: z.B. ?for=Nik
    Geändert von do_while (07.02.2011 um 17:58 Uhr)

  7. #7
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    ja, prinzipiell meine ich das. Nur will ich das Suchfeld auf der Startseite haben, dort allerdings noch nicht die Liste anzeigen. Wie mache ich das am besten? Was mir so spontan einfällt:
    Template ändern?
    Per CSS einfach die Tabelle ausblenden ^^

    Weitere, noch bessere Ideen?

    Wenn die Homepage online ist poste ich sie auch mal, dann darfst du (falls du nach deiner Ausführlichen Beratung interesse hast) sie dir mal anschauen =)

  8. #8
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du kannst mit dem Formulargenerator ein Formular erstellen, das dann auf die Seite mit der Suchliste (Auflistung) weiterleitet. Die Felder sollten dann entsprechend dem Suchformular des Auflistungsmoduls benannt werden und per GET verschickt werden.

    Genaueres kannst Du im Quellcode der Auflistungs-Such-Seite entnehmen.

    Sorry - wieder keine PHP-Änderung notwendig (so ist Contao!)

  9. #9
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Heyho,
    sorry dass ich so lange nicht geantwortet hab, aber Uni und in diesem Fall Rechnungswesen geht vor...
    Ich habe das jetzt mal versucht. Du meinst, ich soll einfach die id als id des Suchfeld-formular eingeben? Das habe ich versucht. Wenn ich jetzt den Such-Button anklicke, dann wird die Seite auch neu geladen. Allerdings wird nicht das gewünschte ergebnis angezeigt, sondern der Text nur in das eigentliche Suchfeld der Liste eingetragen. Wenn ich jetzt auf den Suchbutton des Suchfeldes klicke funktioniert auch alles wie immer. Allerdings möchte ich halt direkt suchen können (ich hoffe was du meinst)

    Ich habe überlegt, ob es daran liegt, dass mein suchen-button des Formulars nicht die ID des suchbuttons der liste hat. Allerdings gibts da im Admin-Bereich auch nur die Möglichkeit eine Klasse zuzuweisen und nicht die einer ID...

    Hast du da noch einen tipp?

    Und mal ganz allgemein: Bist du eigentlich irgendwie Entwickler oder sowas? Weil ich dachte, das System wird komplett nur von Leo Feyer entwickelt. Aber andererseits - um auf so ne Verbindung zu kommen muss man sich schon gut im System auskennen...

  10. #10
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Nik-ffm,

    also in meinen Tests funktioniert es, auf der Startseite baust Du ein Formular ein:
    HTML-Code:
    <form action="index.php/zielseite.html" method="get">
    
    <div class="formbody">
    <input type="hidden" name="search" value="lastname" />
    <input type="text" name="for" class="text" value="" />
    <input type="submit" class="submit" value="Suchen" />
    </div>
    </form>
    Beim Absenden wird dann Deine Zielseite wie folgt aufgerufen:
    Code:
    http://www.meineDomain.de/index.php/zielseite.html?search=lastname&for=Meier
    Dann sollten nur alle Meiers aufgelistet werden.

    ---
    Es gibt hier einige Entwickler im Contao-Projekt. Leo pflegt den Contao Core, wird aber durch mehrere andere Entwickler in den Tests und beim Codereview unterstützt. Jeder, der ein Änderungsticket unter Fehler melden erstellt, sollte die resultierende Änderung auch kontrollieren.

    Die meisten Erweiterungen kommen von anderen Entwicklern, häufig weil in einem Kundenprojekt eine derartige Funktionatlität benötigt wurde. Jeder trägt so dazu bei, dass die Erweiterungsverwaltung über Contao-Erweiterungen zu nahezu jeder Aufgabenstellung verfügt.

  11. #11
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Gut, ich hatte das hidden-Feld nicht! Jetzt scheint alles wie gewünscht zu funktionieren. Bis ich die Homepage wirklich mal fertig machen kann wirds zwar noch ne Weile dauern - Klausurenphase... - aber der Teil funktioniert wohl.

    Vielen vielen Dank dir nochmal.

  12. #12
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Verdammt, ich dachte ich hätte alles. Aber ich finde irgendwie bei der Form die ich zum suchen erstellt habe nirgends die Möglichkeit um das Module von tableform zu tableless zu stellen. Das geht doch eigentlich unter themes - frontend modules - und dann im modul, oder wo war das?

  13. #13
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Diese Einstellung findest Du im Formulargenerator, im Headereintrag Deines Formulars.

  14. #14
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Hallo do while,
    ich hoffe du ließt das hier noch. Ich bin nämlich doch noch einmal auf ein echtes Problem gestoßen. Bisher muss ich bei der Suche immer angeben, welche Spalte durchsucht werden soll (Bspielsweise Company, Vorname, Nachname...)
    möchte ich jetzt allerdings mehrere Spalten auf einmal durchsuchen, so dass sowohl firma müller als auch Herr müller gefunden wird, dann weiß ich nicht wie es funktionieren soll.
    Mache ich einfach mehrere gleichnamige Auswahlfelder, so wird nur nach dem letzten gesucht, das selbe ist es auch, wenn ich ein Multiauswahl Feld daraus mache.
    An anderer Stelle im Forum wurde mir dann auch gesagt, dass es eine solche Möglichkeit nicht gebe.

    1) Gibt es die wirklich nicht?
    2) Es müsste doch funktionieren, dass ich einfach bei Button Knopfdruck die Suchfunktion mehrfach ausführe - dann bekäme ich doch alle Resultate. Zwar hätte ich dann das Problem der Dupletten (bei Herr Müller mit seiner Firma Müller), aber es wäre zumindest ein Anfang. Wie heißt die Suchfunktion in Contao?

  15. #15
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.615
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Nik-ffm,

    die Suchfunktion wird nur einmal ausgeführt, da Du ja per URL gleich die Suchbegriffe mit übergibst. Ein mehrfacher Aufruf ist nur mit eigenen Anpassungen (z.B. eigenes Modul) möglich. Mir ist da auch keine andere Möglichkeit bekannt.

  16. #16
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Ok, das klingt ja nicht viel versprechend. Aber dummerweise muss ich das irgendwie hinkriegen... Ich muss gestehen, ich verstehe sowieso nicht wirklich was dort oben in dem Adressfeld steht, wenn ich beispielsweise eine Suchaktion in der Spalte "firstname" nach "steffen" ausführe. Dann steht da:
    index.php/mitglieder.html?search=firstname&search=company&pe r_page=0&search=firstname&for=steffen&x=0&y=0

    Aber das wäre auch nicht wirklich wichtig was dort steht. Prinzipiell ist es doch durchaus möglich, in mehreren Spalten einer SQL-Datenbank zu suchen. Und dann müsste es doch auch Möglich sein, die ergebnisse auszugeben? Warum sollte das mit Contao nicht möglich sein?

  17. #17
    Contao-Nutzer
    Registriert seit
    17.12.2010.
    Beiträge
    66

    Standard

    Hi nochmal,
    mir ist grade eine Alternativ-Idee gekommen: Ich könnte auch einfach alle Felder die Suchbar sein sollen (BSP: Nachname, Company) zusammen in ein Feld schreiben und dann eben nur diese Spalte durchsuchen. Der Punkt ist nur, dass es natürlich sehr nervig wäre, das bei jeder Änderung händisch machen zu müssen. Gibt es denn eine Möglichkeit, dass mein Beispielsweise eine Abfrage schreibt, die wenn man Informationen eines Members speichert, automatisch den Inhalt von Feld Nachname, Company nimmt, und in dem neuem Feld zusammenführt? Also, das denke ich, könnte ich sogar selbst schreiben. Mein Problem wäre nur, wo ich den Code denn einhaken müsste? Welche Funktion wird denn genutzt um Informationen eines Members zu speichern. Weißt du da etwas?

    (das wäre ja dann sogar auch relativ einfach als Modul anzubieten, oder irre ich mich)

  18. #18
    Contao-Fan
    Registriert seit
    19.06.2009.
    Beiträge
    831

    Standard neue Version der Erweiterung cm_membergooglemaps

    Das Proplem sollte mit der neuen Version der cm_memergooglemaps lösbar sein.
    http://www.contao.org/erweiterungsli...030018.de.html

    Im Backend kann festgelegt werden, welche Felder bei der Suche berücksichtigt werden sollen.
    Gruß ChrMue

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Spamschutz-Skript einbinden, aber wo?
    Von schueler im Forum Entwickler-Fragen
    Antworten: 7
    Letzter Beitrag: 20.12.2011, 14:57
  2. PHP-Skript als Modul einbinden funktioniert nicht unter 2.9
    Von niccaballero im Forum Allgemeine Inhaltselemente
    Antworten: 6
    Letzter Beitrag: 12.07.2010, 15:59
  3. Formular: Wie Danke-Seite einbinden?
    Von Mercurio im Forum Formulare
    Antworten: 4
    Letzter Beitrag: 17.01.2010, 19:51
  4. XML Schnittstelle anzapfen und in Seite einbinden
    Von buchse12 im Forum Sonstiges zu Contao
    Antworten: 10
    Letzter Beitrag: 31.12.2009, 13:51
  5. Wie Formular via Inserttag in die Seite einbinden?
    Von minstyle im Forum Formulare
    Antworten: 3
    Letzter Beitrag: 16.07.2009, 11:57

Lesezeichen

Lesezeichen

Berechtigungen

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