Seite 1 von 1

MySql Ergebnis in Listiconview

Verfasst: 11.03.2008 13:48
von smateja
Hallo zusammen,

habe ein kleines Problem mit folgendem Code:

Code: Alles auswählen

SQL.s = "SELECT * FROM user"
If CallFunction(#libmysql,"mysql_real_query", hDB.l, SQL.s, Len(SQL.s))
;GetError(hDB.l,1)
Else

*mysqlResult=CallFunction(#libmysql,"mysql_store_result",hDB.l)

;no result returned
If *mysqlResult=0
;no fields returned means error
If CallFunction(#libmysql,"mysql_field_count",hDB.l)
;GetError(hDB.l,1)
;fields are returned, so no error but query didn't return data
Else

EndIf
;results are returned
Else


affRows = CallFunction(#libmysql,"mysql_affected_rows",hDB.l)
fieldNum = CallFunction(#libmysql,"mysql_num_fields",*mysqlResult)
rowsNum = CallFunction(#libmysql,"mysql_num_rows",*mysqlResult)

Debug affRows
Debug fieldNum
Debug rowsNum


For i=1 To rowsNum
*mysqlRow=CallFunction(#libmysql,"mysql_fetch_row",*mysqlResult)
*mysqlLen=CallFunction(#libmysql,"mysql_fetch_lengths",*mysqlResult)

row.s = ""

;length of given field
For j=1 To fieldNum
length=PeekL(*mysqlLen+4*(j-1))
fieldptr=PeekL(*mysqlRow+4*(j-1))


If fieldptr>0
content.s=PeekS(fieldptr,length)


Else
;zero pointer returend means empty field
content="NULL"
EndIf

row.s = row.s+content+Chr(10)


Next j

Debug row
AddGadgetItem(#Fenster_Helper_User_Listing,j,row.s)
Next i
result.l=CallFunction(#libmysql,"mysql_free_result",*mysqlResult)
EndIf
EndIf

hier schaffe ich es leider nicht, das Ergebniss in ein Listiconview so darzustellen, sodass in spalte 2 dann die Kennwörter stehen (als Beispiel)

hat jemand eine Idee woran das liegen könnte?!

Verfasst: 12.03.2008 02:41
von STARGÅTE
Ich verstehe den Code gerade irgendwie nicht, und da geht es wahrscheinlich nicht nur mir so :roll:

Wo ist denn deine ListIconView ?

Von daher kann ich den Code auch nicht testen, und selber gucken wo das Problem liegt.

Vllt kannst du ja noch mal den Ganzen Code posten, oder so viel wie nötig ist, damit man es testen kann, danke.

Gelößt!

Verfasst: 18.03.2008 10:25
von smateja
Habe den Code ein wenig umgestellt - und siehe da - es geht - trotzdem THX an alle.

Code: Alles auswählen


SQL.s = "SELECT * FROM user"

CallFunction(#libmysql,"mysql_real_query", hDB.l, SQL.s, Len(SQL.s))


Global *mysqlResult=(CallFunction(#libmysql,"mysql_store_result",hDB.l))

Global SQL_Query_Spalten.l  = CallFunction(#libmysql,"mysql_num_fields",*mysqlResult)
Global SQL_Query_Zeilen.l = CallFunction(#libmysql,"mysql_num_rows",*mysqlResult)

Debug SQL_Query_Spalten
Debug SQL_Query_Zeilen

For i=1 To SQL_Query_Zeilen.l
            *mysqlRow=CallFunction(#libmysql,"mysql_fetch_row",*mysqlResult)
            *mysqlLen=CallFunction(#libmysql,"mysql_fetch_lengths",*mysqlResult)
                     
SQL_Ausgabe.s = ""
                       
For j=1 To SQL_Query_Spalten.l
    length=PeekL(*mysqlLen+4*(j-1))
    fieldptr=PeekL(*mysqlRow+4*(j-1))

        If fieldptr>0
           content.s=PeekS(fieldptr,length)
          Else         
           content=""
        EndIf
        
    SQL_Ausgabe.s = SQL_Ausgabe.s + content.s + Chr(10)
    
Next j

Debug SQL_Ausgabe.s          
  AddGadgetItem(#Fenster_Helper_User_Listing,-1,SQL_Ausgabe.s)           
Next i

CallFunction(1,"mysql_free_result",*mysqlResult)