2012-12-11 71 views
0

我想通過使用PHP在數據庫中保存值,我沒有錯誤,但數據庫是空的它沒有保存數據。插入數據到MySQL數據庫(無數據)

我把if語句來檢查值保存之前

請檢查我的代碼

請幫我

<?php 
$submit = $_POST['submit']; 
$sid = strip_tags($_POST['sid']); 
$Desc = strip_tags($_POST['Desc']);  
if ($submit) { 
    // open data base 
    $connet = mysql_connect("localhost", "root", "hahaha1"); 
    mysql_select_db("senior");   
    $sensorcheck = mysql_query("SELECT sid FROM availblesensors WHERE sid='$sid'"); 
    $count  = mysql_num_rows($sensorcheck); 
    if ($count != 0) { 
     die("You add this Sensor ID before!"); 
    }   
    if ($sid && $Desc) { 
     mysql_query("INSERT INTO availblesensors ('$sid','$Desc')"); 
     // success 
     die("You have add new sensor Successfully !! <a href='admin.php'>click here to return to admin page</a> or Here to 
<a href='gotoaddsensor.php'>add new sensor</a>"); 
    } else { 
     echo "<h3><font color='red'>Please fill in <b>all</b> feilds!</font></h3>"; 
    }   
} 
?> 




<form action="gotoaddsensor.php" method="post" class="one"> 

<div class="info"> 

    <center><div>Please add availble sensors with a few description of it if you need</div></center><br/> 
</div> 


       <div><b><label for="sid">Sensor ID</label>:</b> 
       <input name="sid" value="" id="sid" type="text" size="15"/> </div> 
    <br /> 
       <div><b><label for="password">Description</label>:</b> 
       <input name="Desc" value="" id="Desc" type="text" size="40"/></div> 
    <br /> 

      <div id="login-button"> 
      <input name="submit" type="submit" value="submit" /> 
          <input type="reset" value="clear" /> 
</div> 

    </form> 
+2

加上'或死亡(mysql_error());'到您的插入線的末端,看看它是否提高一個錯誤。 – webnoob

+2

'mysql_ *'函數已棄用,請使用'mysqli_ *'或PDO。 – jaudette

+0

檢查mysql日誌中的查詢,如果您嘗試從mysql控制檯運行查詢,它可能會失敗 – Naryl

回答

0

更改線路是:

if ($sid && $Desc) { 
    if(!mysql_query("INSERT INTO availblesensors values ('$sid','$Desc')")) { 
     die(mysql_error()); 
    } 
} else { 
    echo "<h3><font color='red'>Please fill in <b>all</b> feilds!</font></h3>"; 
}  

這樣你可以看到它給你的錯誤

+0

我在我的代碼中忘記了大量的詞,謝謝你 –

1

查詢將被

mysql_query("INSERT INTO availblesensors VALUES ('$sid','$Desc')"); 

mysql_query("INSERT INTO availblesensors ('$sid','$Desc')");` 

你錯過了查詢VALUES關鍵字。

+0

是的,我知道了..非常感謝你 –

+0

@SaraSayyar如果你找到答案有用然後標記答案是正確的,以便其他用戶可以參考答案。 :) –

1

你的SQL語句是不對的..

mysql_query("INSERT INTO availblesensors ('$sid','$Desc')"); 

你說的$ id和$說明在availablesensors列時,應在實際值前加VALUES

mysql_query("INSERT INTO availblesensors VALUES ('$sid','$Desc')"); 
0

查詢應是

mysql_query("INSERT INTO availblesensors VALUES (' ".$sid." ',' ".$Desc." ')"); 

mysql_query("INSERT INTO availblesensors ('$sid','$Desc')"); 
1

代碼中有一個小錯誤。按以下代碼更改。

mysql_query("INSERT INTO availblesensors ('$sid','$Desc')"); 

換成

mysql_query("INSERT INTO availblesensors values ("'.$sid.'","'.$Desc.'")"); 
+0

感謝您的幫助,我忘了寫「價值」一詞,像這樣mysql_query(「INSERT INTO availblesensors VALUES('$ sid','$ Desc')」) –

0

這裏有必要的修改

$connet = mysql_connect("localhost", "root", "hahaha1"); 
mysql_select_db("senior", $connet);   
$sensorcheck = mysql_query("SELECT sid FROM availblesensors 
             WHERE sid='$sid'",$connet); 
$count = mysql_num_rows($sensorcheck); 
if ($count != 0) { 
    die("You add this Sensor ID before!"); 
}   
if ($sid && $Desc) { 
    mysql_query("INSERT INTO availblesensors ('$sid','$Desc') 
             VALUES('Sensor Id','Sensor Desc')", $connet); 
+0

謝謝你的幫助 –

+0

mark atleast之一答案正確...... !!!!如果你的問題解決了 – sven