2012-12-30 1 views
1

ips를 방문객으로부터 지키고 파일에 저장하고 싶습니다.
필자는 fwrite() 함수를 사용하려고했지만 IP상의 previus IP에서 다시 작성한다고 생각합니다.PHP에서 파일 쓰기

예.

ip.txt가 비어 있습니다. 나는 write.php 스크립트를 실행할 때 내 친구가 내가 (친구의 IP AAAA IP를 가지고 ip.txt에 write.php 스크립트를 실행하는 경우

, ip.txt에 나는 XXXX IP (내 IP)

이 전용)

내 IP는 어디입니까? 나는 ip.txt는 다음 파일에 갖고 싶어 : write.php에

x.x.x.x ip1 
a.a.a.a ip2 

코드는 다음과 같다. "w"

<?php 
$file = fopen("ip.txt","w"); 
$ip=$_SERVER['REMOTE_ADDR']; 
echo fwrite($file,$ip); 
fclose($file); 
?> 
+7

당신은 데이터베이스를 사용한다하십시오. – jeroen

+0

더 많은 보안을 위해 파일에 기록하고 싶습니다! 파일이 msql 데이터베이스보다 안전하다는 오해가 있습니까? @jeroen – John

+0

PHP와 함께 작동하는 많은 무료 오픈 소스 분석 도구가 훨씬 더 잘 수행 될 것입니다. – cgTag

답변

1
<?php 
$file = fopen("ip.txt","a"); 
$ip=$_SERVER['REMOTE_ADDR']; 
echo fwrite($file,$ip); 
fclose($file); 
?> 

봐.

Youve는 덮어 쓰기 모드 인 w 모드를 선택했습니다. 대신 a 모드로 시도하십시오 (추가)

6

변화가 "A"

W는 (이상) 기록 수단, 수단은 추가. 두 번째 매개 변수가 의미하는 무엇 manual

확인에

+0

죄송합니다. 미안하지만 너는 이미 여기에있다 는걸 몰랐다. +1 – cjds

1

데이터베이스 버전의 '장점'은 아무도 데이터를 볼 수 없다는 것입니다. neccesary 경우 .htaccess 파일을 사용하여 파일에 대한 액세스를 방지 할 수 있습니다

아파치 2.2

# Protect log.txt 
<Files ./inscription/log.txt> 
Order Allow,Deny 
Deny from all 
</Files> 

를 들어 아파치 2.4

# Protect log.txt 
<Files ./inscription/log.txt> 
Require all denied 
</Files>