Post/Insert javascript变量到mySQL数据库表-可能使用ajax &/或jquery -如何

Post/Insert javascript variables to mySQL database table - presumably with ajax &/or jquery - How?

本文关键字:ajax 如何 jquery 变量 javascript mySQL 数据库 Post Insert      更新时间:2023-09-26

我把我的表单贴在下面。下表中的变量"e"应该是a的内容表单元格在同一页上。下面的部分位于一个名为insert.php的文件中。我怎么能把var e在mysql?

在google(和这个网站)上已经有很多关于这个问题的答案,其中的代码没有指定要替换什么,用什么,在代码的什么位置,以及哪些代码应该放在哪些文件中。帮助我们这些新手了解细节!下面的代码似乎是一个标准,我和其他人如何修改这个代码与一个变量的工作?Var e是a的内容表单元格在同一页上。

谢谢!


var e = document.getElementById("ItemName1").innerHTML);

<form action="insert.php" method="post">
<input type="hidden" name="save_name" value=e>
<input type=image
onmouseover='this.src="http://www.mysite.com/images/MouseOver.png"'
onmouseout='this.src="http://www.mysite.com/images/MouseOut.png"'
src="http://www.mysite.com/images/MouseOut.png">
</form>

<html>
<head>
</head>
<body>
<?php
$con = mysql_connect("localhost","removed for now","removed for now");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("removed for now", $con);
$sql="INSERT INTO Temp_Name (item_name) VALUES ('$_POST[save_name]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
echo $sql;
mysql_close($con)
?> 
</body>
</html>

改变这一行

$sql="INSERT INTO Temp_Name (item_name) VALUES ('$_POST[save_name]')";

$name = mysql_real_escape_string($_POST['save_name']);
$sql="INSERT INTO Temp_Name (item_name) VALUES ('$name')";

和阅读更多关于SQL注入

并且在实际场景中请不要回显您的查询字符串

要使用javascript获取输入的值,你需要这样做

<input type="hidden" name="save_name" id="input1" value="e">
javascript:

var value = document.getElementById("input1").value;

首先,你的Javascript有一个不匹配的右括号,我不得不假设这是偶然的。修正版:

var e = document.getElementById("ItemName1").innerHTML;

要将该变量的内容设置为隐藏文本字段的值,您应该(在页面加载时)执行如下操作:

document.getElementById("hiddenelement").value=e;

,然后更改表单的隐藏元素为:

<input type="hidden" name="save_name" id="hiddenelement">

至于你的mySQL查询,你现在拥有的是非常危险的。您正在执行一个包含来自客户端的文本的未转义查询。

请阅读SQL注入漏洞