Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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 如何通过函数传递数组参数,然后可以绑定_param()数组以添加到数据库_Php_Sql_Arrays_Mysqli - Fatal编程技术网

Php 如何通过函数传递数组参数,然后可以绑定_param()数组以添加到数据库

Php 如何通过函数传递数组参数,然后可以绑定_param()数组以添加到数据库,php,sql,arrays,mysqli,Php,Sql,Arrays,Mysqli,所以我正在做一个项目,当你选择一个英格兰足球联赛,例如英超联赛、英冠联赛、英甲联赛……它将包括'Premier_league.php'或选择任何联赛,都包括在内。该页面由一个表单组成,该表单有一行10个&。这10个项目构成一行/固定装置。由于排数不同,英超联赛最多10场比赛,锦标赛最多12场。最大行数由特定联赛中的球队数量除以2确定。由于行的数量如此之多,我已经遍历了数据。所以调用的页面,在本例中,premier_league.php设置如下 <form action="" method=

所以我正在做一个项目,当你选择一个英格兰足球联赛,例如英超联赛、英冠联赛、英甲联赛……它将
包括'Premier_league.php'或选择任何联赛,都包括在内。该页面由一个表单组成,该表单有一行10个
&
。这10个项目构成一行/固定装置。由于排数不同,英超联赛最多10场比赛,锦标赛最多12场。最大行数由特定联赛中的球队数量除以2确定。由于行的数量如此之多,我已经遍历了数据。所以调用的页面,在本例中,
premier_league.php
设置如下

<form action="" method="POST">
<input type="submit" name="add" value="Add" class="btn btn-medium btn-success"><br><br>
<?php

$leaguelist = '<option disabled>Please select team</option>';
if ($league_var == NULL) {
    $leaguelist .= '<option "disabled"><strong>Please Select a League Table</strong></h1>';
} else {
    $league_table = get_table($league_var);
    foreach ($league_table as $rows) {    

    $leaguelist .= '<option>'.htmlspecialchars($rows['team']).'</option>';
    }
}
$needed_rows = ceil(count(get_table($league_var)) / 2);
for($i=1; $i <= $needed_rows; $i++){
?>
<select name="result[<?=$i?>][home]" id="" style="width:175px">
<?=$leaguelist?>
</select>

<input type="text" name="result[<?=$i?>][home-score]" class="edit_league_input" value="">
vs
<input type="text" name="result[<?=$i?>][away-score]" class="edit_league_input" name="" value="">
<select name="result[<?=$i?>][away]" id="" style="175px">
<?=$leaguelist?>
</select>
<input type="date" name="result[<?=$i?>][date]" style="width:150px;">
<input type="time" name="result[<?=$i?>][kickoff]" style="width:90px;">
<input type="checkbox" name="result[<?=$i?>][on-tv]" value="Yes" style="margin:-10px 5px 0px 5px;">on T.v
<input type="text" name="result[<?=$i?>][channel]" value="" placeholder="Channel..." style="width:100px;">
<select name="result[<?=$i?>][result]" id="" style="width:125px;">
<option value="">Match Choice...</option>
<option value="HT">Half Time</option>
<option value="FT">Full Time</option>
<option value="P">Postponed</option>
</select>
<br>
<?php
}
我想我可以开始看到绑定过程的开始…将
.'home']
绑定到第一个,将
$fixture['hs']
绑定到第二个,但我只能猜测它只绑定了一行?但是如果我加上4呢?8.或者所有12个固定装置如何将它们绑定在一起

有人建议使用不同的代码,那就是

for ($i = 0; $i < count($h); $i++) {
    $sql = "INSERT INTO `fixtures` (`home`, `home-score`, `away-score`, `away`, `kickoff`, `on-tv`, `channel`, `league`, `result`, `date`)
VALUES(?,?,?,?,?,?,?,?,?,?)";

$stmt = $db->prepare($sql);
$stmt->bind_param("s", $home[$i]);
$stmt->bind_param("i", $hs[$i]);
$stmt->bind_param("i", $as[$i]);
$stmt->bind_param("s", $away[$i]);
$stmt->bind_param("s", $time[$i]);
$stmt->bind_param("i", $tv[$i]);
$stmt->bind_param("i", $channel[$i]);
$stmt->bind_param("s", $league[$i]);
$stmt->bind_param("s", $result[$i]);
$stmt->bind_param("s", $date[$i]);
$success = $stmt->execute();

    if ($success === false) {
        echo $stmt->errno . ": " . $stmt->error;
    }
}
for($i=0;$iprepare($sql);
$stmt->bind_参数($s),$home[$i]);
$stmt->bind_参数(“i”、$hs[$i]);
$stmt->bind_参数(“i”,$as[$i]);
$stmt->bind_param(“s”,$away[$i]);
$stmt->bind_参数($s),$time[$i]);
$stmt->bind_参数(“i”、$tv[$i]);
$stmt->bind_参数(“i”,$channel[$i]);
$stmt->bind_param(“s”),$league[$i]);
$stmt->bind_参数(“s”,$result[$i]);
$stmt->bind_参数($s),$date[$i]);
$success=$stmt->execute();
如果($success==false){
echo$stmt->errno.:“$stmt->error;
}
}
现在,我可以看到它在理论上是如何工作的。。
[$i]
是循环所在行的一个代表,但即使如此,我仍在努力解决如何将其放入函数中。。以及如何绑定_param数组,最后将数据输入数据库

1)如果您认为我应该更改代码,请说,帮助并建议您认为我需要更改的位置和内容

2)但主要是,我问…我应该/会如何将数组绑定到参数,以将函数传递到
插入到数据库中的多行数据


我只想说,我已经在这里和网上搜索过了,而且我已经找到了一些东西,我只是不知道如何在我的代码中实现它,以使整个过程正常工作,我担心:(

你为什么不向你的其他帐户询问?我的其他帐户?我没有?我想我知道你的意思。我哥哥有一个帐户,他被禁止提问,所以我帮他制定了一些设计计划和基本代码,我想在他紧张的时候,试着弄清楚如何让它工作,我建立了一个我不明白你的意思,怎么会这么傻?你认为我们是在编造故事吗?:我只是想帮助我的兄弟,仅此而已……希望有人能帮助我们,如果你想认为我们做得很好,但我们不知道如何说服你的话否则,我不会费心去尝试好吧,如果你愿意的话,把这个账户也禁止。我真的不在乎。只是好奇而已
for ($i = 0; $i < count($h); $i++) {
    $sql = "INSERT INTO `fixtures` (`home`, `home-score`, `away-score`, `away`, `kickoff`, `on-tv`, `channel`, `league`, `result`, `date`)
VALUES(?,?,?,?,?,?,?,?,?,?)";

$stmt = $db->prepare($sql);
$stmt->bind_param("s", $home[$i]);
$stmt->bind_param("i", $hs[$i]);
$stmt->bind_param("i", $as[$i]);
$stmt->bind_param("s", $away[$i]);
$stmt->bind_param("s", $time[$i]);
$stmt->bind_param("i", $tv[$i]);
$stmt->bind_param("i", $channel[$i]);
$stmt->bind_param("s", $league[$i]);
$stmt->bind_param("s", $result[$i]);
$stmt->bind_param("s", $date[$i]);
$success = $stmt->execute();

    if ($success === false) {
        echo $stmt->errno . ": " . $stmt->error;
    }
}