Problem mit VB

  • Hey,


    ich habe mit Visual basic eine Connection erstellt:


    Code
    MySql.ConnectionString = "server=localhost; uid=adm; pwd=gor; database=adm"



    Wenn ich aber das Programm "teste", dann kann er keine Verbindung herstellen und es kommt folgender Fehler:


    Code
    Eine Ausnahme (erste Chance) des Typs "MySql.Data.MySqlClient.MySqlException" ist in MySql.Data.dll aufgetreten.



    Kann wer helfen?


    MfG

  • Es ist ganz gefährlich, das mit einer reinen .NET Lösung zu machen.
    .NET Anwendungen können relativ einfach dekompiliert werden. Dazu braucht es nicht viel Wissen und schon hat jemand deine MySQL Logindaten.


    Mach sowas am Besten immer über PHP.
    Dafür brauchst du zwar einen Webspace (gibt es auch kostenlos, einfach mal googlen), dafür sind deine Daten dann aber sicher.


    Ein kleines Beispiel, wie du das in PHP regelst:


    PHP
    $mysqli = new mysqli("host", "username", "password", "database"); //Verbindung zur Datenbank herstellen
    $result = $mysqli->query("SELECT * FROM accounts"); //Query an die Datenbank senden
    
    
    while($row = $result->fetch_assoc()){ //Nimmt sich nun die Resource, die aus dem Query hervorgeht und fetched jeden Datensatz in ein assoziatives Array.
         echo $row["name"]; //Das assoziative Array - in den eckigen Klammern kann man jeden beliebigen existierenden Spaltennamen angeben, um diesen pro Datensatz ausgeben zu lassen
    }


    In VB.NET kannst du diese Datei nun aufrufen, indem du folgenden Code verwendest:


    Code
    dim wc as new Net.WebClient 'Webclient Klasse initialisieren
    dim str as String = wc.DownloadString("LinkZurPHPDatei") 'Inhalt der PHP Datei herunterladen


    in str ist dann das, was du in PHP mittels echo ausgeben lässt, also bspw. der Name des Accounts.

  • geht trotzdem nicht, in der php ist:


  • Es kann ja auch nicht funktionieren, weil in der PHP Datei üherhaupt keine Daten von der Datenbank geholt werden.


    Du nutzt MySQL, also könntest du Folgendes machen:

    PHP
    $result = mysql_query("SELECT * FROM accounts");
    
    
    while($row = mysql_fetch_assoc($result)){
        echo $row["name"];
    }


    Und da du localhost aufrufst, hast du auch ganz sicher einen lokalen Webserver laufen?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen