• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Funktion in Funktion und Return ?

terra75

Member
Hallo zusammen,

habe hier ein blödes Problem, wo ich nicht weiter komme.
Spiele z.Z. mit Node.js rum, in der ich eine MySQL Abfrage machen und diese an den Client übergeben möchte. Der Client sendet ein JSON String, welcher der Server (Node.js) abfängt und verarbeitet.

Wichtig ist grade nur der Server. Sieht in etwa so aus:
PHP:
wss.on("connection", function(ws) {

	ws.on("message", function(event) { // Abfangen des JSON String vom Client.
		var getMySQLData = getLogin(event); // Hole MySQL Datensatz.
		console.log(getMySQLData);
		//ws.send(test);
	});

   ws.on("error", function(error) {
		console.log("ERROR: " + error)
   });  
   
  ws.on("close", function(a) {});
  
});



function getLogin(logindata) {

	var jsonData = JSON.parse(logindata);
	sql.query('SELECT * FROM user WHERE username = "' + jsonData.username + '"', function(err, rows, fields){		
		
		console.log(rows[0].gamename); // Wird richtig ausgegeben !
	});
	
	
	return; // Hier komme ich nicht weiter -.-
}

Wie man sieht, funktioniert schon ein großer Teil. Allerdings komme ich bei der unteren Return Anweisung nicht weiter.

Ich möchte gerne, das innerhalb der sql.query Funktion ein Wert (in dem Fall rows[0].gamename) an das untere Return gesendet werden kann, so das oben bei console.log(getMySQLData); dieser Wert ausgespuckt wird. Nur leider funktioniert nichts, was ich bereits probiert habe.

Kann mir da jemand weiterhelfen?

LG Terra.

- - - Aktualisiert - - -

OK, habs jetzt anders gelöst ... so gehts auch.

PHP:
wss.on("connection", function(ws) {

	ws.on("message", function(event) {
		
		var jsonData = JSON.parse(event);
		
		switch(jsonData.formID) {
			case "login":
				sql.query('SELECT * FROM user WHERE username = "' + jsonData.username + '"', function(err, rows, fields){		
					ws.send(rows[0].gamename);
					console.log(rows);
				});
			break;
		}

	});

   ws.on("error", function(error) {
		console.log("ERROR: " + error)
   });  
   
  ws.on("close", function(a) {});
  
});

Gruß, Terra
 
Zurück
Oben