WinFuture-Forum.de: Visual Basic mit phpmyadmin verbinden - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Visual Basic mit phpmyadmin verbinden


#1 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 29. August 2018 - 19:18

Hallo Forum

Ich versuche verzweifelt eine Verbindung zu einem im gleichen Netzwerk stehenden sql-server herzustellen.
Im Browser kann ich mich mit '10.0.0.3:7082' an der DB Anmelden.
Ich habe eine neue DB namens TankManager angelegt und darin eine neue Tabelle erstellt mit eine Eintrag.

Eingefügtes Bild

In Visual Basic Express 2010 habe ich folgenden Code um mich an der DB anzumelden und etwas in die Tabelle zu schreiben.

---
Imports MySql.Data.MySqlClient

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim conn As New MySqlConnection
conn.ConnectionString = "server=10.0.0.3; database=TankManager; username=root; password=dbuser; port=7082;"
'Open the connection.
conn.Open()
'Create new command to execute.
Dim mysqlcmd As MySqlCommand = conn.CreateCommand
Dim txtcmd As String = "INSERT INTO TankManager(username,password) VALUES('" & TextBox1.Text & "','" & TextBox2.Text & "')"
mysqlcmd.CommandText = txtcmd
'Execute Querry.
mysqlcmd.ExecuteNonQuery()
'Close connection.
conn.Close()
MsgBox("Success!", MsgBoxStyle.Exclamation)
Catch ex As Exception
MsgBox(ex.Message)
Me.Close()
End Try
End Sub
End Class

---

Eingefügtes Bild

ABER!! Ich bekomme keine Verbindung mit der DB. Fehlermeldung -->>

Eingefügtes Bild

Eingefügtes Bild

Hat vielleicht ein Profi im Forum einen Tipp für mich der mir weiterhelfen kann?
Ich fummle schon seit einigen Tagen herum aber ich bekomme es einfach nicht hin.

Besten Dank

Gruß Gebhard

Dieser Beitrag wurde von Typhoon76 bearbeitet: 29. August 2018 - 19:23

0

Anzeige



#2 Mitglied ist offline   Gispelmob 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.591
  • Beigetreten: 14. August 15
  • Reputation: 392

geschrieben 29. August 2018 - 19:30

Es gibt doch dazu genug Beispiele. Versuch mal das hier. Das ist fast gleich, nur das Try sitzt wo ganz anders. Irgendwo ist der Fehler auch verständlich. Du brauchst kein Try auf Dim usw. machen, das wird immer ausgeführt. Das Try (auf deutsch probiere) wird erst wichtig wenn du mit conn.Open() die Verbindung öffnen willst. Dort gibt es dann den Erfolg oder aber mit catch (auf deutsch fangen) werden die Fehler abgefangen.

Der zweite Punkt ist die Übermittlung des MySQL Commands. Du kannst das nicht wirklich so mischen. Es sieht aus als ob du Beispielcode von 2 Beispielen einfach zusammengeworfen hast. Dadurch wird das Try auch auf das MySQL Command ausgeführt, was dann wohl den Fehler erzeugt.

Beispiel MySQL Command

Wenn ich morgen Zeit hab kann ich vielleicht mal genau testen woran es liegt. Ich nutze aber Visual Studio Community 2017. 2010 ist doch etwas arg alt.

Dein Codemischen solltest du aber vermeiden. Versuche einzelne Sachen in einzelne Funktionen zu schreiben. Ist auf Dauer besser für die Übersicht.

Dieser Beitrag wurde von Gispelmob bearbeitet: 29. August 2018 - 19:45

AMD Ryzen 9 5950X, Asus ROG Strix X570-F Gaming, 32GB Corsair DDR4-3200, Asus Geforce GTX 3060 12GB, Creative Sound Blaster AE-7, 240GB SSD, 500GB SSD, 3x 1TB SSD, Win11 Home, 4x Acer G246HL Bbid, Logitech MX518 Gaming Mouse, Logitech G440 Mousepad, Logitech K120 Keyboard, Razer Tiamat 7.1 V2 Headset, Creative Inspire 5.1 5300 Soundsystem
0

#3 Mitglied ist offline   Holger_N 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.111
  • Beigetreten: 11. September 10
  • Reputation: 458
  • Geschlecht:Männlich

geschrieben 29. August 2018 - 19:52

Außerdem heißt doch die Datenbank »TankManager«. Was soll da "INSERT INTO TankManager…" bewirken? Du müßtest in der Datenbank »TankManager« erstmal eine Datenbanktabelle erstellen und in diese kannst du dann mit INSERT etwas reinschreiben. Versuchst du an der Stelle in der Datenbank einen neuen User und Passwort hinzuzufügen oder soll das Teil des Logins sein? Wenn es um das Login geht, macht ein INSERT an der Stelle gar keinen Sinn.
Bauernregel: Regnets mächtig im April, passiert irgendwas, was sich auf April reimt.
0

#4 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 484
  • Beigetreten: 16. November 05
  • Reputation: 78

geschrieben 30. August 2018 - 00:45

kann nicht funktionieren - der port den du verwendest ist der vom webserver auf dem phpmyadmin laeuft - das ist nicht der port von mysql, versuch mal 3306 (default) oder eben den, den du dem mysqld gegeben hast.
0

#5 Mitglied ist offline   Gispelmob 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.591
  • Beigetreten: 14. August 15
  • Reputation: 392

geschrieben 30. August 2018 - 05:33

weitere Sachen

Daten wie Serveradresse, Serverport, Protokoll, Charset, Collation, Pipe/Socket werden nicht hartkodiert in den Code geschrieben. Sowas gehört in eine Config-Datei. Dann braucht man auch nicht den Code ändern, wenn sich die Daten ändern. Man lädt zu Beginn die Config-Datei und übergibt die Daten als Argumente der Funktion, die die Verbindung herstellt.

DB-Name, Username, Userpasswort werden nicht hartkodiert in den Code geschrieben. Das ist ein Sicherheitsrisiko. Wenn möglich sollte das auch nicht in eine Config-Datei, lässt sich aber nicht immer vermeiden.

Dann gilt es auch den Verbindungstyp dynamisch/persistent zu beachten und ob eine SSL Verschlüsselung genutzt wird.

DB-Name, DB-Port wurden ja bereits angesprochen. Zu beachten ist auch dass es einen User gibt in MySQL der Zugriff auf die Datenbank hat. Am besten den User so anlegen dass er nur Rechte an der Datenbank besitz, ansonsten hat er nämlich standardmäßig Zugriff auf alle Datenbanken in MySQL.

INSERT INTO bezieht sich auf eine Tabelle, nicht auf die Datenbank. Die kann man zwar davor schreiben mit DBName.Tabellenname aber da du bereits bei Verbindungsaufbau die Datenbank angibts, ist das nicht mehr nötig. Desweiteren ist es auch nicht nötig, wenn man bereits beim User im MySQL den Zugriff nur auf diese Datenbank beschränkt hat.
AMD Ryzen 9 5950X, Asus ROG Strix X570-F Gaming, 32GB Corsair DDR4-3200, Asus Geforce GTX 3060 12GB, Creative Sound Blaster AE-7, 240GB SSD, 500GB SSD, 3x 1TB SSD, Win11 Home, 4x Acer G246HL Bbid, Logitech MX518 Gaming Mouse, Logitech G440 Mousepad, Logitech K120 Keyboard, Razer Tiamat 7.1 V2 Headset, Creative Inspire 5.1 5300 Soundsystem
0

#6 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 08:49

Beitrag anzeigenZitat (Holger_N: 29. August 2018 - 19:52)

Außerdem heißt doch die Datenbank »TankManager«. Was soll da "INSERT INTO TankManager…" bewirken? Du müßtest in der Datenbank »TankManager« erstmal eine Datenbanktabelle erstellen und in diese kannst du dann mit INSERT etwas reinschreiben. Versuchst du an der Stelle in der Datenbank einen neuen User und Passwort hinzuzufügen oder soll das Teil des Logins sein? Wenn es um das Login geht, macht ein INSERT an der Stelle gar keinen Sinn.


Hallo Holger_N

Stimmt!! Ist mein Fehler. Hier sollte natürlich "INSERT INTO tbl_informationen" stehen.

Beitrag anzeigenZitat (CaNNoN: 30. August 2018 - 00:45)

kann nicht funktionieren - der port den du verwendest ist der vom webserver auf dem phpmyadmin laeuft - das ist nicht der port von mysql, versuch mal 3306 (default) oder eben den, den du dem mysqld gegeben hast.


Hallo CaNNoN

Habe ich schon probiert. Funktioniert leider auch nicht.
Eingabe 10.0.0.3:7082 und ich bin verbunden mit phpmyadmin
Eingabe 10.0.0.3:3306 kann keine Verbindung herstellen.

:-(
0

#7 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 09:01

Beitrag anzeigenZitat (Gispelmob: 29. August 2018 - 19:30)

Es gibt doch dazu genug Beispiele. Versuch mal das hier. Das ist fast gleich, nur das Try sitzt wo ganz anders. Irgendwo ist der Fehler auch verständlich. Du brauchst kein Try auf Dim usw. machen, das wird immer ausgeführt. Das Try (auf deutsch probiere) wird erst wichtig wenn du mit conn.Open() die Verbindung öffnen willst. Dort gibt es dann den Erfolg oder aber mit catch (auf deutsch fangen) werden die Fehler abgefangen.

Der zweite Punkt ist die Übermittlung des MySQL Commands. Du kannst das nicht wirklich so mischen. Es sieht aus als ob du Beispielcode von 2 Beispielen einfach zusammengeworfen hast. Dadurch wird das Try auch auf das MySQL Command ausgeführt, was dann wohl den Fehler erzeugt.

Beispiel MySQL Command

Wenn ich morgen Zeit hab kann ich vielleicht mal genau testen woran es liegt. Ich nutze aber Visual Studio Community 2017. 2010 ist doch etwas arg alt.

Dein Codemischen solltest du aber vermeiden. Versuche einzelne Sachen in einzelne Funktionen zu schreiben. Ist auf Dauer besser für die Übersicht.


Hallo Gispelmob

Den Code habe ich aus dem Netz. ;-) Dort hat es funktioniert.

Der SQL-Server läuft auf einer ReadyNAS und ist von außen nicht sichtbar. Bleibt also im Heimnetzwerk.

Aber danke das du das mal testen willst.
0

#8 Mitglied ist offline   Gispelmob 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.591
  • Beigetreten: 14. August 15
  • Reputation: 392

geschrieben 30. August 2018 - 10:07

Beim testen ist mir aufgefallen, dass man erstmal die Datenquelle MySQL hinzufügen muss bevor sie nutzbar wird. In VS2017 scheint das anders als bei 2010 zu sein. Der Importer ist anders und die Erstellung de sql Befehls ist auch anders.

Post doch mal den Link woher du den Code hast.
AMD Ryzen 9 5950X, Asus ROG Strix X570-F Gaming, 32GB Corsair DDR4-3200, Asus Geforce GTX 3060 12GB, Creative Sound Blaster AE-7, 240GB SSD, 500GB SSD, 3x 1TB SSD, Win11 Home, 4x Acer G246HL Bbid, Logitech MX518 Gaming Mouse, Logitech G440 Mousepad, Logitech K120 Keyboard, Razer Tiamat 7.1 V2 Headset, Creative Inspire 5.1 5300 Soundsystem
0

#9 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 484
  • Beigetreten: 16. November 05
  • Reputation: 78

geschrieben 30. August 2018 - 13:50

schau doch mal ob du dich ueberhaupt via kommandozeile mit mysql.exe (siehe: https://dev.mysql.com/downloads/mysql/ ) von deinem client aus am server anmelden kannst.

wenn nicht, dann schau via phpmyadmin ob dein verwendeter user auf 'localhost' beschraenkt ist. wenn das auch nicht der fall ist, dann meine ich mich zu erinnern, dass mysql irgendwann das passwort-hash-verfahren geaendert hat - daher koennte es dann auch noch an deinem login-mechanismus liegen, ggf. umbauen oder den passwort-hash auf das alte verfahren umstellen: SET PASSWORD FOR 'some_user'@'some_host' = OLD_PASSWORD('mypass');
0

#10 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 15:37

Beitrag anzeigenZitat (Gispelmob: 30. August 2018 - 10:07)

Beim testen ist mir aufgefallen, dass man erstmal die Datenquelle MySQL hinzufügen muss bevor sie nutzbar wird. In VS2017 scheint das anders als bei 2010 zu sein. Der Importer ist anders und die Erstellung de sql Befehls ist auch anders.

Post doch mal den Link woher du den Code hast.


Hallo Gispelmob

Hier der Link:
0

#11 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 15:57

Beitrag anzeigenZitat (CaNNoN: 30. August 2018 - 13:50)

schau doch mal ob du dich ueberhaupt via kommandozeile mit mysql.exe (siehe: https://dev.mysql.com/downloads/mysql/ ) von deinem client aus am server anmelden kannst.

wenn nicht, dann schau via phpmyadmin ob dein verwendeter user auf 'localhost' beschraenkt ist. wenn das auch nicht der fall ist, dann meine ich mich zu erinnern, dass mysql irgendwann das passwort-hash-verfahren geaendert hat - daher koennte es dann auch noch an deinem login-mechanismus liegen, ggf. umbauen oder den passwort-hash auf das alte verfahren umstellen: SET PASSWORD FOR 'some_user'@'some_host' = OLD_PASSWORD('mypass');


Hallo CaNNoN

Eingefügtes Bild

Gruß Gebhard
0

#12 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 16:28

Hallo zusammen


Auch wenn ich versuche den Inhalt der Tabelle 'tbl_informationen' als DataGridView anzeigen zu lassen wird versucht eine Verbindung aufzubauen und dann kommt die Fehlermeldung:

Eingefügtes Bild
0

#13 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 16:58

Beitrag anzeigenZitat (CaNNoN: 30. August 2018 - 13:50)

schau doch mal ob du dich ueberhaupt via kommandozeile mit mysql.exe (siehe: https://dev.mysql.com/downloads/mysql/ ) von deinem client aus am server anmelden kannst.

wenn nicht, dann schau via phpmyadmin ob dein verwendeter user auf 'localhost' beschraenkt ist. wenn das auch nicht der fall ist, dann meine ich mich zu erinnern, dass mysql irgendwann das passwort-hash-verfahren geaendert hat - daher koennte es dann auch noch an deinem login-mechanismus liegen, ggf. umbauen oder den passwort-hash auf das alte verfahren umstellen: SET PASSWORD FOR 'some_user'@'some_host' = OLD_PASSWORD('mypass');


Funktioniert leider auch nicht. :-(

Eingefügtes Bild
0

#14 Mitglied ist offline   Gispelmob 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.591
  • Beigetreten: 14. August 15
  • Reputation: 392

geschrieben 30. August 2018 - 17:50

Der Server ist also erreichbar, lehnt aber die Verbindung ab. Wenn ich die angelegten Accounts richtig lese, sind alle auf localhost beschränkt bis auf den mit home-center.

Kannst du mal den Sourcecode als Code einfügen und nicht als Bild? Copy & Paste vom Source machen und dann hier in ein code Tag einfügen. Oder die Form1.vb als Datei hier anhängen.

Edit: Also in VStudio 2017 muss man den MySQL Connector sowie MySQL for Visualstudio installieren. Dann kann man in einem Projekt unter Ansicht/Server-Explorer direkt eine MySQL Datenbank aufbauen. Der Verbindungstest klappt dann auch.

Edit2:
1. MySQL for Visualstudio installieren
2. MySQL Connector installieren
3. Projekt/Verweis hinzufügen/Assemblys/Erweiterungen/MySql.Data
4. Projekt/Modul hinzufügen/Allgemeine Elemente/Modul/MySqlCon.vb (Name selbst eingeben)

Form1.vb
Spoiler


MySqlCon.vb
Spoiler


Was fehlt ist die Prüfung ob der User bereits in der Datenbank existiert. Desweiteren ob überbaupt etwas eingegeben wurde. Code ist aus dem Internet und an VStudio 2017 angepasst. Könnte sein dass er genauso in 2010 nicht funktioniert.

Dieser Beitrag wurde von Gispelmob bearbeitet: 30. August 2018 - 19:21

AMD Ryzen 9 5950X, Asus ROG Strix X570-F Gaming, 32GB Corsair DDR4-3200, Asus Geforce GTX 3060 12GB, Creative Sound Blaster AE-7, 240GB SSD, 500GB SSD, 3x 1TB SSD, Win11 Home, 4x Acer G246HL Bbid, Logitech MX518 Gaming Mouse, Logitech G440 Mousepad, Logitech K120 Keyboard, Razer Tiamat 7.1 V2 Headset, Creative Inspire 5.1 5300 Soundsystem
0

#15 Mitglied ist offline   Typhoon76 

  • Gruppe: aktive Mitglieder
  • Beiträge: 22
  • Beigetreten: 29. August 18
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Lustenau

geschrieben 30. August 2018 - 19:16

Beitrag anzeigenZitat (Gispelmob: 30. August 2018 - 17:50)

Der Server ist also erreichbar, lehnt aber die Verbindung ab. Wenn ich die angelegten Accounts richtig lese, sind alle auf localhost beschränkt bis auf den mit home-center.

Kannst du mal den Sourcecode als Code einfügen und nicht als Bild? Copy & Paste vom Source machen und dann hier in ein code Tag einfügen. Oder die Form1.vb als Datei hier anhängen.

Edit: Also in VStudio 2017 muss man den MySQL Connector sowie MySQL for Visualstudio installieren. Dann kann man in einem Projekt unter Ansicht/Server-Explorer direkt eine MySQL Datenbank aufbauen. Der Verbindungstest klappt dann auch.


Hallo Gispelmob
Datei kann ich nicht hochladen. (Du hast keine Berechtigung, diese Art von Dateien hochzuladen.)
<< Hier der Code ( Form1.vb >>
Imports test_mysql.start_var
Imports MySql.Data.MySqlClient

Public Class Form1

Public Shared conn As New MySql.Data.MySqlClient.MySqlConnection
Public Shared da As Common.DbDataAdapter
Dim sql As String

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Screen.AllScreens.Length > 0 Then
Me.StartPosition = FormStartPosition.Manual
'Me.Location = Screen.AllScreens(monitor_nummer).WorkingArea.Location
Me.Location = Me.PointToScreen(New Point(140, 120))
End If

End Sub

'MySql Abfrage ausführen und das Ergebnis in ein DataGridView1 auf der Form1 schreiben
Public Shared Sub abfrage_ausfuehren_start_form(ByVal dieser_sql As String)
Try
conn.ConnectionString = myConnectionString
conn.Open()
da = New MySqlDataAdapter(dieser_sql, conn)
Dim dt As New DataTable
da.Fill(dt)
' Anzahl der Datensätze auf der Form eintragen
Form1.anzahl_datensaetze.Text = dt.Rows.Count.ToString
Form1.DataGridView1.DataSource = dt
conn.Close()
Catch ex As MySql.Data.MySqlClient.MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
sql = "SELECT * FROM TankManager"
abfrage_ausfuehren_start_form(sql)
End Sub
End Class

<< Hier die app.config >>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<sources>
<!-- Dieser Abschnitt definiert die Protokollierungskonfiguration für My.Application.Log -->
<source name="DefaultSource" switchName="DefaultSwitch">
<listeners>
<add name="FileLog"/>
<!-- Auskommentierung des nachfolgenden Abschnitts aufheben, um in das Anwendungsereignisprotokoll zu schreiben -->
<!--<add name="EventLog"/>-->
</listeners>
</source>
</sources>
<switches>
<add name="DefaultSwitch" value="Information" />
</switches>
<sharedListeners>
<add name="FileLog"
type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
initializeData="FileLogWriter"/>
<!-- Auskommentierung des nachfolgenden Abschnitts aufheben und APPLICATION_NAME durch den Namen der Anwendung ersetzen, um in das Anwendungsereignisprotokoll zu schreiben -->
<!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
</sharedListeners>
</system.diagnostics>

<appSettings>
<add key ="monitor_nummer" value ="1"/>
<!-- hier kann man einstellen, auf welchem Monitor die Form gestartet wird:
0 = Mitte, 2= rechter Monitor 1= Linker Monitor-->
<add key ="server" value ="10.0.0.3"/>
<add key ="username" value ="root"/>
<add key ="passwort" value ="dbuser"/>
<add key ="datenbank" value ="TankManager"/>
<add key ="port" value ="7082"/>

</appSettings>


</configuration>
<< Hier die start_var.vb >>
Public Class start_var

Private Shared aSettingsReader As New System.Configuration.AppSettingsReader
Public Shared monitor_nummer As Integer = CInt(aSettingsReader.GetValue("monitor_nummer", GetType(Integer)))

Public Shared server As String = CStr(aSettingsReader.GetValue("server", GetType(String)))
Public Shared username As String = CStr(aSettingsReader.GetValue("username", GetType(String)))
Public Shared passwort As String = CStr(aSettingsReader.GetValue("passwort", GetType(String)))
Public Shared datenbank As String = CStr(aSettingsReader.GetValue("datenbank", GetType(String)))
Public Shared port As String = CStr(aSettingsReader.GetValue("port", GetType(String)))

Public Shared myConnectionString As String = "server=" & server & ";uid=" & username & ";pwd=" & passwort & ";database=" & datenbank & ";port=" & port & ";"

End Class
Gruß Gebhard

0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0