2013-08-19 38 views
0

我想添加一些複選框在我的數據庫中的值,但它不是真的工作。它給 「」 值:問題與複選框,並在數據庫中添加值

http://img692.imageshack.us/img692/2844/kbyl.png

這是它創建查詢: INSERT INTO oudebadkamer(WC,壞了,斗車,Wasbak)VALUES( '', '', '', '');

連接正常,名稱正確,因爲它在所有字段中添加「」。

請幫我一把。

<form action="formhandle.php" method="POST"> 

    Wat zit er in uw huidige badkamer?<br /> 
    <input type="checkbox" name="Sanitair[]" value="WC" checked>WC<br /> 
    <input type="checkbox" name="Sanitair[]" value="Douche" checked>Douche<br />   
    <input type="checkbox" name="Sanitair[]" value="Bad" checked>Bad<br /> 
    <input type="checkbox" name="Sanitair[]" value="Wasbak" checked>Wasbak<br />  

    <input type="submit" name="Volgende" value="Volgende"/><br /> 
    <?php 
    $checkbox1 = $_POST['Sanitair']; 
    if(isset ($_POST ['Volgende'])) 
    {   
      $querystring = "INSERT INTO oudebadkamer(WC, Bad, Douche, Wasbak) 
          VALUES (
          '" 
          .$checkbox1[0]."','" 
          .$checkbox1[1]."','" 
          .$checkbox1[2]."','" 
          .$checkbox1[3]."');"; 
      mysql_query($querystring)or die(mysql_error()); 

      echo $querystring;   
    } 
    ?> 
    </form> 
+1

你可以編輯你的問題,包括你的相關代碼截圖嗎? –

+0

如果您正在獲取該查詢,它將插入空白值。你在哪裏創建你的查詢? – Tricky12

+0

顯示你的編碼 –

回答

0
  1. 關閉你形成即。 </form>開始處理PHP之前。

我已編輯代碼:

這將現在的工作!

<form action="formhandle.php" method="POST"> 

Wat zit er in uw huidige badkamer?<br /> 
<input type="checkbox" name="Sanitair[]" value="WC" checked>WC<br /> 
<input type="checkbox" name="Sanitair[]" value="Douche" checked>Douche<br />   
<input type="checkbox" name="Sanitair[]" value="Bad" checked>Bad<br /> 
<input type="checkbox" name="Sanitair[]" value="Wasbak" checked>Wasbak<br />  

<input type="submit" name="Volgende" value="Volgende"/><br /> 

</form> 
<?php 
if(isset ($_POST ['Volgende'])) 
{  
    $val1 =$val2 = $val3 = $val4 = FALSE; // declaring all variables to be false 

    if(isset($_POST['Sanitair'][0])) 
    { 
     $val1 = $_POST['Sanitair'][0]; // if value is set then put the value in variable else keep it empty 
    } 
    else 
    { 
     $val1 = ''; 
    } 

    if(isset($_POST['Sanitair'][1])) 
    { 
     $val2 = $_POST['Sanitair'][1]; 
    } 
    else 
    { 
     $val2 = ''; 
    } 

    if(isset($_POST['Sanitair'][2])) 
    { 
     $val3 = $_POST['Sanitair'][2]; 
    } 
    else 
    { 
     $val3 = ''; 
    } 

    if(isset($_POST['Sanitair'][3])) 
    { 
     $val4 = $_POST['Sanitair'][3]; 
    } 
    else 
    { 
     $val4 = ''; 
    } 

    if($val1 or $val2 or $val3 or $val4) 
    { 
     $querystring = "INSERT INTO oudebadkamer (`WC`, `Bad`, `Douche`, `Wasbak`) 
         VALUES ('".$val1."','".$val2."','".$val3."','".$val4."')"; 
     mysql_query($querystring)or die(mysql_error()); 
// use backtics with column name while inserting it will help reducing future errors 
     echo $querystring; 
    } 
    else 
    { 
     echo "no Checkbox selected"; 
    } 
} 
?> 
+0

非常感謝!它的工作原理:) – Bart

0

如果所有字段都爲空(「」),那意味着它們沒有被檢查。

檢查一些複選框,也許發佈var_dump$_POST['Sanitair']

+0

已使用var_dump並且其值爲null。有點奇怪,因爲我檢查了所有的複選框 – Bart

0

我不能評論,因爲我的名聲很低,但至少很少有提示作爲答案。

  1. 是您的網頁上的截圖formhandle.php?
  2. 使用var_dump()功能打印$_POST陣列的文件名,看是否烏爾得到你要求的
  3. 名不必是在PHP正確becouse數據當你創建它時,你不需要指定變量類型。這意味着,如果找你不是在你的$_POST陣列歌廳任何日e $querystring仍然看起來是一樣的(...VALUES ('','','','');)
+0

這是在一個不同的PHP文件。我的formhandle.php文件是空的 – Bart

0

您可以嘗試像下面

if(isset($_request['Volgende'])) 
{ 
$checkbox1=$_request['Sanitair']; 
After this you can use the '$checkbox1' array value in your query. 
} 
+0

試過了,沒有工作:( – Bart