MySQL - Datenbank ausm www



  • Woher weiß du das du keine Verbindung hast



  • bool CFotoDlg::Connect(void)
    {
    	CString s;
        if (m_databaseconnect.connected == false) 
        { 
    		switch (m_databaseconnect.connect("http:db.web123.de","martin",3306,"martin","entfernt")) 
            { 
                case DB_CONNECTION_BAD: 
                return false; 
                break; 
    
                case DB_CONNECTION_OK: 
                break; 
            } 
    
        } 
    return true;
    }
    

    kommt immer false zurück



  • Ist ja klar. http ist ein Protokoll. MySQL verwendet tcp/ip.
    Ein Browser macht es zwar auch nicht anders aber er schneidet http:// weg und macht dann eine DNS-Abfrage.

    Das HTTP sendet er dann nur im Header per TCP damit der Webserver weiß was gemeint ist und welcher Port.

    mach mal eine Ping auf http://db.partynet.at. Du wist nichts zurückbekommen.

    m_databaseconnect.connect("db.partynet.at","martin",3306,"martin","entfernt")

    Oder die IPADRESSE



  • Danke, Danke, Danke 🙂
    Jetzt haut's hin...



  • Hi,

    Ich hab diesen Thread jetzt rauf und runter gelesen, aber irgendwie kriege ich es nicht hin die Klasse richtig einzubinden. Ich bekomme immer einen Error "nicht aufgelöstes externes Symbol sowieso in .... usw". Ich habe die Databaselib.h und die databaselibvc7.lib in meinem basis verzeichnis und das headerfile durch include eingebunden. Die Libdatei habe ich in den Projekteigenschaften auch eingebunden. Die beiden Dlls (databaselib und die mysql dll) sind beide in dem Release ordner.

    Was mache ich noch falsch? (Benutze VC++ 7)



  • es bringt nichts wenn du die LIB in dein Projekt einbindest. Du musst sie linken. Weiters brauchst du auch die API von MYSQL welche aus den Headerdateien (mysql.h, und andere), libmysql.lib und libmysql.dll bestehtr. Diese bekommst du von www.mysql.de.



  • Also ich habe jetzt die mySQL Header files von deiner seite im Includeverzeichniss von VC, die mySQL.dll und databaselib.dll im Release verzeichniss, die Databaselib.h im Basisverzeichniss meines Programmes, ebenso wie die libmySQL.lib und die databaselib.lib . Allerding weiß ich nicht wirklich, was ich jetzt machen muss, um die lib datein zu linken bzw. wo ich sie eintragen muss.

    Wenn du so freundlich wärst mir da nochmal zu helfen. 😞



  • *auf antwort hoff* und *push*



  • Im Grunde nur meine Header einbinden. In dieser wird die mysql.h eingebunden welche wiederum einige andere einbinden.

    Sonst brauchst du nichts zu machen.
    Mein LIB wird duch meine Header gelinkt. Die Lib muss aber gefunden werden.
    Solltest du unaufg. Sym habewn dann wird die lib nicht gefunden.



  • Dann scheint die Lib bei mir nicht gefunden zu werden.

    TempDlg.obj : error LNK2019: Nicht aufgeloestes externes Symbol "__declspec(dllimport) public: int __thiscall CMYSQLDatabase::connect()" verwiesen in Funktion "protected: virtual int __thiscall CTempDlg::OnInitDialog(void)
    

    Das ist der Fehler in gekürzter Form.

    Ich scheine echt zu blöd dazu zu sein.

    Ich hab mal mein Projekt hochgeladen. Es wäre sehr, sehr nett von dir, wenn du dir das mal anschauen könntest.

    (Die MySQL header sind aus dem include ordner der mySQL Server 4.1 zib von der seite. Die LIb datei aus dem Liub/OPt ordner)

    http://mitglied.lycos.de/Daishy/DL
    dort die temp.zip (Lycos streikt beim direkt verlinken 🙄 )



  • Hmm ich hab mir das mal ge-dl und soweit compiliert.
    Aber mit meiner db kriegt er keine verbindung (hab mir das in den cases per AfxMessageBox ausgeben lassen)
    ...
    case DB_CONNECTION_BAD:
    AfxMessageBox("No");
    return 0;

    Danach auch den Wrapper von U.T. mal testweise reingemacht. Das selbe Ergebnis

    Woran kann es liegen, dass er damit keine Verbindung bekommt zumal es mit PHP wunderbar funktioniert?

    Jemand eine Ahnung?



  • Kannst du mir bitte sagen, wo du welche libs, dlls, include etc hinkopiert hast und was du an den Projekteigenschaften/datein verändert hast, damit es funktioniert?

    Wäre nett.



  • Welch Version von VC++ NET hast du. Die LIB ist für 7.1 compiliert.



  • Der Ordner heißt VC7 also gehe ich davon aus, das es 7.x ist.



  • OFFTOPIC:

    @UnixTom: ist das dein Buch???

    wenn ja habe ich es grade vorbestellt...
    soll ja im November erscheinen....

    C ++ und mySQL

    EAN: 9783826614606
    Isbn: 3-8266-1460-7



  • Soll es werden. JA.


Anmelden zum Antworten