我需要发送数组到我的mysql数据库。
我已经创建了一个json数组,不知道如何将它发布到php以传输到db。
$( function () {
$( '#orderForm' ).on( 'submit', function ( event ) {
event.preventDefault();
var myData = [],
keys = ['item', 'qty', 'price'],
url = this.action;
$( '#orderTable' ).find( 'tr:gt(0)' ).each( function ( i, row ){
var oRow = {};
$( row ).find( 'td' ).each( function ( j, cell ) {
oRow[keys[j]] = $( cell ).text();
} );
myData.push( oRow );
} );
console.log( myData );
console.log( JSON.stringify( myData ) );
} );
} );
我要把它寄出去 item->item
, qty->qty
, price->price
到db。
我试过:
$.ajax( {
url: 'tc_menu',
type: 'POST',
data: JSON.stringify( myData ),
success: function ( data ) {
console.log( "success:", data );
},
failure: function ( errMsg ) {
console.error( "error:", errMsg );
}
} );
数据存储整个页面,但不存储(stringized mydata)。我仍然无法在php代码中通过$\u post和json\u解码数据存储整个页面,但不能 stringified myData
我在php代码中无法通过 $_POST
以及 json_decode
PHP代码
`if(isset($_POST['submitted_m'])){
$myData = serialize($_POST['data']);
$sqli = "INSERT INTO tc_cafe_orders SET item='".$myData."' ";
if (mysqli_query($db, $sqli)) {
$msg = "New Order added!";
echo "<script>
alert(\"$msg\");
window.location.replace('tc_menu.php');
</script>";}
else {echo "Error:".$sql."<br>".mysqli_error($db);}}`
2条答案
按热度按时间bq3bfh9z1#
删除嵌套的click事件和闭包。例如
而不是再试一次。
以及php中的mysql insert语句
不好。在这里了解有关mysql insert语句的更多信息https://www.w3schools.com/php/php_mysql_insert.asp
d5vmydt92#
给js试试这个
似乎php代码不匹配-尝试
serialize()
而不是json_decode()