как сохранить несколько переключателей в базе данных с помощью php без значения кнопки save.
мой код:
$user_id = $_POST['user_id'];
foreach ( $_POST as $key => $val ) {
if ($key <> 'user_id') {
$bidder_interst_insert="INSERT INTO bidder_interest_list(id, bidder_id, bidder_interest_name) VALUES ('','$user_id','$val')";
$bidder_interst_insert_result = mysql_query($bidder_interst_insert);
if (mysql_affected_rows() > 0) {
$interest_list_success = "Thank you Successfull insert your interst list.";
$_SESSION['interest_list_success_msg'] = $interest_list_success;
} else {
$insert_error = "interst list Insert Error.";
$_SESSION['insert_error_msg'] = $insert_error;
header("location:interest_list.php");
}
}
}
Этот код работает, но база данных дополнительно сохранить в значении кнопки сохранения, как решить эту проблему ??
foreach ( $_POST as $key => $val ){
Вы прямо зацикливаете $_POST
, поэтому значение кнопки SAVE также сохраняется в базе данных. Возьмите значения по отдельности, а не зацикливание всего $_POST
, тогда значение кнопки SAVE не будет сохранено в базе данных.
И к тому же вы используете mysql
функции, которые устарели, использовать mysqli
или же PDO
,
РЕДАКТИРОВАТЬ::
Просто примите это так же, как вы user_id
==> $variablename = $_POST['fieldname'];
РЕДАКТИРОВАТЬ:::
Позвольте мне предположить, что у меня есть такая форма
<form name="form1" id="form1" method="post" action="">
<input type="checkbox" name="products[]" value="A" checked="checked" />A <br />
<input type="checkbox" name="products[]" value="B" checked="checked" />B <br />
<input type="checkbox" name="products[]" value="C" checked="checked" />C <br />
<input type="checkbox" name="products[]" value="D" checked="checked" />D <br />
<input type="checkbox" name="products[]" value="E" checked="checked" />E <br />
<input type="checkbox" name="products[]" value="F" checked="checked" />F <br />
<input type="submit" name="save" id="save" value="Save" />
</form>
тогда я могу сделать это так:
<?php
if(isset($_POST['save']))
{
$products = $_POST['products'];
foreach($products as $key => $value)
{
$qry = mysql_query("INSERT INTO tbl(product) VALUES('$value')");
}
}
?>
Попробуй это
unset($_POST['name-of-save-button']);
$data = $_POST;
foreach ( $data as $key => $val ){//your code here}