[英]Save data in database in php
我在网页中建立了两个弹出式div。 最初,第一个div- div1
被加载,其中包含下拉菜单。 这个div1
包含一个Next
按钮,它将关闭第一个div并打开新的div; div2
。 Div2
包含input
字段,用户将在其中输入姓名,电子邮件地址,电话号码等,然后单击submit
按钮。 在submit
对连接到PHP代码按钮调用sql
数据库并保存数据div2
到数据库:
/* Specify the server and connection string attributes. */
$serverName = "xxx-PC\SQLExpress";
$connectionOptions = array("Database"=>"Salesforce");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn === false)
{
die(print_r(sqlsrv_errors(), true));
}
else
{
/*Insert data.*/
$insertSql = "Insert into Salesforce.dbo.customer_details (Name, Company, Email, Phone, Assets, Comm, Capability)
VALUES (?,?,?,?,?,?,?)";
* Construct the parameter array. */
$params1 = array($from_fullname ,
$email_message,
$from_email,
$Phone,
'vehicles',
'xyz',
'abc');
$stmt = sqlsrv_query($conn, $insertSql, $params1);
if($stmt === false)
{
/*Die if other errors occurred.*/
die('Errors: ' . print_r(sqlsrv_errors(), TRUE));
}
else
{
echo '<br clear="all"><label style="color:red;">Thank you for your details.</label>';
}
我试图通过以下代码从div1
的下拉列表中获取数据,但没有成功:
$assets = trim(strip_tags($_POST['track']));
track
在哪里:
<select id="track" name="track" style="background-color: #ffffff;" onchange="selection(this)">
<option value="personnel">Personnel</option>
<option value="vehicles">Vehicles</option>
<option value="personnelVehicles">Personnel & Vehicles</option>
<option value="maritime">Maritime</option>
<option value="aircraft">Aircraft</option>
<option value="all">All of the above</option>
</select>
当从div2
单击submit
时,如何从div1
的下拉列表中获取数据并将其传递给php脚本?
EDIT1: submit
按钮在检查div2字段的javascript上调用。 在这里,我可以通过以下方法选择div1
的下拉列表的值:
var assets = $("#track :selected").text(); //the text content of the selected option
我可以将此变量从javascript传递到需要调用SQL
连接的php文件吗?
您可以使用会话存储数据并在需要时检索数据
例如:
if(isset($_POST['div2']))
{
//use session variables
$div1_data=$_SESSION['xyx'];
//And then can insert using prepared statements
}
注意:由于您说的是这两个div都不是表单,因此可以使用jquery AJAX方法将数据异步发送到执行插入选项的php页面
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.