gpt4 book ai didi

javascript - PHP/MySQL : Saving user input to Database

转载 作者:行者123 更新时间:2023-11-29 12:23:32 24 4
gpt4 key购买 nike

我有一个页面,它显示一个 map ,用户可以在其中添加标记,并显示一些输入框供他们添加信息(名称、描述等)。然后,该信息将被发送到数据库,在必要时可以在数据库中调用并显示该信息。

单击“保存”后,该框应关闭并显示一条消息(“完成”)

将其发送到数据库的 JS 函数:

    //when user clicks on the "submit" button
form.submit({point: point}, function (event) {
//prevent the default form behavior (which would refresh the page)
event.preventDefault();

//put all form elements in a "data" object
var data = {
name: $("input[name=name]", this).val(),
description: $("textarea[name=description]", this).val(),
category: $("select[name=category]",this).val(),
lat: event.data.point.overlay.getPosition().lat(),
lon: event.data.point.overlay.getPosition().lng()
};
trace(data)

//send the results to the PHP script that adds the point to the database
$.post("adddata.php", data, tidy_maps.saveStopResponse, "json");

//Erase the form and replace with new message
infowindow.setContent('done')
return false;

“adddata.php”:

<?php
ini_set("display_errors",1);
//database access info
$db = new mysqli("localhost", "stephen", "pass1", "gmaps1");

$statement = $db->stmt_init();

//database insert statement
$statement->prepare("INSERT INTO tidy_maps_test (lat, lon, name, description, category) VALUES (?, ?, ?, ?, ?)");

//grab values from the url and add to database
$statement->bind_param("ddsss", &$_POST['lat'], &$_POST['lon'], &$_POST['name'], &$_POST['description'], &$_POST['category']);
$status = $statement->execute();

//create a status message
if ($status)
{
$message = array("message" => $_POST['name'] . " has been added!");
}
else
{
$message = array("error" => $db->error);
}

$statement->close();

echo json_encode($message);
?>

单击“保存”按钮时,没有任何反应,表单保持打开状态并包含文本输入,并且不会保存到数据库。我在浏览器上运行“adddata.php”以查看它是否连接到数据库,确实如此。

我一直使用本教程作为指导:http://gis.yohman.com/up206b/tutorials/9-2/

<小时/>

我尝试将按钮更改为输入,但仍然没有成功。我的 HTML 表单是:

<form class="form-horizontal save-form" style="display: none">
<h1>Add me!</h1>
<fieldset>
<div class="control-group">
....
Form Contents Here
...
</div>
</div>
<div class="form-actions">
<input name="Save" type="submit" class="btn btn-primary" value="Save">
</div>
</fieldset>
</form>

最佳答案

您的代码(来自教程)使用函数“trace”

trace(data);

但是这个函数没有定义。在教程演示中,该函数定义为:

function trace(message)
{
if (typeof console != 'undefined')
{
console.log(message);
}
}

尝试将此代码添加到您的脚本中。

关于javascript - PHP/MySQL : Saving user input to Database,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28683662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com