在mysql_connect的時(shí)候判斷IP即可,不知道你的難度在哪里,獲取IP會(huì)不會(huì)?IF語(yǔ)句會(huì)不會(huì)?mysql_connect知道否?
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、新榮網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、商城開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為新榮等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
?php?
error_reporting(0);
header("content-type:text/html;charset=utf-8");
$conn=mysql_connect("127.0.0.1","root","qaz123");
if?(!$conn)
{
die('Could?not?connect:?'?.?mysql_error());
}
mysql_select_db("test",?$conn);
mysql_query("set?names?utf-8")?;
$ip?=?($_SERVER["HTTP_VIA"])???$_SERVER["HTTP_X_FORWARDED_FOR"]?:?$_SERVER["REMOTE_ADDR"];
$ip?=?($ip)???$ip?:?$_SERVER["REMOTE_ADDR"];
$time=time();
mysql_query("INSERT?INTO?visit?(ip,?time)?values('$ip','$time')")?;
/*
CREATE?TABLE?`visit`?(
`id`??int?NOT?NULL?AUTO_INCREMENT?,
`ip`??varchar(15)?CHARACTER?SET?utf8?COLLATE?utf8_general_ci?NOT?NULL?,
PRIMARY?KEY?(`id`)
)
ENGINE=MyISAM
DEFAULT?CHARACTER?SET=utf8?COLLATE=utf8_general_ci
CHECKSUM=0
DELAY_KEY_WRITE=0
;
*/
values('192.168.1.1','192.168.255.255',1),這個(gè)最后的1,你可以加‘’,也可以不加,,,
第一:更改 “mysql” 數(shù)據(jù)庫(kù)里的 “user” 表里的 “host” 項(xiàng),從”localhost”改稱'%'。
或者新加條記錄,“host” 項(xiàng)為要訪問(wèn)的ip地址,并授權(quán)。重啟mysql服務(wù)。
第二:在系統(tǒng)防火墻添加例外端口:3306,并允許例外。
錯(cuò)誤提示:
ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server
的解決方法:
1。改表法??赡苁悄愕膸ぬ?hào)不允許從遠(yuǎn)程登陸,只能在localhost。這個(gè)時(shí)候只要在localhost的那臺(tái)電腦,登入mysql后,更改 "mysql" 數(shù)據(jù)庫(kù)里的 "user" 表里的 "host" 項(xiàng),從"localhost"改稱"%"
1.mysql -u root -pvmware
mysqluse mysql;
mysqlupdate user set host = '%' where user = 'root';
mysqlselect host, user from user;
2. 授權(quán)法。例如,你想myuser使用mypassword從任何主機(jī)連接到mysql服務(wù)器的話。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允許用戶myuser從ip為192.168.1.3的主機(jī)連接到mysql服務(wù)器,并使用mypassword作為密碼
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
3.在window自帶的防火墻里的例外添加3306端口
總結(jié):
mysql -u root -p
mysqluse mysql;
mysqlselect 'host' from user where user='root';
mysqlupdate user set host = '%' where user ='root';
mysqlflush privileges;
mysqlselect 'host' from user where user='root';
第一句是以權(quán)限用戶root登錄
第二句:選擇mysql庫(kù)
第三句:查看mysql庫(kù)中的user表的host值(即可進(jìn)行連接訪問(wèn)的主機(jī)/IP名稱)
第四句:修改host值(以通配符%的內(nèi)容增加主機(jī)/IP地址),當(dāng)然也可以直接增加IP地址
第五句:刷新MySQL的系統(tǒng)權(quán)限相關(guān)表
第六句:再重新查看user表時(shí),有修改。。
重起mysql服務(wù)即可完成。
連接數(shù)據(jù)庫(kù)都會(huì)了,查詢出來(lái)也會(huì)吧?參考;
$query?=?"select?*?from?table?";
$i=0;
if?($result?=?mysqli_query($link,?$query))?{
while?($finfo?=?mysqli_fetch_field($result))?{
if($ip==$finfo-ip)
{
$i=1;
}
}
if($i==1)
{
echo?"1";
}
else{
echo?"0";
}
mysqli_free_result($result);
}
mysqli_close($link);
首先要使用SQL
Server
Driverfor
PHP,下載好對(duì)應(yīng)的版本后,在PHP中添加下載好的擴(kuò)展。
部分代碼:
$serverName
=
"localhost";
//數(shù)據(jù)庫(kù)服務(wù)器地址$uid
=
"sa";
//數(shù)據(jù)庫(kù)用戶名$pwd
=
"123";
//數(shù)據(jù)庫(kù)密碼$connectionInfo
=
array("UID"=$uid,"PWD"=$pwd,
"Database"="cart");$conn
=
sqlsrv_connect(
$serverName,
$connectionInfo);if(
$conn
==
false){
echo
"連接失敗!";
die(
print_r(sqlsrv_errors(),
true));}