'Assigning value to a variable and sending it to NodeJS server
I am trying to assign a value to a variable by getting the input from the html form and then sending it to my node js server, but the problem is that when the value is fixed the server displays it bash on the html page from where it came. When I trie to get the value from the form it just gets an empty string. here is the code for html and node js server.
// Node.js WebSocket server script
const http = require('http');
const WebSocketServer = require('websocket').server;
const server = http.createServer();
console.log('Server is on port 3000')
server.listen(3000);
const wsServer = new WebSocketServer({
httpServer: server
});
wsServer.on('request', function(request) {
const connection = request.accept(null, request.origin);
connection.on('message', function(message) {
var test=message.utf8Data;
console.log('Received Message:', test);
connection.sendUTF(test);
});
connection.on('close', function(reasonCode, description) {
console.log('Client has disconnected.');
});
});
<?php ob_start() ?>
<?php $titel="Chat"; ?>
<div class="chat-main" id="text"></div>
<form name='form' method='post' class="form">
<div class="form-group">
<input type="text" class="form-control" id="textbox" name="chat" placeholder="Chat">
<button type="submit" class="btn btn-primary" name="gumb" id="gumb">Send</button>
</div>
</form>
<script>
const ws = new WebSocket('ws://localhost:3000');
var message="This is the client speaking.";
console.log(message);
ws.onopen = function() {
console.log('WebSocket Client Connected');
ws.send(message);
};
ws.onmessage = function(e) {
console.log("Received: '" + e.data + "'");
document.getElementById('text').innerHTML=e.data;
};
</script>
<?php
$content=ob_get_clean();
require "layout.html.php";
?>
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|