如何创建一个javascript按钮,将表单中的信息传递给php sql:
<form>
<input type="text" placeholder="Name" name="name" class="name" /></br>
<input type="text" placeholder="Phone Number" name="number" class="number"/></br>
<input type="text" placeholder="Location " name="location" class="location"/></br>
<input type="submit" value="Add Booking" />
</form>
?php
$name = $_GET['name'];
$number = $_GET['number'];
$location = $_GET['location'];
$con = mysql_connect(".....",".....",".....");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
("chanh", $con);
$sql ="INSERT INTO book (name, number, location,timestamp)
VALUES ('$name', '$number','$location',NOW())";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added"
mysql_close($con);
?>
任何帮助都会受到赞赏,因为我只是一个菜鸟!谢谢
答案 0 :(得分:1)
您只需指定提交表格的位置
<form action="submit.php" method="get">
<input type="text" placeholder="Name" name="name" class="name" /></br>
<input type="text" placeholder="Phone Number" name="number" class="number"/></br>
<input type="text" placeholder="Location " name="location" class="location"/></br>
<input type="submit" value="Add Booking" />
</form>
如果你想进行某种验证,只需要Javascript
注意强>
避免将变量直接添加到您的查询中,您将容易受到SQL injection的攻击。</ p>
以下是您可以做的事情:
$con = mysql_connect(".....",".....",".....");
$name = mysql_real_escape_string($_GET['name']);
$number = mysql_real_escape_string($_GET['number']);
$location = mysql_real_escape_string($_GET['location']);
答案 1 :(得分:0)
创建一个,然后设置当单击该按钮时,表单将被提交。即
but = document.getElementById('clickButton');
formToSubmit = document.getElementById('myForm');
but.onclick = function(){
formToSubmit.submit();
};
答案 2 :(得分:0)
您无需JavaScript即可提交表单。您好像刚刚从<
错过了<?php
。
您可以在表单HTML元素上明确指定操作和方法,但如果不这样做,则它是GET请求,它将提交到当前URL(Web地址)。
实际上,如果您正在执行除获取数据之外的其他操作(例如搜索),则表单应使用HTTP POST,而不是GET。为了更好地理解为什么这类事情很重要,请参阅What should every programmer know about web development。但是,这是一个非常大的话题!
答案 3 :(得分:0)
您只需回发表单,换句话说,在表单上设置操作,如:
<form id="mainForm" action="process.php" method="post">..
在按钮上添加onclick
处理程序,如下所示:
<input type="submit" value="Add Booking" onclick="javascript:document.getElementById('mainForm').submit();" />
然而,并非我将方法设置为post
;这将需要您的PHP代码更改为:
$name = $_POST['name'];
$number = $_POST['number'];
$location = $_POST['location'];
在这种情况下使用POST可能没有必要,但您需要注意使用GET将在URL中对表单参数进行编码,如process.php?name=value&numner=value...
中所述,并且某些信息可能是敏感的,因此需要提交到HTTP请求正文中的服务器,而不是在URL中传输。