如何使用 PHP-jQuery 和 MSSQL Server 插入多个复选框?
how can i Insert multiple checkboxes using PHP-jQuery and MSSQL Server?
我正在尝试使用 PHP-jQuery
从多个复选框中将记录保存到 MSSQL 服务器数据库中
但是出现这个错误
问题在PHP代码中,如何读取这个字符串并将这个数据记录到MSSQL DB中?
//PHP page: cat-grupos.php
if(isset($_POST['buttonsave']))
{ //echo "bttnsave"; // Mensaje Afirmativo.
$vfpg = $_POST['perGrupo'];
$vfdg = $_POST['depGrupo'];
$vfsg = $_POST['selGrado'];
$vfchs = $_POST['myCheckboxes']; // Array secciones A,B,C,..
$query_in="INSERT INTO igrupos (idperiodo, idcarrera, grado, seccion)
VALUES (?,?,?,?)";
for ( $i=0; $i < count( $vfchs ); $i++ )
{
// do some stuff, save to database, etc.
$params = array(
array($vfpg ,SQLSRV_PARAM_IN),
array($vfdg ,SQLSRV_PARAM_IN),
array($vfsg ,SQLSRV_PARAM_IN),
array($vfchs ,SQLSRV_PARAM_IN)
);
}
$sql_in = sqlsrv_query($conn,$query_in,$params);
if ($sql_in) // Se eejectuto la sentencia SQL?
{
echo "SQLSuccess"; // Affirmative message.
} else {
$msgErrorSQL = "Error SQL not working"; // Negative Message;
die( print_r( sqlsrv_errors(), true)); // Causa del error.
}
exit();
}
非常感谢!
这是 Ajax 代码:
jQuery('#save').click(function(){
<!-- VARIABLES del Formulario -->
var vpGrupo = jQuery('.modal-body #per-Grupo').val();
var vdGrupo = jQuery('.modal-body #dep-Grupo').val();
var vsGrado = jQuery('.modal-body #selGrado').val();
// var checkit = jQuery('.modal-body #cbSeccion-list').val();
var data = { 'cbSeccion-list' : []};
// var myCheckboxes = new Array();
// jQuery('.modal-body #cbSeccion-list input:checkbox:checked').each(function(){
jQuery("input:checkbox:checked").each(function(){
data['cbSeccion-list'].push(jQuery(this).val());
// alert("Save clicked");
});
//console.log(data)
alert("Save clicked ->> "+JSON.stringify(data));
//var myCheckboxes = jQuery('input:checkbox:checked').val();
<!-- VARIABLES del Formulario -->
jQuery.ajax({
url : "cat-grupos.php",
type : "POST",//url:'buscar.php?act=insertar',
//async: false,
data : {
buttonsave : 1,
perGrupo : vpGrupo,
depGrupo : vdGrupo,
selGrado : vsGrado,
myCheckboxes : data // Array secciones A,B,C,..
},
success:function(result)
{
if(jQuery.trim(result) === "SQLSuccess")
{
// alert("Datos agregados correctamente");
alert(result);
} else {
// alert(result);
console.log(result)
alert("Error SQL: "+result);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//error condition code
alert("Error AJAX not working: "+JSON.stringify(error));
}
});
});
谢谢,然后替换此 PHP 代码:
if(isset($_POST['buttonsave']))
{ //echo "bttnsave"; // Mensaje Afirmativo.
$vfpg = $_POST['perGrupo'];
$vfdg = $_POST['depGrupo'];
$vfsg = $_POST['selGrado'];
$vfchs = $_POST['myCheckboxes']; // Array secciones A,B,C,..
//$data = json_decode($vfchs, true);
for ( $i=0; $i < count( $vfchs ); $i++ )
{
// do some stuff, save to database, etc.
$query_in="INSERT INTO igrupos (idperiodo, idcarrera, grado, seccion)
VALUES (?,?,?,?)";
$params = array(
array($vfpg ,SQLSRV_PARAM_IN),
array($vfdg ,SQLSRV_PARAM_IN),
array($vfsg ,SQLSRV_PARAM_IN),
array($vfchs[$i] ,SQLSRV_PARAM_IN),
);
$sql_in = sqlsrv_query($conn,$query_in,$params);
}
我认为您在 ajax 中发送了错误的数据。
试试这个:
jQuery.ajax({
url : "cat-grupos.php",
type : "POST",//url:'buscar.php?act=insertar',
//async: false,
data : {
buttonsave : 1,
perGrupo : vpGrupo,
depGrupo : vdGrupo,
selGrado : vsGrado,
myCheckboxes : data['cbSeccion-list'] // Array secciones A,B,C,..
}, //rest of ajax
区别是data['cbSeccion-list']
我正在尝试使用 PHP-jQuery
从多个复选框中将记录保存到 MSSQL 服务器数据库中但是出现这个错误
问题在PHP代码中,如何读取这个字符串并将这个数据记录到MSSQL DB中?
//PHP page: cat-grupos.php
if(isset($_POST['buttonsave']))
{ //echo "bttnsave"; // Mensaje Afirmativo.
$vfpg = $_POST['perGrupo'];
$vfdg = $_POST['depGrupo'];
$vfsg = $_POST['selGrado'];
$vfchs = $_POST['myCheckboxes']; // Array secciones A,B,C,..
$query_in="INSERT INTO igrupos (idperiodo, idcarrera, grado, seccion)
VALUES (?,?,?,?)";
for ( $i=0; $i < count( $vfchs ); $i++ )
{
// do some stuff, save to database, etc.
$params = array(
array($vfpg ,SQLSRV_PARAM_IN),
array($vfdg ,SQLSRV_PARAM_IN),
array($vfsg ,SQLSRV_PARAM_IN),
array($vfchs ,SQLSRV_PARAM_IN)
);
}
$sql_in = sqlsrv_query($conn,$query_in,$params);
if ($sql_in) // Se eejectuto la sentencia SQL?
{
echo "SQLSuccess"; // Affirmative message.
} else {
$msgErrorSQL = "Error SQL not working"; // Negative Message;
die( print_r( sqlsrv_errors(), true)); // Causa del error.
}
exit();
}
非常感谢!
这是 Ajax 代码:
jQuery('#save').click(function(){
<!-- VARIABLES del Formulario -->
var vpGrupo = jQuery('.modal-body #per-Grupo').val();
var vdGrupo = jQuery('.modal-body #dep-Grupo').val();
var vsGrado = jQuery('.modal-body #selGrado').val();
// var checkit = jQuery('.modal-body #cbSeccion-list').val();
var data = { 'cbSeccion-list' : []};
// var myCheckboxes = new Array();
// jQuery('.modal-body #cbSeccion-list input:checkbox:checked').each(function(){
jQuery("input:checkbox:checked").each(function(){
data['cbSeccion-list'].push(jQuery(this).val());
// alert("Save clicked");
});
//console.log(data)
alert("Save clicked ->> "+JSON.stringify(data));
//var myCheckboxes = jQuery('input:checkbox:checked').val();
<!-- VARIABLES del Formulario -->
jQuery.ajax({
url : "cat-grupos.php",
type : "POST",//url:'buscar.php?act=insertar',
//async: false,
data : {
buttonsave : 1,
perGrupo : vpGrupo,
depGrupo : vdGrupo,
selGrado : vsGrado,
myCheckboxes : data // Array secciones A,B,C,..
},
success:function(result)
{
if(jQuery.trim(result) === "SQLSuccess")
{
// alert("Datos agregados correctamente");
alert(result);
} else {
// alert(result);
console.log(result)
alert("Error SQL: "+result);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//error condition code
alert("Error AJAX not working: "+JSON.stringify(error));
}
});
});
谢谢,然后替换此 PHP 代码:
if(isset($_POST['buttonsave']))
{ //echo "bttnsave"; // Mensaje Afirmativo.
$vfpg = $_POST['perGrupo'];
$vfdg = $_POST['depGrupo'];
$vfsg = $_POST['selGrado'];
$vfchs = $_POST['myCheckboxes']; // Array secciones A,B,C,..
//$data = json_decode($vfchs, true);
for ( $i=0; $i < count( $vfchs ); $i++ )
{
// do some stuff, save to database, etc.
$query_in="INSERT INTO igrupos (idperiodo, idcarrera, grado, seccion)
VALUES (?,?,?,?)";
$params = array(
array($vfpg ,SQLSRV_PARAM_IN),
array($vfdg ,SQLSRV_PARAM_IN),
array($vfsg ,SQLSRV_PARAM_IN),
array($vfchs[$i] ,SQLSRV_PARAM_IN),
);
$sql_in = sqlsrv_query($conn,$query_in,$params);
}
我认为您在 ajax 中发送了错误的数据。
试试这个:
jQuery.ajax({
url : "cat-grupos.php",
type : "POST",//url:'buscar.php?act=insertar',
//async: false,
data : {
buttonsave : 1,
perGrupo : vpGrupo,
depGrupo : vdGrupo,
selGrado : vsGrado,
myCheckboxes : data['cbSeccion-list'] // Array secciones A,B,C,..
}, //rest of ajax
区别是data['cbSeccion-list']