addSelectBoxFromSql hat immer einen leeren Eintrag

Hast du einen Fehler in der aktuellen Version gefunden ? Diesen kannst du uns hier mitteilen und uns bei der Fehlersuche helfen.
Antworten
RalphW
Beiträge: 87
Registriert: 20. Jun 2016, 14:42
Wohnort: Austria

addSelectBoxFromSql hat immer einen leeren Eintrag

Beitrag von RalphW »

Seit dem Update auf 4 habe ich folgendes Problem:
Ich verwende in einem Form addSelectBoxFromSql mit folgendem Code:

Code: Alles auswählen

$form->addSelectBoxFromSql($ItemId, $Label, $gDb, $sql, 
	array('property' => FIELD_REQUIRED, 
	'defaultValue' => $defaultValue, 
	'multiselect' => true, 
	'maximumSelectionNumber' => $maxNumber)
Je nach Kontext kann $maxNumber 1 oder 2 sein.

Ist $maxNumber 1 und kein $defaultValue angegebe, kann ich nichts aus wählen. Ich bekomme die Anzeige, dass nur ein Element ausgewählt werden kann. Ich muss rechts auf das X klicken, damit die Liste angezeigt wird.

Noch schlimmer ist es bei $maxNumber = 2. Da ist auch schon vorher ein Eintrag ausgewählt, den ich wegklicken muss (siehe Anhang). Wenn ich jetzt nur einen Eintrag hinzunehme kann ich das auch abspeichern, was nicht gewünscht ist.

In der Version 3.x hat das funktioniert.
Dateianhänge
Bildschirmfoto 2021-01-04 um 16.43.26.png
Bildschirmfoto 2021-01-04 um 16.43.26.png (3.41 KiB) 176 mal betrachtet
Benutzeravatar
fasse
Administrator
Beiträge: 5085
Registriert: 12. Nov 2005, 16:06

Re: addSelectBoxFromSql hat immer einen leeren Eintrag

Beitrag von fasse »

Hallo Ralph,

ich kann dein Problem leider nicht nachvollziehen.

Ich habe dazu bei den Terminen die Rollenzuordnung entsprechend deinem Posting angepasst, aber es funktioniert wie erwartet. Es wird kein Eintrag im Vorhinein angezeigt und ich kann dann maximal 1 bzw. 2 Einträge selber auswählen.

Ich habe hiermit herumgespielt: adm_program/modules/dates/dates_new.php Zeile 348ff.

Code: Alles auswählen

// show selectbox with all assigned roles
$form->addSelectBoxFromSql(
    'adm_event_participation_right', $gL10n->get('DAT_REGISTRATION_POSSIBLE_FOR'), $gDb, $sqlDataView,
    array(
        'defaultValue' => $roleViewSet,
        'multiselect'  => true
    )
);
Du solltest noch FIELD_REQUIRED hierdurch ersetzen:

Code: Alles auswählen

HtmlForm::FIELD_REQUIRED
Gruß
Fasse
RalphW
Beiträge: 87
Registriert: 20. Jun 2016, 14:42
Wohnort: Austria

Re: addSelectBoxFromSql hat immer einen leeren Eintrag

Beitrag von RalphW »

Hallo Fasse,

HtmlForm::FIELD_REQUIRED hat das Problem gelöst. Jetzt funktioniert es wie erwartet.

DANKE !

viele Grüße
Ralph
Antworten