Datenbank – die neusten Beiträge

Dokumentenmanagement-System (DMS): Bitfarm-Archiv auf einem Linux-Server installieren?

Hallo, ich würde das Dokumentenmanagement-System (DMS) Bitfarm-Archiv gerne auf einem Linux-Server installieren. Der Hersteller schreibt, dass Linux als Datenbankserver verwendet werden kann und teilweise auch als Fileserver.

Hierzu habe ich zwei Fragen:

  1. Wie soll die Installation auf einem Linux-Server funktionieren, wenn ich im Downloadbereich nur Installationsdateien für Windows-Systeme finde?
  2. Ist es so, dass der Datenbankserver die Metadaten (Dateiänderungen usw.) speichert und der Fileserver die eigentlichen Dateien? Wie kann denn die Revisionssicherheit dann sichergestellt werden, die in der Buchhaltung so wichtig ist, oder kann man auf einzelne Dokumente im Fileserver nicht direkt von außen zugreifen (etwa mit dem Windows Explorer)?

Danke!

Auf der Herstellerseite steht:

Welche Plattformen werden unterstützt?
bitfarm-Archiv DMS benötigt auf der Serverseite einen Windows Server ab 2008 R2 SP2, 2012 oder 2016. Bei sehr kleinen Installationen (z.B. 5 Benutzer Büro) kann auch Windows 7, 8 oder 10 als "Server" eingesetzt werden. Linux kann als Datenbankserver für MySQL und mit Einschränkungen auch als Fileserver benutzt werden. Die Standardempfehlung lautet aber bei mittleren Installationen, einen handelsüblichen Server oder VM mit Windows-Betriebssystem einzusetzen. Linux ist dazu nicht erforderlich.
Clientseitig wird ebenfalls Windows verwendet, alle Windows-Versionen ab Windows 7 sind kompatibel. Der Client ist auch terminalserverfähig. Es gibt außerdem die installationsfreie Zugriffsmöglichkeit über den Browser (Web-Viewer), sowie eine App für Android und iOS.
Quelle: https://www.bitfarm-archiv.de/dokumentenmanagement/faq.html
Server, Computer, Software, Buchhaltung, Datei, Technik, Linux, Programm, SQL, IT, System, Recht, Daten, Ubuntu, Management, Archiv, Datenbank, EDV, Finanzamt, Jura, Technologie, Spiele und Gaming

Verzweiflung mit Sonderzeichen auf Server?

Hallo liebe Community ...

Ich bin am Verzweifeln! Ich schreibe im Moment an einem Server-Client-Konstrukt, wo der Java Client eine POST-Request an einen online Server sendet, der die Anfrage dann per PHP und MySQL verarbeitet. In diesem Fall soll einfach nur vom Client eine Textnachricht per POST an ein PHP-Script gesendet werden, das wird dann in PHP per $_POST['Nachricht'] ausgelesen und dann in einer MySQL-Datenbank gespeichert. Und in einer anderen Anfrage wird die Nachricht aus der Tabelle wieder ausgelesen und zurückgeschickt.

Nun arbeite ich aber mit Umlauten und vlt später auch mit anderen Sonderzeichen. Ich habe es zuvor auf meinem localhost versucht und das hat wunderbar geklappt. Wenn ich das allerdings versuche das auf meinem online Server wieder auszulesen (über eine andere POST-Request) kommt sowas bei raus:

In der Datenbankansicht per PHPMyAdmin sieht das ebenfalls so aus. Wie kann ich die Umlaute auf meinem Client richtig anzeigen lassen? Ich bin verwirrt und brauche Hilfe ;-;

Zur Info:

  • Die Texte codiere ich vor dem Senden per POST mit URLEncoder.encode(text, "UTF-8")
  • im Serververzeichnis habe ich über eine ".user.ini" das default_charset auf UTF-8 gesetzt (Mastervalue ist iso-8859-1)
  • (auf meinem localhost ist beides auf UTF-8 gesetzt)
  • die Kollation meiner Server-Datenbanken habe ich glaube irgendwann mal von iso-8859-1auf utf8_general_ci umgestellt
  • als Header im php-Script habe ich noch: header('Content-Type: text/html; charset=utf-8');

Ich komme da echt durcheinander :( kann mir jemand helfen?

Vielen Dank im Voraus

Bild zum Beitrag
Server, Computer, Technik, Java, Sonderzeichen, Datenbank, PHP, Technologie, UTF-8

Suchfunktion mit PHP Version 7.1.12 und MySQL?

Hallo,

ich habe mir letztens auf YouTube ein Video angeschaut, wie man mit Hilfe von PHP eine MySQL-Datenbank durchsucht. Ich habe es selber ausprobiert, doch musste leider feststellen, dass der Code nicht für meine PHP-Version (7.1.12) geeignet ist.

Also habe ich versucht ihn umzuschreiben. Das hat aber leider nicht geklappt.

<html>
  <head>
    <title>Suche</title>
  </head>
  <body>
    <form action="" method="get">
      <input type="text" name="suchfeld"/>
      <input type="submit" name="suche_enter" value="suchen"/>
    </form>
    <hr /><br />
    <?php
      if (isset($_GET['suche_enter'])) {
        $host = "localhost";
        $user = "root";
        $pass = "";
        $db = "test_db";
        $conn = new mysqli($host, $user, $pass, $db);

        if ($conn->connect_errno) {
          die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
        }

        $suchbegriff = trim(htmlentities(stripslashes(mysqli_real_escape_string($_GET['suchfeld']))));
        $sql = "SELECT headline, text FROM article WHERE
          headline LIKE '%$suchbegriff%' OR
          image LIKE '%$suchbegriff%' OR
          overtext LIKE '%$suchbegriff%' OR
          text LIKE '%$suchbegriff%' OR
          gender1 LIKE '%$suchbegriff%' OR
          gender2 LIKE '%$suchbegriff%'
          ORDER BY headline, gender1, overtext, text, gender2, image";
        $query = mysqli_query($sql);

        echo "<ul>";

        WHILE ($row = mysqli_fetch_assoc($query)) {
          $headline = $row['headline'];
          $overtext = $row['overtext'];
          $text = $row['text'];

          echo "<li>$headline <br /><br />$overtext<br /><br /><hr /><br /></li>";
        }

        echo "</ul>";
      }
    ?>
  </body>
</html>

Wie müsste der Code richtig aussehen?

Computer, HTML, programmieren, Datenbank, MySQL, PHP, PHP 5

C# Datagridview/Datenbank bearbeiten mit Button?

Hallo, ich versuche gerade Einträge in einem Datagridview zu bearbeiten. Ich habe also das Datagridview, einen Bearbeiten Button und eine zweite Form die sich beim klicken auf den Bearbeiten Button öffnet. Ich wähle also einen Eintrag im Grid aus z.B. mit ID: 1 Vorname: Max Nachname: Mustermann. Dann steht im sich öffnenden Fenster nach dem klick auf bearbeiten die ID: 1 Vorname: Max Nachname: Mustermann alles in einer eigenen Textbox, genauso wie ich es haben will. Jetzt ist aber das Problem, wenn ich den Namen z.B. auf Musterfrau ändern will und auf Ok klicke ändert sich der Name im Grid nicht zu Musterfrau sondern bleibt unverändert bei Mustermann.

Bearbeiten Button in der ersten Form:

private void buttonBearbeiten_Click(object sender, EventArgs e)
		{
				var selectedRow = PersonDataGridView.SelectedRows[0];
				var selectedPerson = (Person)selectedRow.DataBoundItem;
            var dlg = new PersonDialog();

            dlg.BindPerson(selectedPerson);
            dlg.ShowDialog();

            if (dlg.DialogResult == DialogResult.OK)
            {
                var person = dlg._selectedPerson;
            
                //_db.EditPerson(person);
                _db.SaveChanges();
                
                füllen();
            }
        }
    }

DbContext:

public DbSet<Person> Personen { get; set; }
public void EditPerson(Person person)
		{
			//Wie bearbeite ich eine Person
            //Beim hinzufügen ist es ja z.B. Personen.Add()
		}

BindPerson-Methode und Ok Button in der zweiten Form(zweite Form wird nach klick auf Bearbeiten Button geöffnet):

public Person _selectedPerson;
    public void BindPerson(Person selectedPerson)
    {
        textBoxID.Text = selectedPerson.Id.ToString();
        textBoxVorname.Text = selectedPerson.Vorname;
        textBoxName.Text = selectedPerson.Name;
        textBoxStrasse.Text = selectedPerson.Straße;
        textBoxHausnummer.Text = selectedPerson.Hausnummer.ToString();
        textBoxWohnort.Text = selectedPerson.Wohnort;
        textBoxPLZ.Text = selectedPerson.PLZ.ToString();

        _selectedPerson = selectedPerson;
    }

    private void buttonOK_Click(object sender, EventArgs e)
    {
        var id = Convert.ToInt32(textBoxID.Text);
        var vorname = textBoxVorname.Text;
        var name = textBoxName.Text;
        var straße = textBoxStrasse.Text;
        int hausnummer = Convert.ToInt32(textBoxHausnummer.Text);
        var wohnort = textBoxWohnort.Text;
        int plz = Convert.ToInt32(textBoxPLZ.Text);

        _selectedPerson.Id = id;
        _selectedPerson.Vorname = vorname;
        _selectedPerson.Name = name;
        _selectedPerson.Straße = straße;
        _selectedPerson.Hausnummer = hausnummer;
        _selectedPerson.Wohnort = wohnort;
        _selectedPerson.PLZ = plz;

        Close();
    }

Was muss ich in meine EditPerson-Methode schreiben damit die Änderungen im Grid sichtbar sind?

Danke euch.

SQL, programmieren, C Sharp, Datenbank, Visual Studio

C# Abbrechen-Button?

Hallo, ich habe ein Problem mit meiner Anwendung. Ich habe eine Form die heißt z.B. Form1 und eine Form2. Beim klick auf den Hinzufügen-Button in Form1 öffnet sich Form2 (dort sollen dann Daten in Textboxen eingegeben). Wenn ich dann auf den Speichern-Button klicke werden diese eingegebenen Daten in eine Datenbank gespeichert und in einem Datagridview in Form1 angezeigt. Das Problem hierbei ist, der Abbrechen-Button in Form2 funktioniert nicht (beim klick auf den Abbrechen-Button soll man wieder zurück zu Form1 kommen). Ich habe eine Datenbank Kontext Klasse "PersonDbContext" in der zwei Methoden sind, einmal zum hinzufügen und einmal entfernen einer Person aus dem grid sowie Datenbank.

DbContext:

public class PersonDbContext : DbContext
	{
		public DbSet<Persons> Person { get; set; }
    public void AddPerson(Persons person)
    {
        Person.Add(person);
        SaveChanges();
        MessageBox.Show(@"Person wurde erfolgreich hinzugefügt.");
    }

    public void RemovePerson(Persons person)
    {
        Person.Attach(person);
        Entry(person).State = EntityState.Deleted;
        SaveChanges();

        MessageBox.Show(@"Person wurde erfolgreich gelöscht.");
    }
}

Form1:

private void buttonHinzufügen_Click(object sender, EventArgs e)
		{
			var dlg = new PersonDialog();
			dlg.ShowDialog();
			var person = dlg.Persons;
        _db.AddPerson(person);
        _db.SaveChanges();
    }

PersonDialog ist die 2. Form die sich dann öffnet (Form2).

Wenn ich auf meinen Abbrechen-Button in meiner 2. Form klicke bekomme ich immer den Fehler das der Wert nicht null sein darf.

Also im DbContext in der AddPerson-Methode heißt es dann der Wert darf nicht null sein (bei Person.Add(person);

public void AddPerson(Persons person)
		{
            //Wert darf nicht null sein.
    		Person.Add(person);
        SaveChanges();
        MessageBox.Show(@"Person wurde erfolgreich hinzugefügt.");
    }

Wenn ich aber eben keine Person hinzufügen will (keine Daten in Form2 eingeben will) ist es null. Ich muss sogesehen eine neue Person hinzufügen und die dann per Löschen-Button in Form1 wieder entfernen weil ich sonst ja die Exception kriege. Also wie bringe ich den Abbrechen-Button in Form2 zum laufen (damit es egal ist ob der Wert null ist bzw halt nichts eingegeben wurde)?

Danke euch. :)

Computer, SQL, programmieren, C Sharp, Datenbank, Visual Studio

Meistgelesene Beiträge zum Thema Datenbank