SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 06.03.2010, 13:05:18
M*I*B M*I*B ist offline
Anfänger
 
Registriert seit: Jan 2006
Beiträge: 10
Problem mit Vergleichen einer IP

Hallo liebe Leser/innen,

ich habe da ein ganz merkwürdiges Problem, an dem ich mir die Zähne ausbeisse :(

Hintergrund:
Auf einem WIN- Server starte ich über SRVANY ein Script mit php-win. So weit, so gut.

Dieses Script soll im Grunde nichts anderes machen, als meine lokale IP via DynDNS zu überprüfen und bei Änderungen die neue IP in eine Datei schreiben (die per Include in die httpd.conf eingebunden ist) und den Apache neu starten. Auch das klappt so weit.

Was ums verrecken nicht geht ist, das ich, wenn der Fall eingetreten ist, diesen Vorgang in ein Logfile schreibe mit der alten und der neuen IP.

Egal was ich anstelle, die alte IP ändert sich nie?!?!?

Hier mal die einzelnen Dateien in der Hoffnung, das mir mal jemand auf die Sprünge helfen kann:

Das Script:
Code:
<?php

for (;;) {

	$tmp_ip = array(); $zeilen = array();
	$new_ip = gethostbyname('mein.selfip.net');

	if (file_exists('lan_ip.conf') && strlen($old_ip) < 7) {
		$zeilen = stripcslashes(file_get_contents('lan_ip.conf'));
		$tmp_ip = explode('"', $zeilen);
		$old_ip = $tmp_ip[1];
	}

	if ($old_ip != $new_ip) {
		$file = fOpen('lan_ip.conf' , 'w');
		fWrite($file , '# Generiert am '.date('d.m.Y').' um '.date('H:i:s')."\r\n");
		fWrite($file , 'SetEnvIfNoCase Remote_Addr "'.$new_ip.'" dontlog');
		fClose($file); unset($file);
		
		exec ('"C:\Program Files (x86)\Apache\bin\httpd.exe" -k restart', $status, $return);
		If ($return == '0') {
			$apache = 'Apache korrekt neu gestartet';
		} else {
			$apache = 'ERROR : '.$return;
		}
		
		$file = fOpen('lan_ip.log' , 'a');
		fWrite($file, 'date : '.date('Y-m-d - H:i:s').' | Old IP : '.$old_ip.' | New IP : '.$new_ip.' | '.$apache."\r\n");
		fClose($file); unset($file);
		
		$old_ip = $new_ip;
	}

	sleep(60);
}

?>
Die korrekt geschriebene lan_ip.conf:
Code:
# Generiert am 06.03.2010 um 13:02:43
SetEnvIfNoCase Remote_Addr "82.82.127.4" dontlog
Das immer falsch geschriebene Logfile:
Code:
date : 2010-03-06 - 13:01:49 | Old IP : 188.108.244.135 | New IP : 82.82.127.4 | Apache korrekt neu gestartet
date : 2010-03-06 - 13:02:46 | Old IP : 188.108.244.135 | New IP : 82.82.127.4 | Apache korrekt neu gestartet
__________________
... LG aus Kalledonien ...
Micha


Wir, die guten Willens sind, geführt von Ahnungslosen, versuchen für die Undankbaren das Unmögliche zu vollbringen. Wir haben schon soviel mit sowenig solange versucht, dass wir jetzt qualifiziert sind, fast alles mit nichts zu bewältigen.
Mit Zitat antworten
  #2  
Alt 06.03.2010, 14:22:12
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Problem mit Vergleichen einer IP

PHP-Code:
    if (file_exists('lan_ip.conf') && strlen($old_ip) < 7) {
        
$zeilen stripcslashes(file_get_contents('lan_ip.conf'));
        
$tmp_ip explode('"'$zeilen);
        
$old_ip $tmp_ip[1];
    } 
Wo kommt $old_ip her?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 06.03.2010, 14:45:21
M*I*B M*I*B ist offline
Anfänger
 
Registriert seit: Jan 2006
Beiträge: 10
AW: Problem mit Vergleichen einer IP

... beim ersten Start ist $old_ip NULL, also auch kürzer 7 Zeichen. Wenn die conf existiert, wird im Anschluss daran die $old_ip aus der Datei gefüllt. Wenn nicht, dann läuft auch die nächste IF durch, da in dem Fall ja auch $old_ip ungleich $new_ip ist.
Zum Schluss wird dann $old_ip auf die aktuelle IP gesetzt, damit nicht ständig Dateizugriffe entstehen.

Is doch richtig, oder nich?
__________________
... LG aus Kalledonien ...
Micha


Wir, die guten Willens sind, geführt von Ahnungslosen, versuchen für die Undankbaren das Unmögliche zu vollbringen. Wir haben schon soviel mit sowenig solange versucht, dass wir jetzt qualifiziert sind, fast alles mit nichts zu bewältigen.
Mit Zitat antworten
  #4  
Alt 06.03.2010, 18:41:25
M*I*B M*I*B ist offline
Anfänger
 
Registriert seit: Jan 2006
Beiträge: 10
AW: Problem mit Vergleichen einer IP

... Problem gelöst ;)

@vt1816: Danke! Du hast mich auf die richtige Spur gebracht...

Wenn php-win als Dienst läuft, schreibt er offensichtlich, zumindest bei mir, nichts in das ErrorLog *grummel* Da bin ich erst drauf gekommen, weil ich zu faul war, ständig den Dienst neu zu starten und der Einfachheit halber das Script im CMD- Fenster direkt habe mit php.exe laufen lassen. Dabei fielen dann zwei Dinge auf:
1.
Beim ersten Start ist $old_ip noch gar nicht definiert und somit läuft PHP dann auf einen entsprechenden Fehler *DuckUndWech*
2.
Im Gegensatz zu php.exe scheint php-win.exe seine Sachen nicht im Verzeichnis des laufenden Scriptes zu suchen / zu schreiben, sondern sonst wo; ich habe gleichnamige lan_ip.log an verschiedenen Stellen auf der Platte gefunden (Bahnhof Kofferklau'n?!). Nach Angabe eines Pfades an den entsprechenden Stellen klappt das nun.
__________________
... LG aus Kalledonien ...
Micha


Wir, die guten Willens sind, geführt von Ahnungslosen, versuchen für die Undankbaren das Unmögliche zu vollbringen. Wir haben schon soviel mit sowenig solange versucht, dass wir jetzt qualifiziert sind, fast alles mit nichts zu bewältigen.
Mit Zitat antworten
  #5  
Alt 06.03.2010, 20:38:35
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Problem mit Vergleichen einer IP

Zitat:
Zitat von M*I*B Beitrag anzeigen
... Problem gelöst ;)

@vt1816: Danke! Du hast mich auf die richtige Spur gebracht...
Dafür gibt es diese Community ...
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit MySQL in Typo3-CMS yamukud MySQLi/PDO/(MySQL) 0 09.10.2009 13:21:18
Subquery Problem (Verständnis?) newgame MySQLi/PDO/(MySQL) 1 29.05.2009 22:01:27
Upload von Fotos, die in eine DB eingetragen werden sollen. Problem 2 jf-flasher PHP Grundlagen 2 01.02.2009 17:20:41
Problem mit Lokalisierung eines SESSION - Problems Fabian85 PHP für Fortgeschrittene und Experten 5 03.10.2005 20:17:54
mysql und php problem schmidt PHP für Fortgeschrittene und Experten 9 31.10.2003 18:05:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:44:15 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt