Phonegap, Mysql, ajax // 无插入
Phonegap, Mysql, ajax // No Insert
我尝试从 html 插入到 mysql (Phonegap)。但他不这样做......我的错误是什么?抱歉我的英语不好,感谢您的帮助...
我有
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~
HTML:
<div id="landmark-1" data-landmark-id="1">
<form>
<div id="block1">Datum:<input type="date" id="date" name="date"></div>
<div id="block2">Baustelle: <input name="bau" id="bau" class="tb1" type="text" size="18" /></div>
<div id="block4">
<input type="submit" value="Speichern">
</div>
</form>
</div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Post.js
$(document).bind('deviceready', function(){
$(function(){
$('form').submit(function(){
var landmarkID = $(this).parent().attr('data-landmark-id');
var postData = $(this).serialize();
alert(postData+'&lid='+landmarkID);
$.ajax({
type: 'POST',
data: postData+'&lid='+landmarkID,
//change the url for your project
url: "http://voss-hm.de/zeitserver/save.php",
success: function(data){
console.log(data);
alert('Your comment was successfully added');
},
error: function(){
console.log(data);
alert('There was an error adding your comment');
}
});
return false;
});
});
});
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
PHP:
<?php
$server = "--------------";
$username = "--------------";
$password = "--------------";
$database = "--------------";
$con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());
mysql_select_db($database, $con);
$id = $_Post["id"];
$date = ($_Post["date"]);
$baustelle = ($_Post["bau"]);
$sql = "INSERT INTO timesave.$id (datum, baustelle, anfang, ende, pause) VALUES ('$date' , '$baustelle', '', '', '')";
if (!mysql_query($sql, $con)) {
die('Error: ' . mysql_error());
} else {
echo "Comment added";
}
mysql_close($con);
?>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 它
$_POST
不是 $_Post
- 请不要使用
mysql_
-函数!请改用 mysqli_
或 PDO。
这里有一些错误。
首先,使用 $_POST 而不是 $_Post(区分大小写)。
其次,你不应该再使用mysql_*函数了。请阅读本教程:https://www.binpress.com/tutorial/using-php-with-mysql-the-right-way/17
您的脚本现在容易受到很多攻击,您真的需要学习转义 POST 值。如果您发布的值中有单引号,您的脚本也将不起作用。下面的link会教你如何处理。
从您的 PHP 脚本返回 JSON 编码的对象也是一个好主意。
我尝试从 html 插入到 mysql (Phonegap)。但他不这样做......我的错误是什么?抱歉我的英语不好,感谢您的帮助... 我有 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ HTML:
<div id="landmark-1" data-landmark-id="1">
<form>
<div id="block1">Datum:<input type="date" id="date" name="date"></div>
<div id="block2">Baustelle: <input name="bau" id="bau" class="tb1" type="text" size="18" /></div>
<div id="block4">
<input type="submit" value="Speichern">
</div>
</form>
</div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post.js
$(document).bind('deviceready', function(){
$(function(){
$('form').submit(function(){
var landmarkID = $(this).parent().attr('data-landmark-id');
var postData = $(this).serialize();
alert(postData+'&lid='+landmarkID);
$.ajax({
type: 'POST',
data: postData+'&lid='+landmarkID,
//change the url for your project
url: "http://voss-hm.de/zeitserver/save.php",
success: function(data){
console.log(data);
alert('Your comment was successfully added');
},
error: function(){
console.log(data);
alert('There was an error adding your comment');
}
});
return false;
});
});
});
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ PHP:
<?php
$server = "--------------";
$username = "--------------";
$password = "--------------";
$database = "--------------";
$con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());
mysql_select_db($database, $con);
$id = $_Post["id"];
$date = ($_Post["date"]);
$baustelle = ($_Post["bau"]);
$sql = "INSERT INTO timesave.$id (datum, baustelle, anfang, ende, pause) VALUES ('$date' , '$baustelle', '', '', '')";
if (!mysql_query($sql, $con)) {
die('Error: ' . mysql_error());
} else {
echo "Comment added";
}
mysql_close($con);
?>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 它
$_POST
不是$_Post
- 请不要使用
mysql_
-函数!请改用mysqli_
或 PDO。
这里有一些错误。
首先,使用 $_POST 而不是 $_Post(区分大小写)。
其次,你不应该再使用mysql_*函数了。请阅读本教程:https://www.binpress.com/tutorial/using-php-with-mysql-the-right-way/17
您的脚本现在容易受到很多攻击,您真的需要学习转义 POST 值。如果您发布的值中有单引号,您的脚本也将不起作用。下面的link会教你如何处理。
从您的 PHP 脚本返回 JSON 编码的对象也是一个好主意。