Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将多个同名字段保存到数据库PHP_Php_Jquery_Html - Fatal编程技术网

将多个同名字段保存到数据库PHP

将多个同名字段保存到数据库PHP,php,jquery,html,Php,Jquery,Html,保存它的PHP代码 $cols = $_POST['col']; $EvenementID = mysql_real_escape_string($_POST['evenementid']); foreach($cols as $col) { $Ticketnaam = mysql_real_escape_string($col['ticket']); $Aantal = mysql_real_escape_string($col['aantal']); $Prijs = mysql_re

保存它的PHP代码

$cols = $_POST['col'];

$EvenementID = mysql_real_escape_string($_POST['evenementid']);

foreach($cols as $col) {

$Ticketnaam = mysql_real_escape_string($col['ticket']);
$Aantal = mysql_real_escape_string($col['aantal']);
$Prijs = mysql_real_escape_string($col['prijs']);

$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam}', '{$Aantal}', '{$Prijs}')";


}
HTML代码

<input type="hidden" name="evenementid" value="<?php echo $evenementid; ?>" />
我正试图将这两个块保存到我的数据库中(因此我需要两条记录)。两个区块的均线相同。问题是数据库中只有一条记录

$cols = $_POST['col'];

$EvenementID = mysql_real_escape_string($_POST['evenementid']);

foreach($cols as $col) {

$Ticketnaam = mysql_real_escape_string($col['ticket']);
$Aantal = mysql_real_escape_string($col['aantal']);
$Prijs = mysql_real_escape_string($col['prijs']);

$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam}', '{$Aantal}', '{$Prijs}')";

$res = mysql_query($sql);//This will execute count($cols) number of times

}

您需要将mysql_查询($sql)移动到循环中,否则它将只执行foreach循环的最后一次迭代。

您使用的是ajax还是普通表单提交?我们可以看到您的ajax请求代码吗?您需要展示如何创建
myData
!啊,我在代码段中看到它被遗漏了。问题是ajax需要做一个
计数($cols)
,看看实际有多少列。如果只有一个键,则表示表单的方式有问题。由于
$\u POST
数组中有多个键,因此这将不起作用。如果
$\u POST['col']
是唯一的键,那么这将起到有限的作用。
    if (isset($_POST)){    
$EvenementID = mysql_real_escape_string($_POST['evenementid']);

foreach($_POST as $col) {

$Ticketnaam_1 = mysql_real_escape_string($col[0]['ticket']);
$Aantal_1 = mysql_real_escape_string($col[0]['aantal']);
$Prijs_1 = mysql_real_escape_string($col[0]['prijs']);


$Ticketnaam_2 = mysql_real_escape_string($col[1]['ticket']);
$Aantal_2 = mysql_real_escape_string($col[1]['aantal']);
$Prijs_2 = mysql_real_escape_string($col[1]['prijs']);





$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam_1}', '{$Aantal_1}', '{$Prijs_1}')";
$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam_2}', '{$Aantal_2}', '{$Prijs_2}')";


}


}
var myData = $('#ticket-form').serialize();

                        $.ajax({
                            type: "POST",

                            //URL of the php file that will process the login
                            url: "includes/ticket.php",

                            dataType: 'json',

                            //Pass the data through
                            data: myData,

                            //Handle the response
                            success: function (data) {

                            switch(data.case){

                            case 1: 
                            $(".inlog-feedback").html(data.message).fadeIn('slow');
                            break;

                            case 2:      
                            $(".inlog-feedback").html(data.message).fadeIn('slow');
                            window.location = "index.php"; 
                            break;

                            case 3: 
                            $(".inlog-feedback").html(data.message).fadeIn('slow');
                            break;

                            default:
                            /* If none of the above */

                            }
                    }            
                        })  

                        //Stop the submit button from submitting the form 
                        return false;   
                        }  
$cols = $_POST['col'];

$EvenementID = mysql_real_escape_string($_POST['evenementid']);

foreach($cols as $col) {

$Ticketnaam = mysql_real_escape_string($col['ticket']);
$Aantal = mysql_real_escape_string($col['aantal']);
$Prijs = mysql_real_escape_string($col['prijs']);

$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam}', '{$Aantal}', '{$Prijs}')";

$res = mysql_query($sql);//This will execute count($cols) number of times

}
    if (isset($_POST)){    
$EvenementID = mysql_real_escape_string($_POST['evenementid']);

foreach($_POST as $col) {

$Ticketnaam_1 = mysql_real_escape_string($col[0]['ticket']);
$Aantal_1 = mysql_real_escape_string($col[0]['aantal']);
$Prijs_1 = mysql_real_escape_string($col[0]['prijs']);


$Ticketnaam_2 = mysql_real_escape_string($col[1]['ticket']);
$Aantal_2 = mysql_real_escape_string($col[1]['aantal']);
$Prijs_2 = mysql_real_escape_string($col[1]['prijs']);





$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam_1}', '{$Aantal_1}', '{$Prijs_1}')";
$sql = "INSERT INTO tbl_Tickets (EvenementID, Ticketnaam, Aantal, Prijs) VALUES('".$EvenementID ."', '{$Ticketnaam_2}', '{$Aantal_2}', '{$Prijs_2}')";


}


}