MySQL Beispielcode verstehen
|
18.10.2016, 11:32
(Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2016 11:33 von RonSH.)
Beitrag #25
|
|||
|
|||
RE: MySQL Beispielcode verstehen
Ich bemühe mich deinen Anweisungen irgendwie zu folgen und zu verstehen
Code: #include <SPI.h> // SPI für EthernetShield Code: Start |
|||
18.10.2016, 12:10
Beitrag #26
|
|||
|
|||
RE: MySQL Beispielcode verstehen
(18.10.2016 11:32)RonSH schrieb: Ich bemühe mich deinen Anweisungen irgendwie zu folgen und zu verstehenDas kann ich kaum noch glauben. Hier einige Zitate aus meinen früheren Postings, von denen nichts in Deinen Codes zu sehen ist. Gestern 13:00 SELECT id,name, rfid, guthaben FROM ardu_tabelle WHERE rfid = '12345678' UPDATE ardu_tabelle SET guthaben = guthaben -1 WHERE id = 1; Gestern 21:49 Hast Du die Funktionen zum Auslesen der User-Daten anhand der RFID fertig und funktioniert sie? Hast Du die Funktion zum Verringern des Guthabens in der DB fertig und funktioniert sie? Gestern 22:30 ich nenne sie mal getUserData(char *rfid) Die soll das SQL-Statement Code: SELECT id,name, rfid, guthaben FROM ardu_tabelle WHERE rfid = 'gesuchteRFID' absetzen, die Daten lesen und die globalen Variablen id, name, rfid und guthaben setzen. Die gesuchte RFID sollte der Funktion als Parameter übergeben werden. Das wird eine Abwandlung der do_query aus den Beispielen. Von diesen Sachen sehe ich noch nicht mal einen Ansatz in den von Dir geposteten Sketches. Ohne diese Funktionen geht es nicht weiter. Da bringt es nichts, wenn Du immer völlig andere Codes postest. Ich habe den Eindruck, du verstehst nicht wirklich, was Du da tust. Es kommen keine konkreten Fragen zu Codezeilen oder Ähnliches, nur nebulöse "verstehe ich nicht"-Aussagen. So wird das nichts. Ich warte jetzt auf die Funktion getUserData(char *rfid) von Dir, die den Select SELECT id,name, rfid, guthaben FROM ardu_tabelle WHERE rfid = 'rfid' absetzt und das Ergebnis in die globalen Variablen id, rfid, guthaben und name schreibt. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
18.10.2016, 16:51
(Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2016 19:35 von RonSH.)
Beitrag #27
|
|||
|
|||
RE: MySQL Beispielcode verstehen
Hallo Tommy,
ich kann mir denken, dass du schon genervt von mir bist und denkst: "was für ein Trottel" Ich mag jetzt auch schon gar nicht mehr ins Forum schreiben. Ich habe einfach keine Erfahrungen mit Foren. Ich sitze jetzt seit Stunden an dem Code und es kommt einfach nicht das raus, was deinen Erwartungen entspricht. Ich habe jetzt folgende globale Variablen angelegt Code: const char *id; mit Code: do_query(getUserData); Code: const char getUserData[] = "SELECT id,nachname, rfid, guthaben FROM arduino.ardu_tabelle WHERE rfid = '998841095900'"; und bekomme dann auf dem seriellen Monitor id,nachname,rfid,guthaben 2, Max, 998841095900, 1000 1 rows in result angezeigt. Du sagst ja, ich soll eine Funktion erstellen, die getUserData heißt,das oben beschriebene ausführt und die Daten in die globalen Variablen abspeichert. die Daten liegen ja beim Auslesen in der Variable getUserData. Kann man dort einzelne Werte auslesen und übergeben? Oder denke ich zu kompliziert. Kurze Ergänzung: es soll ja eine Funktion erstellt werden. Ich habe versucht, folgende Funktion zu erstellen Code: const char rfid [] = "SELECT id,nachname, rfid, guthaben FROM arduino.ardu_tabelle WHERE rfid = '998841095900'"; Code: void getUserData(char *rfid) { ohne Erfolgserlebnis . Vielleicht gibt es ja einen Tipp |
|||
18.10.2016, 19:46
(Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2016 19:50 von Tommy56.)
Beitrag #28
|
|||
|
|||
RE: MySQL Beispielcode verstehen
(18.10.2016 16:51)RonSH schrieb: Hallo Tommy,Das hat nichts mit Foren zu tun, sondern mit fehlenden Grundkenntnissen. Ich vermute mal, dass Du aus Deinem Buch eher abgetippt / kopiert hast, als verstanden. Dir fehlt das Verständnis für die elementarsten Grundlagen von C. Wir müssen also noch viel früher anfangen. Nehmen wir mal Deine Variablendeklarationen: Code: const char *id; // ist in der DB eine Zahl Das sollte so aussehen: Code: int id; Ich gebe Dir jetzt noch ein unvollständiges getUserData. Beschäftige Dich soweit mit den Grundlagen von C, dass Du das vervollständigen kannst. Bevor Du Dir diese Kenntnisse nicht angeeignet hast, ist jede weitere Arbeit ab Deinem Projekt, mangels Grundkenntnissen, sinnlos. Code: char qry[] = "SELECT id,nachname, rfid, guthaben FROM arduino.ardu_tabelle WHERE rfid = '998841095900'"; Bau das in einen Sketch ein und zeige mir die Ausgabe der 4 globalen Variablen id, name, rfid und guthaben. Nur als Hinweis: Ich werde Dir keine weiteren Codeblöcke liefern, bis Du das nicht selbst hin bekommen hast. Dir fehlen alle Grundlagen von C. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
20.10.2016, 23:33
(Dieser Beitrag wurde zuletzt bearbeitet: 21.10.2016 09:01 von RonSH.)
Beitrag #29
|
|||
|
|||
RE: MySQL Beispielcode verstehen
Hallo,
da Tommy natürlich Recht hat, das mir einiges an Wissen in C fehlt, arbeite ich mich jetzt in die Sprache ein. Wenn man nur Beispiele abtippt, bleibt nichts hängen. Ich habe eine Frage zum umwandeln einer Variable. Umwandlung Zeichenkette - ganze Zahl Die Umwandlung mit "atoi" in int, also eine ganze Zahl klappt wunderbar. Habe ich jetzt int[11] als Variable, dann geht es nicht mehr. Genau so wie char. Wie bekomme ich meinen String dort rein. In meinen Grundlagen habe ich noch nichts gefunden. Code: #include <SPI.h> // SPI für EthernetShield Id und Guthaben werden in den jeweiligen Variablen gespeichert. Danke und bis bald |
|||
21.10.2016, 10:09
(Dieser Beitrag wurde zuletzt bearbeitet: 21.10.2016 10:10 von Tommy56.)
Beitrag #30
|
|||
|
|||
RE: MySQL Beispielcode verstehen
(20.10.2016 23:33)RonSH schrieb: Hallo,Wenn Du in Deinen Grundlagen nichts dazu gefunden hast, ist das merkwürdig. Welche Grundlagen benutzt Du denn? Was bedeutet int[11] auf dem Arduinio? Das hast Du ja überhaupt nicht drin und das brauchst Du auch nicht. Zu nachname und rfid musst Du Dich mit Arrays vom Typ Char beschäftigen. Die kann man nicht einfach mit = zuweisen. Zu diesem Problemkreis habe ich vor einigen Tagen ein Zusammenfassung im Nachbarforum veröffentlicht. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
21.10.2016, 12:41
Beitrag #31
|
|||
|
|||
RE: MySQL Beispielcode verstehen
Danke für die tolle Erklärung Tommy. Sehr verständlich geschrieben. Ich habe mir das gleich ausgedruckt.
Code: if (r) { Alle globalen Variablen funktionieren. Wäre der nächste Schritt jetzt, eine Variable rfid zu nutzen? lg Ron |
|||
21.10.2016, 14:25
Beitrag #32
|
|||
|
|||
RE: MySQL Beispielcode verstehen
(21.10.2016 12:41)RonSH schrieb: Danke für die tolle Erklärung Tommy. Sehr verständlich geschrieben. Ich habe mir das gleich ausgedruckt.Geht doch. prima. Jetzt mehmen wir uns das Einlesen der rfid in eine Variable Code: char rfid_karte[21]; Das machen wir am Besten erst mal in einem eigenen Sketch. Im Posting #15 hattest Du ja schon mal einen Ansatz dazu. Wir nehmen aber nicht den String rfid_id sondern char rfid_karte[21], wiel wir die ja mit der DB vergleichen wollen. RFID.read() liefert dir jedesmal 1 Zeichen. Für die Leseroutinen gibt es in den Foren genug Beispiele. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
|
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste