2010-01-26 60 views
0

該應用程序在數據庫中而不是mac地址返回值「1」...javascript,php,cookies

我能夠document.write輸出的mac地址,但不能有它存儲在數據庫中。

該程序是否使用以前的cookie? (但我已刪除所有的個人電腦上的cookies)

但如果我改變變量mac字符串的數據,它不斷刷新我的網頁。爲什麼這樣...(var mac =「test data」;)

請幫忙!

create_users.php

<script language="JavaScript"> 

function getMacAddress(){ 
document.macaddressapplet.setSep("-"); 
return (document.macaddressapplet.getMacAddress()); 
} 

function setCookie(c_name,value) { 
document.cookie = c_name + "=" +escape(value); 
} 

//var mac="test data"; 
var mac = getMacAddress(); 


setCookie('cookie_name',mac); 
window.location = "checkAvailability.php"; 

</script> 

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

checkAvailiability.php

$dbhost = 'localhost'; 
$dbuser = 'root'; 
$dbname = 'registration'; 
mysql_connect($dbhost, $dbuser) or die("Could not connect database"); 
mysql_select_db($dbname); 
$javascript_cookie_value = isset($_COOKIE["cookie_name"]) ? $_COOKIE["cookie_name"] : 1; 
mysql_query("INSERT INTO test (mac) VALUES ('$javascript_cookie_value')"); 
+2

使用firebug並查看Cookie選項卡以查看寫入cookie的內容。 – silent 2010-01-26 08:51:35

+0

但如果我使用FF,沒有問題的節省,但瀏覽器不斷刷新不停... – kennedy 2010-01-26 08:59:59

回答

0

假設代碼出現在checkAvailability.php,那麼它不斷刷新,因爲你有window.location = "checkAvailability.php";沒有邏輯來阻止它運行 - 所以每次加載頁面時,都會重定向到該URI。

1

爲什麼不:

window.location = "checkAvailability.php?mac=" + mac; 

,消除餅乾的問題?

我認爲你已經檢查過小程序是否按照你的預期行事?

C.