对于一个学校项目,我需要将数据从一个html表单插入到我的数据库中。问题是,我以前从未使用过nodejs、express、handlebars或javascript,而且我似乎不知道它是如何工作的,我目前在.hbs文件中有这个表单
<div class="row">
<form action="" method="post" class="col s12">
<div class="row">
<div class="col s3 offset-s1">
<label>Sensor Type</label><br>
<label>
<input id="combo" class="with-gap" name="sensorType" type="radio"/>
<span>Temperature & Humidity</span>
</label><br>
<label>
<input id="temp" class="with-gap" name="sensorType" type="radio"/>
<span>Temperature</span>
</label><br>
<label>
<input id="humid" class="with-gap" name="sensorType" type="radio"/>
<span>Humidity</span>
</label>
</div>
</div>
<div class="row">
<div class="input-field col s3 offset-s1">
<select id="sensorForest">
<option value="" disabled selected>Choose your forest</option>
<optgroup label="The Netherlands">
<option value="streekbos">Streekbos Bovenkarspel</option>
</optgroup>
<optgroup label="United States of America">
<option value="losAngeles">Los Angeles National Forest</option>
</optgroup>
</select>
<label>Forest</label>
</div>
<div class="input-field col s3">
<textarea id="textarea2" class="materialize-textarea" data-length="50"></textarea>
<label for="textarea2">Enter sensor Location</label>
</div>
</div>
<div class="row">
<div class="input-field col s6 offset-s1">
<div class="input-field col s6">
<input id="latitude" type="text" class="validate">
<label for="latitude">Latitude</label>
</div>
<div class="input-field col s6">
<input id="longitude" type="text" class="validate">
<label for="longitude">Longitude</label>
</div>
</div>
</div>
<div>
<div class="row">
<div class="col s12 offset-s1">
<button class="btn waves-effect waves-light" id="submit">Submit
<i class="material-icons right">send</i>
</button>
</div>
</div>
</div>
</form>
</div>
我还使用下面的脚本提取了表单中字段的值,但是我不认为我可以使用它,因为我必须使用nodejs
<script>
var submit = document.getElementById("submit");
submit.onclick = function () {
//var sensorType = document.getElementById("sensorType").value;
var sensorForest = document.getElementById("sensorForest").value;
var sensorLocation = document.getElementById("textarea2").value;
var latitude = document.getElementById("latitude").value;
var longitude = document.getElementById("longitude").value;
console.log(sensorForest, sensorLocation, latitude, longitude);
};
</script>
有没有人知道我应该如何将数据发送到我的数据库,或者知道一个好的教程来解释我如何做?
谢谢您
3条答案
按热度按时间blpfk2vs1#
要将nodejs/expressjs应用程序连接到数据库(mongodb、mysql等),您需要一个orm库。对于你的情况,我建议续写。所有信息http://docs.sequelizejs.com/
7kjnsjlb2#
在将任何内容保存到数据库之前,必须先将其保存到服务器上。我建议使用内置
fetch
或者如果你想要更好的浏览器支持,请使用axios
,request-promise
或者superagent
. 所有这些软件包都可以在npm上找到客户
在你的点击处理器下面
依赖项
服务器
bogh5gae3#
不,你不需要orm库。你可以使用npm的mysql包