当用户向数据库输入新记录时,我有2个用于lat和lon的文本框.
我有一个很好的谷歌地图的实时预览,现在我想要做的是在地图上添加一个右键单击事件,填充lat/lon文本框并单击coord.
这甚至可能吗?
我知道如何添加事件监听器,并查看API文档,但没有看到任何这样做.我知道你可以在他们网站上的谷歌地图上做到这一点.
我试着浏览一些其他帖子,但没有看到任何我正在寻找的东西.
我有一个数据库查询
$sql = "INSERT INTO groups(Name) VALUES (:name)";
$dbs = $dbo->prepare($sql);
$dbs->bindParam(":name", $_POST['name'], PDO::PARAM_STR);
$dbs->execute();
$groupID = $dbs->lastInsertId();
Run Code Online (Sandbox Code Playgroud)
这会返回这个致命的错误:
[Tue Dec 20 13:59:23 2011] [error] [client 127.0.0.1] PHP Fatal error: Call to undefined method PDOStatement::lastInsertId() in /media/Storage/www/2011/admin/public/ajax.users.php on line 87, referer: http://localhost/2011/admin/public/menu.php?page=users
Run Code Online (Sandbox Code Playgroud)
根据PDO :: lastInsertId()的php手册:
如果PDO驱动程序不支持此功能,PDO :: lastInsertId()将触发IM001 SQLSTATE.
我如何确定我的服务器是否支持lastInsertId()?我在任何地方的错误日志中都没有看到IM001.
当我运行它时,数据插入正常,但我无法在下一组设置组权限的INSERT中使用它的ID.
我正在尝试使用PHP/PDO在MySQL中设置我的第一个事务...
我只是有一个简单的问题,确定以前的查询是否成功的最佳方法是什么?这就是我现在所拥有的,但我宁愿找到一种用if语句测试查询的方法.
这是试图获得工作模型的模拟代码.我知道$ results无法有效地测试是否有任何好处或坏处...当时间到来时,我有更多作为实际交易的占位符..
if ($_POST['groupID'] && is_numeric($_POST['groupID'])) {
$sql = "SET AUTOCOMMIT=0";
$dbs = $dbo->prepare($sql);
$dbs->execute();
$sql = "START TRANSACTION";
$dbs = $dbo->prepare($sql);
$dbs->execute();
$sql = "DELETE FROM users_priveleges WHERE GroupID=:groupID";
$dbs = $dbo->prepare($sql);
$dbs->bindParam(":groupID", $_POST['groupID'], PDO::PARAM_INT);
$dbs->execute();
try {
$sql = "DELETE FROM groups WHERE GroupID=:groupID LIMIT 1";
$dbs = $dbo->prepare($sql);
$dbs->bindParam(":groupID", $_POST['groupID'], PDO::PARAM_INT);
$dbs->execute();
$results["error"] = null;
$results["success"] = true;
try {
$sql = "DELETE FROM users WHERE Group=:groupID";
$dbs = $dbo->prepare($sql);
$dbs->bindParam(":groupID", $_POST['groupID'], PDO::PARAM_INT);
$dbs->execute();
$results["error"] …Run Code Online (Sandbox Code Playgroud) 我有一个表将其他2个表连接在一起.
我有一个复选框列表,当选中一个复选框时,它会通过ajax将值发送到服务器.
我想要做的是,如果值不在数据库中,插入(检查)或如果它们在那里,删除它们(未选中)
有没有办法在不写几个查询的情况下做到这一点?我知道插件/更新并不难,但删除怎么办?
我有一个表单,你可以在地图上选择一个点,它填充lat和lon文本框,或者你可以自己输入坐标.
我需要添加验证以确保用户输入有效范围,但我不确定我是否拥有正确的RegEx.这是我正在使用的方法:
var regex_coords = "[-]?[0-9]*[.]{0,1}[0-9]";
// ...
valid_coords: function (number) {
if (number.match(regex_coords) && !isNaN(Number(number))) {
$("#btnSaveResort").removeAttr("disabled");
return true;
} else {
$("#btnSaveResort").attr("disabled", "disabled");
return false;
}
},
Run Code Online (Sandbox Code Playgroud)
无论我在文本框中输入什么,此函数都返回false.
有关更好方法的任何建议吗?