MySQL 1 ergebnis von SELECT ausgeben lassen

  • hey,

    ich habe mal wieder ein problem ._. Also ich möchte per Auto It und der UDF von ProgAndy in einer MySQL Datenbank checken wie viel geld/cash jemand hat.

    [autoit]


    $user_cash_check = GUICtrlRead ($User_check_cash)
    $query_check_cash = _MySQL_Real_Query ($MysqlConn, "SELECT geld FROM user WHERE username = '" & $user_cash_check & "';")
    $store_result_cash_check= _MySQL_Store_Result($MysqlConn)
    $result_check_cash = ??????? ($res)
    _MySQL_Free_Result($res)

    [/autoit]

    Da wo die ????? sind hab ich echt kein Plan was da reinkommt <.< egal was ich bisher probiert habe entweder kommt 0 raus oder einfach gar nix..

    Hoffe auf Hilfe :)

    MfG lol12345

    Einmal editiert, zuletzt von lol12345 (9. Mai 2012 um 19:25)

  • Ich mach das immer so. Vielleicht kannst du das für deine Bedürfnisse etwas umbauen.


    Func _SystemeAuslesen() ; Liest die Oberkategorien aus der Datenbank
    $Abfrage = "SELECT name FROM kategorien"
    _MySQL_Real_Query($DBVerbindung, $Abfrage)
    $res = _MySQL_Store_Result($DBVerbindung)
    $array = _MySQL_Fetch_Result_StringArray($res)
    For $i = 1 To UBound($array) - 1
    GUICtrlSetData($arForms[0][14], $array[$i][0])
    Next
    EndFunc ;==>_SystemeAuslesen

    LG

    Philip


  • nope, bekomme es einfach nicht hin :( bin echt am verzweifeln^^

  • Hast du überhaupt irgendwelche Daten in der Datenbank?
    Zeig doch mal mehr von deinem Skript.
    Bekommst du irgendwelche Fehlermeldungen?


    In der Datenbank steht das User "test" 4 cash hat und entweder bekomme ich raus test have cash. oder test have 0 cash. oder test have 2 cash.

    oder das programm crasht nach der abfrage ^^

    [autoit]

    _MySQL_InitLibrary()
    If @error Then Exit MsgBox(0, 'Error', "Failed to load libmysql.dll!")

    [/autoit][autoit][/autoit][autoit]

    $MysqlConn = _MySQL_Init()
    $connected = _MySQL_Real_Connect($MysqlConn, "localhost", "root", "root", "test_db1")
    If $connected = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    $user_cash_check = GUICtrlRead ($User_check_cash)
    $query_check_cash = _MySQL_Real_Query ($MysqlConn, "SELECT geld FROM user WHERE username = '" & $user_cash_check & "';")
    $store_result_cash_check= _MySQL_Store_Result($MysqlConn)
    $result_check_cash = _MySQL_Fetch_Row ($store_result_cash_check)
    _MySQL_Free_Result($store_result_cash_check)

    [/autoit][autoit][/autoit][autoit]

    MsgBox (0, "Success", $user_cash_check & " have " & $result_check_cash& " Cash.")

    [/autoit]

    Mehr vom source ist unnütz rest ist nur GUI und eine message box

  • Guck dir die Seite mal etwas genauer an. Ich hab im Moment keine Zeit dir weiter zu helfen, sitzte in der Schule

    bin wohl echt zu blöd dafür^^ kommt immer entweder gar nix raus, crash, 0 oder ein falsches ergebnis..

    Brauche immernoch hilfe wäre echt toll wenn mir einer helfen könnte :( hab nun wirklich ALLES getestet was ich gefunden habe aber nix hilft... immer ein falsches ergebnis, crash oder einfach gar kein ergebnis :(

    Einmal editiert, zuletzt von lol12345 (9. Mai 2012 um 12:10)

  • Du musst _MySQL_Fetch_Row_StringArray verwenden.

    [autoit]

    _MySQL_InitLibrary()
    If @error Then Exit MsgBox(0, 'Error', "Failed to load libmysql.dll!")

    [/autoit][autoit][/autoit][autoit]

    $MysqlConn = _MySQL_Init()
    $connected = _MySQL_Real_Connect($MysqlConn, "localhost", "root", "root", "test_db1")
    If $connected = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))

    [/autoit][autoit][/autoit][autoit]

    $sUserName = GUICtrlRead ($User_check_cash)
    $sUserNameEscaped = _MySQL_Real_Escape_String($MysqlConn, $sUserName)
    _MySQL_Real_Query ($MysqlConn, "SELECT geld FROM user WHERE username = '" & $sUserNameEscaped & "';")
    $hQueryResult = _MySQL_Store_Result($MysqlConn)
    If Not $hQueryResult Then Exit MsgBox(0, "", "No Result")
    $aFirstRow = _MySQL_Fetch_Row_StringArray ($hQueryResult)
    _MySQL_Free_Result($hQueryResult)

    [/autoit][autoit][/autoit][autoit]

    MsgBox (0, "Success", $sUserName & " has " & $aFirstRow[0] & " Coins.")

    [/autoit]

    Einmal editiert, zuletzt von progandy (9. Mai 2012 um 19:58)