2010-01-25 107 views
0

顯然我嘗試將數據保存到mysql中,但它沒有工作..任何人都可以幫忙嗎?php從javascript抓取數據

create_users.php

<form method="post" action="checkAvailability.php"> 
<script> 
    var macs = { 
    getMacAddress : function() 
    { 
     document.macaddressapplet.setSep("-"); 
     return (document.macaddressapplet.getMacAddress()); 
    }}jQuery(document).ready(function(){ 
     var mac = macs.getMacAddress(); 
     $.get('/checkAvailability.php?mac=' + mac, function() { alert('yeah done'); }) 
    }); 
</script> 



<script type="text/javascript"> 
    document.write(macs.getMacAddress()); 
</script> 
    </form> 

checkAvailability.php

$dbhost = 'localhost'; 
$dbuser = 'root'; 
$dbname = 'registration'; 
mysql_connect($dbhost, $dbuser) or die("Could not connect database"); 
mysql_select_db($dbname); 
$mac = $_GET['mac']; 
$mac = mysql_real_escape_string($mac); 
$sql = "INSERT INTO test(mac) VALUES ('$mac')"; 
mysql_query($sql); 
+1

請詳細說明你的意思是「沒有工作」。什麼是'macs'?它不是一個標準對象,也沒有在代碼中的任何地方定義。 – 2010-01-25 05:26:09

+0

添加一些echo來查看發生了什麼,並直接從瀏覽器調用腳本。你的問題可能在mac var爲空的任何地方,而不是你的mysql連接到數據庫。 – Erik 2010-01-25 05:27:31

+0

嗯..好吧,我再次編輯我的帖子..請幫助.. – kennedy 2010-01-25 05:36:01

回答

4

要調用在$獲得( 「create_users.php」)方法,而不是你應該叫 「checkAvailability.php」 ..

並嘗試此爲您的客戶端形式:

var macs = { 
getMacAddress : function() 
{ 
    document.macaddressapplet.setSep("-"); 
    return (document.macaddressapplet.getMacAddress()); 
}}jQuery(document).ready(function(){ 
    var mac = macs.getMacAddress(); 
    $.get('/checkAvailability.php?mac=' + mac, function() { alert('yeah done'); }) 
}); 
+0

哇,我完全錯過了= x – Erik 2010-01-25 05:28:53

+0

嘗試..它沒有工作..它沒有保存到數據庫。 – kennedy 2010-01-25 05:34:08

+1

在'mysql_query()'之後拋出一個快速且髒的回聲'mysql_error()'。另外,你有沒有連接到你的數據庫? – alex 2010-01-25 05:38:23