SQL-Datenbank auslesen und Daten in Tabelle ausgeben

  • Hallo Ernst,

    Hallo j!-n,
    du bist jetzt der erste, der konkret sagt, dass dieses Programm meine Anforderung erfüllen kann. Anscheinend kennt sonst niemand das Programm näher. Ich hatte es in den Extensions auch schon gefunden, nur bin ich als Rentner, der auf die 70 geht in Englisch nicht so fit wie andere und komme mit den Erläuterungen nicht so zu recht wie andere. Danke für deinen Tipp.


    es gibt da: https://joodb.feenders.de/buy-joodb.html, sogar ziemlich neue Version. Wegen Englisch usw: gibt es auch ein Forum:


    Beispiel: https://joodb.feenders.de/foru…ulartemplate.html?start=6. Dieser Mr. Dirk spricht deutsch :-)


    Liebe Grüße
    Christine
    Edith sagt: ah, hallo Chris > hast ja schon erwähnt wegen dem Forum. Bin zu spät.

  • Hallo firstlady,
    auf der bereits erwähnten Webseite www.kcv-sb.de werden die Chorbezogenen Daten mit dem chordatenForum.zip ausgelesen und per ID zugeordnet. Mit kcv-bearbeitenForum.zip werden die Daten bearbeitet und in der Datenbank wieder abgespeichert. Dies wollte ich jetzt auch auf Joomla umsetzen. Auf meiner neuen Webseite, die ich im Moment auf XAMPP vorbereite habe ich in der SQL-Datenbank eine neue, identische Datenbank mit gleichen Datenfeldern angelegt. Die Daten aus der alten Datenbank habe ich per SQL exportiert und in die neue Joomla-Datenbank importiert. Dies hat ohne Probleme funktioniert. Alle meine Daten konnte ich portieren. Darin hatte ich eigentlich das größte Problem gesehen. Ich war nicht davon ausgegangen, dass die formatierte Anzeige der Daten in Joomla so viele Probleme bereiten würde. Auf der besagten Webseite sind die Daten unter CHÖRE und dann grüner Pfeil zu sehen. So in dieser Form wollte ich es auch in Joomla umsetzen. Mit dem Plugin DirectPHP hatte ich die Grundlage geschaffen, dass PHP-Script auf Joomla läuft. Mit dem Script
    <?php $db=JFactory::getDBO(); $db->setQuery("SELECT * FROM #__db-daten"); $result = $db->loadObjectList(); foreach( $result as $zeile) { echo $zeile->text1;}?>
    finde ich Zugang zu den Daten. Was mir fehlt, ist der entsprechende PHP-Code um meine Daten ( mit Chorbezogender ID ) in eine Tabelle zu schreiben. Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt.
    Gruss ernades

  • Hallo de Gobbis,
    danke für deinen Tipp, aber damit komme ich leider nicht zurecht. Wollte mir mal dein Formular-Plugin ( plg_content_jtf ) ansehen, aber das lässt sich bei mir nicht installieren. Es kommt immer eine Fehlermeldung ( JInstaller: :Install: Die XML-Installationsdatei konnte nicht gefunden werden. ).
    Danke für die Mühe auch der anderen Moderatoren.
    Ich hatte nach einer Lösung für mein Problem gesucht, das ich eingehend beschrieben hatte. Außer einigen LINKS und groben Ansätzen konnte mir leider keiner richtig weiterhelfen.
    Damit schließe ich diesen Tread und schaue mich woanders um.


    Gruss ernades

  • Hallo ernandes,
    mein Plugin plg_content_jtf dient nur dazu um Kontaktformulare zu erstellen, es schreibt nichts in die Datenbank, wird dir also in deinem Fall nicht weiterhelfen.


    Das Plugin plg_content_jtcsv2html erstellt aus einer CSV-Datei eine HTML-Tabelle die du im Beitrag ausgeben lassen kannst. Solltest du also überlegen die Liste in einer Excel-Tabelle verwalten zu wollen, kannst du diese als CSV exportieren und dann mein Plugin, wie in der Beschreibung, verwenden.


    Die von mir verlinkte Ausgabedatei erstellt aus den Informationen der CSV, die vorher in ein Array umgewandelt werden, die von dir gewünschte Tabelle. Da du ja schon das PHP zum auslesen der Datenbank hast, musst du jetzt nur noch die Ausgabedatei so anpassen, dass deine erhaltenen Informationen an der richtigen Stelle ausgegeben werden.


    Mit all den hier genannten Hinweisen kann dir ein PHP-Programmierer problemlos dein Script fertigstellen.


    Gruss degobbis

  • Danke deGobbis,
    für deine Hinweise und Erläuterungen. Den Umweg über eine CSV-Datei wollte ich wenn möglich vermeiden. Ich hatte gehofft hier im Forum einen Programmierer anzutreffen, der mir mit dem nötigen Code weiterhelfen könnte. Mit etwas Geduld werde ich bestimmt eine Lösung für mein Problem finden.
    Danke für alles.
    Gruss ernades

  • Versuch es mal mit

    PHP
    1. <?php $db=JFactory::getDBO(); $db->setQuery("SELECT * FROM #__db-daten"); $result = $db->loadAssocList();


    Damit bekommst du ein assoziatives Array das du mit einer Schleife durchlaufen kannst.


    Code
    1. foreach($result as $zeile){
    2. echo "<tr>";
    3. echo "<td class='bez'>Vorname / Name</td>";
    4. echo "<td class='daten'>" . $zeile['v_vorname'] ." ". $zeile['v_nachname'] . "</td>";
    5. echo "</tr>";echo "<tr>";echo "<td class='bez'>Straße-Nr</td>";
    6. echo "<td class='daten'>". $zeile['v_strassenr'] . "</td>";
    7. echo "</tr>";
    8. .
    9. .
    10. .


    Die Namen in den eckigen Klammern entsprechen dann den Tabellenüberschriften.


    Solche einmaligen Tabellenabfragen löse ich immer mit einem kleinem selbstgeschriebenen Modul. Die Tutorials https://youtu.be/8GEmuP3hhKQ haben mir dabei sehr geholfen.
    Vielleicht kommst du ja damit deiner Lösung ein Stück näher.

  • hallo nathan77,
    danke, dein Code hat mich ein Stück weitergebracht. Nur die Anzeige der Daten ist noch unformatiert. Es steht dann Vorname/Name text1 text2 text3 ... u.s.w. alles in einer Reihe. Wie bekomme ich die Daten in eine Tabelle?

    Code
    1. <div>&lt;?php $db=JFactory::getDBO(); $db-&gt;setQuery("SELECT * FROM #__chordaten WHERE id='2' "); $result = $db-&gt;loadAssocList();</div><div>foreach($result as $zeile)</div><div>{</div><div>"&lt;table width="300"&gt;"</div><div>echo "&lt;tr&gt;";</div><div>echo "&lt;td&gt;"Vorname / Name "&lt;/td&gt;";</div><div>echo "&lt;td&gt;"&nbsp;&nbsp;. $zeile['v_vorname'] ." ". $zeile['v_nachname'] . "&lt;/td&gt;";</div><div>echo "&lt;/tr&gt;";</div><div>echo "&lt;tr&gt;";</div><div>echo "&lt;td&gt;"Straße-Nr"&lt;/td&gt;";&nbsp;</div><div>echo "&lt;td&gt;". $zeile['v_strassenr'] . "&lt;/td&gt;";</div><div>echo "&lt;/tr&gt;";</div><div>"&lt;/table&gt;"</div><div>}</div><div>foreachend;?&gt;</div>



    In diesem Code ist allerdings noch ein Fehler "syntax error, unexpected '<', expecting end of file". Wenn jetzt noch meine Daten in einer Tabelle untereinander ausgegeben würden, wäre ich einen ganz großen Schritt weiter. An diesem Problem sitze ich jetzt schon mehrere Tage. Dein Video habe ich mir auch schon angesehen.
    Gruss ernades


  • Die table muss auch ins echo gepackt werden... oder aber du musst den HTML-Code von PHP trennen, wenn du nach dem PHP-Code ein "?>" setzt und nach dem HTML-Code wieder mit "<?php" eröffnest.

  • Hallo AbRaXaS,
    vielen Dank, der Code funktioniert bis eine Kleinigkeit.
    < syntax error, unexpected 'Vorname' (T_STRING), expecting ',' or ';'>
    Hole ich die Zeile

    Code
    1. echo "<td>"Vorname / Name "</td>"; und echo "<td>"Straße-Nr"</td>";

    aus dem Code, dann kommt keine Fehlermeldung. Dann stehen meine Daten wie gewünscht untereinander, aber leider ohne Feldbezeichnungen.


    Gruss ernades

  • Hallo AbRaXaS,
    vielen Dank, der Code funktioniert bis eine Kleinigkeit.
    < syntax error, unexpected 'Vorname' (T_STRING), expecting ',' or ';'>
    Hole ich die Zeile

    Code
    1. echo "<td>"Vorname / Name "</td>"; und echo "<td>"Straße-Nr"</td>";

    aus dem Code, dann kommt keine Fehlermeldung. Dann stehen meine Daten wie gewünscht untereinander, aber leider ohne Feldbezeichnungen.


    Gruss ernades


    Code
    1. echo "<td>Vorname / Name </td>";


    Code
    1. echo "<td>Straße-Nr</td>";


    die Zeile hatte ich gar nicht weiter angeschaut. Sollte so jetzt aber funktionieren.


    Das sind aber PHP-Grundlagen ...

  • Danke AbRaXaS, so funktioniert es wie es soll. Jetzt bin ich einen ganz großen Schritt weiter. Diese paar Zeilen Code haben mich zwei Wochen lang beschäftigt. Aber ich gebe halt so schnell auf. Es wundert mich nur, dass außer dir im Forum niemand im Stande war diese paar Zeilen Code zurecht zu rücken. Nochmals Danke!
    Ich denke, damit ist meine Anfrage zu diesem Thema zufriedenstellend gelöst.


    Gruss ernades

  • Nur mal zum Verständnis. Hier im Forum sind mehr als genug "im Stande" den Code fertig zu stellen, denn sie haben es gelernt. Eigenarbeit ist hier Usus und jetzt gerade sage ich mir: "Hätte ich man NUR den Hinweis mit den Grundlagen gegeben!" Ich mag diese Metalität "ICH habe ne Idee - aber lass die ANDEREN im Forum mal schauen!" nicht. nach der ersten Hilfe habe ich gedacht: "OK, vielleicht hat der TE es einfach nicht gesehen..." aber nach der zweiten Frage war es klar, dass du kein PHP kannst. Auch die anderen diversen Hinweise auf Responsibilität, etc. hast du glaube ich nicht verstanden, bzw. ignorierst sie. Der Grund warum hier keiner ne "Lösung" präsentiert hat ist die Tatsache das dein "Ergeiz" dich mit PHP, Joomla und dem drumherum nicht wirklich vorhanden ist. Mir geht der Satz

    Zitat

    ... dass außer dir im Forum niemand im Stande war diese paar Zeilen Code zurecht zu rücken ...

    so dermaßen auf den Senkel, das ich mich gerade echt ärgere, dass dein "Problem" (welches eigentlich keines war, wenn man sich mal das PHP Manual anschaut) gelöst ist. Du warst nur darauf aus schnell mit möglichst wenig Aufwand zum Ziel zu kommen. PUNKT

  • Hallo AbRaXaS,
    dich oder einen anderen Moderator hier im Forum zu verärgern ist und war nicht mein Sinn. Ich bin jedem dankbar, der mir hilft. Ich hatte hier im Forum Hilfe gesucht, weil ich kein Experte bin und mich mit PHP nicht auskenne. Das hast du richtig erkannt. Aber wenn sich jeder mit allem auskennt, wozu dann das Forum. Ich hatte wohl nicht erkannt, dass dieses Forum nur für Experten gedacht ist, sorry. Ich bin nur ein alter Laie. Ich wollte dich zwar noch etwas fragen, aber da bin ich jetzt wohl an der falschen Adresse. Die Antwort muss ich mir jetzt wohl woanders holen. Schade, ich hatte mich sehr über deine Hilfe gefreut.
    Gruss ernades

  • Hallo ernades,


    ok, dann habe ich es in den "falschen Hals" bekommen. Aber ich fand die Wortwahl nicht passend.
    Hier im Forum tummeln sich alle möglichen Personen, vom "Admin" bis zum "Z ..." (fällt mir gerade nix ein). Ich finde nur, auch hier im Forum mach der Ton die Musik. Wenn einem geholfen wird, ein Danke und gut. Aber dann noch den "Vorwurf" das niemand sonst im Stande ist ... ne, sorry, das geht nicht ...


    Du darfst gerne und so viel Fragen wie du möchtest, solltest aber auf deine Wortwahl achten und keine Wunder oder fertige Lösungen erwarten.
    Wenn ich dir helfen kann frag bitte.


    Gruß


    Daniel

  • Hallo AbRaXaS,
    ich sehe, dass ihr viel Zeit, viel Freizeit in das Forum investiert. Dafür habt ihr meine geschätzte Hochachtung. Ich selbst bin ein blutiger Laie, der in seiner "Rente" ehrenamtlich in mehreren Vereinen tätig ist und habe Hilfe für ein Problem eines Vereines gesucht, für das ich trotz tagelangem googlen im Internet nicht fündig geworden bin. Über das Grundwissen, von dem ihr von euren Forumsgästen zumeist ausgeht, verfüge ich leider nicht, wie du schnell erkannt hast. Für die mir entfleuchte Wortwahl entschuldige ich mich. Aber nachtreten ist nicht mein Ding.
    Dies war die letzte Anfrage, bzw. auch mein letzter Eintrag in diesem Forum. Ich bitte meine Anfrage als gelöst zu betrachten und meine Registrierung in diesem Forum zu löschen!
    Mein Dank gilt allen in diesem Forum, die mir behilflich waren.
    Gruss ernades