Menu

Formularfelder leer

German
2019-03-07
2019-03-12
  • Manuela Werner

    Manuela Werner - 2019-03-07

    Hallo,

    bei der Limbas-Version 3.5.12.606 sind bei mir sämtliche Formularfelder (z.B. Textfeld, PHP-Feld,usw.) leer, bis auf die Dateninhaltsfelder. Bei Anlage eines Textfeldes kann ich dort Text eingeben, nach klick auf "übernehmen" verschwindet dieser. In der Datenbank in der Tabelle lmb_forms is das Feld "inhalt" aber mit diesem Text gefüllt. Änderungen der Hintergrundfarbe, Rahmen usw. funktioniert.

    Installiert ist diese Limbas_Version auf einem OpenSuse 15.0, PHP 7.2.5, DB 10.2.15-MariaDB.

    Bei der Version LIMBAS-3.4.12.496 ist dieses Problem nicht aufgetreten. Allerdings war es dort nicht möglich in der Tabellenansicht oder Formularansicht die Datensätze zu blättern (Scroll-Leiste). Das funktioniert bei der aktuellen Limbas-Version aber.

    Gibt es hierzu vielleicht einen Tipp? Vielen Dank im vorraus!

     
  • Manuela Werner

    Manuela Werner - 2019-03-08

    Es besteht ein Zusammenhang mit dem Datentypen. Nach Änderung des Types bei dem Feld "inhalt" von "text" auf "varchar" wird der Inhalt angezeigt

     
  • Axel Westhagen

    Axel Westhagen - 2019-03-08

    Ich habe versucht das nachzustellen. In der Tat liefert mariadb >= 10 bei BLOBS oder LONG Feldern keinen Inhalt. Die ODBC Schnittstelle direkt liefert Inhalte sodas es ein Problem in Zusammenhang mit PHP geben muß. Ich habe noch keinen Lösungsansatz gefunden das zu beheben. Ältere MySQL Versionen oder PSQL haben das Phänomen nicht.

     
  • Manuela Werner

    Manuela Werner - 2019-03-08

    Ich habe des Feld auf Varchar(5000) geändert und scheinbar funktioniert damit Limbas auch wie gewohnt.

     
  • Axel Westhagen

    Axel Westhagen - 2019-03-08

    Ja das wäre ein Workaround. Allerdings nutzt Limbas den TEXT Feldtyp öfters und benötigt auch in vielen Fällen die unbeschränkte Größe.
    Es währe möglich beim Import die Tabellenkonfig umzuschreiben und alle LONG Feldtypen in VARCHAR(10000) zu ändern und dann zu installieren. Aber schön ist das nicht.

     
  • Manuela Werner

    Manuela Werner - 2019-03-08

    Bei der vorherigev Version von Limbas wird der Inhalt der Formularfelder angezeigt, auch mit dem Datentyp "text". Aber da funktioniert leider das Weiterblättern der Datensätze nicht.

     
  • Axel Westhagen

    Axel Westhagen - 2019-03-08

    vergleiche mal den connection string der beiden Versionen und überschreibe die neue Version mit dem der Alten. Spiele insbesondere mit den Parameter SQL_CUR_USE_ODBC und odbc_connect anstatt odbc_pconnect.

    -> limbas_src/lib/db/db_mysql.lib

     $dsn = "Driver=$dbdriver;Server=$host;Database=$database;ReadOnly=No";
    #SQL_CUR_USE_ODBC
    #SQL_CUR_DEFAULT
    #SQL_CUR_USE_DRIVER
    if($DBA['VERSION'] >= 10) { # use for newer mariadb >= V10
        $db = odbc_connect($dsn, $dbuser, $dbpass, SQL_CUR_USE_ODBC);
    }else{
        $db = odbc_pconnect ($dsn, $dbuser, $dbpass);
    }
    
     
  • Manuela Werner

    Manuela Werner - 2019-03-11

    Nach Änderungen an den Parametern ist es mir nicht möglich, mich am Limbas anzumelden.

     
  • Axel Westhagen

    Axel Westhagen - 2019-03-11

    Neuere mysql / mariadb Datenbanken haben wohl das Problem das sie den CURSOR über ODBC nicht unterstützen solange der connect Parameter SQL_CUR_USE_ODBC nicht übergeben wird. Das hat wiederum zur Folge das Felder vom Typ TEXT nicht ausgegeben werden. Wird der SQL_CUR_USE_ODBC Parameter weggelassen werden TEXT Felder wieder angezeigt aber der CURSOR funktioniert nicht mehr.
    Limbas benötigt bis jetzt den CURSOR um korrekt zu funktionieren.

    Erst die Version 4 die aktuell noch nicht veröffentlicht ist unterstützt dies da sie für PDO weiterentwickelt ist. PDO unterstützt für MYSQL ebenfalls keinen CURSOR.

    Also kann ich nur raten die PostgreSQL, eine ältere MYSQL (V5.x) zu nutzen oder auf die Limbas Version 4 zu warten. (cka. ab Mai)

    Was Vielleicht noch einen Versuch wert wäre ist einen älteren MYSQL ODBC Treiber zu probieren.

     
  • Manuela Werner

    Manuela Werner - 2019-03-12

    Danke für die ausführliche Antwort. Da es ja mit dem Typ varchar erstmal funktioniert, warte ich dann bis Mai

     

Log in to post a comment.

MongoDB Logo MongoDB