Front end user form module mit datenbankeintrag

  • Ich bin mir da jetzt nicht ganz sicher, aber ich glaube man kann auch "loadForm()" in einem Modul verwenden. Ich habe es aber ehrlich gesagt noch nie gemacht oder probiert. Das Formular erstellt man dann in einer XML mit den Feldern uns lässt die Felder über "renderfield" erstellen.


    Der Vorteil wäre, dass Du Dich um die Prüfungen nicht mehr ganz so stark kümmern musst. Beim Feldtyp "email" prüft Joomla die korrekte Eingabe.

    https://docs.joomla.org/Basic_form_guide

    https://docs.joomla.org/Advanced_form_guide


    Wenn Du die Formular-Felder selbst einbaust, dann musst Du sämtliche Eingaben prüfen, bevor sie weiterverarbeitet werden. Ansonsten kann man ganz schnell Schadcode einfangen. Bei der E-Mail nicht nur prüfen, ob ein @ vorhanden ist, sondern den gesamten Inhalt prüfen, ob dieser eine gültige Mail Adresse darstellt.

  • Danke vielmals für den Tipp, LukasHH - werde ich erarbeiten



    Kannst Du mir sagen wie man Daten aus dem Select/Option Feld auslesen kann. Es funktioniert nicht über den (name="") attribut.


    Wenn der User ein Name (als Option) auswählt, soll auch die Dienstnummer gezeigt werden. DIe SQL Anweisung habe ich getestet und Funktioniert.

    Es hagt irgendwie an der variable-übergabe.


    Ich habe folgende Sachen in der mod datei:


    Code
    use Joomla\CMS\Factory;
    jimport( 'joomla.html.select' );
    $app = Factory::getApplication();
    $dn = $app->input->get('fahrer_1');


    HTML

    PHP
    <select name="fahrer_1" type="submit">
      <option value="0">Auswählen</option>            
          <?php foreach ($personal as $name) : ?>
             <option value="<?php echo $name->dienstnummer;?>">
              <?php echo $name->name;?>       
      </option>
                        
          <?php endforeach;?>;    
     </select>            
  • also getValue(); und getInput(); habe ich bereits probiert und kam zum selben ergebnis.


    Ich habe folgenden Fehler Code:

    Zitat

    Notice: Trying to get property 'dienstnummer' of non-object in C:\Users\Musik\Documents\Privat\xampp\htdocs\prime_pr_fms\modules\mod_dienstplanung_lspd\tmpl\default.php on line 53


    Die Line 53 gibt dies wieder:

    PHP
    <?php echo $dnr->dienstnummer;?>
  • Ich wollte hier mal ein wenig klug daher reden:


    Pool ich finde es super wie du dich da durchkämpfst, und ich finds super wie die Supporter helfen. Aber wie wärs, wenn du dein Projekt auf github verlagerst, dann könnten alles gleich direkt am Code mithelfen?
    Das ist beim ersten Mal ein großer Schritt und ich habe am Anfang mich sehr überwinden und einarbeiten müssen, aber es ist heutzutage einfach das beste, für alle Extensionentwickler.