[英]Insert array from form to sql
我有一個表單,有人可以添加多個電話號碼和分機號,並且我試圖將它們保存在數據庫中,只要保存數據,它在兩個文件中都顯示“ Array”一詞。
到目前為止,這是我的代碼:
if (!empty($_POST['Phone']) && isset($_POST['Extension'])) {
foreach ($_POST['Phone'] as $key => $value) {
foreach ($_POST['Extension'] as $key => $value2) {
$para = array("UserID" => \PDO::PARAM_INT, "Phone" => \PDO::PARAM_STR, "Extension" => \PDO::PARAM_STR);
$val = array($_SESSION['UserID'], $_POST['Phone'], $_POST['Extension']);
$r = DB::Call("[spPhoneInsert]", $para, $val);
}
}
if (count($r) > 0 && $r[0]['Result'] == 'Ok') {
header("location:home.php?added_phone=1");
} else {
header("location:home.php?error_phone=1");
}
exit;
}
每當您發布具有多個相同名稱元素的表單時
<input type="text" name="phone[]">
<input type="text" name="phone[]">
數據以數組形式發布到操作頁面。 您必須遍歷此數組才能將它們保存在數據庫中
您可以像這樣循環並創建所需的任何格式以下代碼將保存您的電話號碼和擴展名逗號分隔
foreach ($_POST['phone'] as $number){
$allNumbers .= $number.',';
}
foreach ($_POST['extension'] as $ext){
$allExt .= $ext.',';
}
$para = array("UserID" => \PDO::PARAM_INT, "Phone" => \PDO::PARAM_STR, "Extension" => \PDO::PARAM_STR);
$val = array($_SESSION['UserID'], trim($allNumbers,','), trim($allExt,','));
$r = DB::Call("[spPhoneInsert]", $para, $val);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.