Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator masterG am 02.10.2010 um 11:17:17 Uhr
Code in Codeblock verpackt. Bitte Formatierungshilfe ansehen.
GELÖST

Anpingen eines WEB PCs, dauert zu lange wenn nicht erreichbar

Frage Entwicklung PHP

Mitglied: kaktus

kaktus (Level 1) - Jetzt verbinden

02.10.2010, aktualisiert 04.10.2010, 3660 Aufrufe, 3 Kommentare

Hallo Forum, mir wurde hier schon oft geholfen, deshalb versuche ich es heute nochmals

Ich habe auf meiner Webseite einen PHP Script wie unen laufen. Er funktioniert soweit sehr gut, nur wenn xxxxx.dyndns.org nicht erreichbar ist, dann dauert das laden der Webseite sehr sehr lange, ca 30 Sekunden.
Das würde ich gerne auf 1 oder 2 Sekunden verkürzen.

Kurze Beschreibung:
Das script pingt eine Webadresse an, berechnet die Anwortzeit und gibt mir aus dem Logbuch (liegt auf einer anderen Adresse) die letzten drei Einträge zurück.

Beispiel:

01.
XXXXXX-L OFFLINE 01:00 - 07:00 MEZ/MESZ
01.
2010-09-28 18:19:51 Verifying I0RNK angelo 79.3.210.154 
02.
2010-09-28 18:19:56 Connect I0RNK angelo - 79.3.210.154 
03.
2010-09-28 18:20:07 Disconnect I0RNK Peer requested disconnect 
Frage 1: Wie könnte ich diese extrem lange Antwortzeit verkürzen.

Ich bin gerade am überlegen ob ich den Pingwert wirklich brauche.

Frage 2: Wie könnte man das Script kürzen, wenn man Ping nicht bräuchte?


01.
$call='xxxxxx'; 
02.
$host='xxxxxxx.dyndns.org'; 
03.
$port='81'; 
04.
     
05.
$starttime=microtime(); 
06.
$socket=@fsockopen($host,$port); 
07.
stream_set_timeout($socket, 2); 
08.
$endtime=microtime(); 
09.
                
10.
                 
11.
				if ($socket!=false) 
12.
13.
                        fclose($socket); 
14.
                        list($msec,$sec)=explode(' ',$starttime); 
15.
                        $starttime=(float)$msec+(float)$sec
16.
                        list($msec,$sec)=explode(' ',$endtime); 
17.
                        $endtime=(float)$msec+(float)$sec
18.
                        $pingtime=($endtime-$starttime)*1000; 
19.
20.
                 
21.
				else 
22.
23.
                        $pingtime=-1; 
24.
25.
                 
26.
				if ($pingtime!=-1) 
27.
28.
                        echo $call.'<b><font color="green"> ONLINE</font></b> 07:00 - 01:00 MEZ/MESZ | Ping '.round($pingtime,2).' ms'; 
29.
30.
                 
31.
				else 
32.
33.
                        echo $call.'<b><font color="red"> OFFLINE</font></b> 01:00 - 07:00 MEZ/MESZ'; 
34.
35.
                 
36.
				flush(); 
37.
				 
38.
echo '<br><br>'; 
39.
$file = file ('http://XXXXX.xxxx-xxxxx.de/ECHOLINK/QSOLog.txt'); 
40.
 
41.
$zeile = array_pop($file); 
42.
$zeile_1 = array_pop($file); 
43.
$zeile_2 = array_pop($file); 
44.
echo $zeile_2.'<br>'; 
45.
echo $zeile_1.'<br>'; 
46.
echo $zeile
47.
fclose($file);
Mitglied: EvilMoe
02.10.2010 um 11:03 Uhr
Vielleicht hilft dir das:
01.
# fsockopen ( string $hostname [, int $port= -1 [, int &$errno [, string &$errstr [, float $timeout= ini_get("default_socket_timeout") ]]]] ) 
02.
 
03.
 
04.
$socket=@fsockopen($host,$port,$errno, $errstr,5); //timeout von 5 sec. 
05.
 
06.
 
07.
 
Bitte warten ..
Mitglied: Arano
02.10.2010 um 11:06 Uhr
Hallo Kaktus,

das sollte einfach gehen, schau dir das Manual noch mal an - die Parameter

PHP-Manual - fsockopen

Gruß
Arano

Edit: Ich sollte den Fernseher mal verschrotten lassen - immer diese Ablenkung...
Bitte warten ..
Mitglied: kaktus
02.10.2010 um 11:54 Uhr
$errstr,5

Das war die Lösung, DANKE
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Heiß diskutierte Inhalte
Viren und Trojaner
gelöst Wie werde ich den Mist "fanli90" wieder los? (18)

Frage von Taumel zum Thema Viren und Trojaner ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (17)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...

Grafikkarten & Monitore
Neue Graifkkarte - kein Bild (10)

Frage von bestelitt zum Thema Grafikkarten & Monitore ...