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
GELÖST

Manuelle Server Status Abfrage.

Frage Entwicklung PHP

Mitglied: Goldencreeper

Goldencreeper (Level 1) - Jetzt verbinden

08.08.2013 um 21:55 Uhr, 2979 Aufrufe, 12 Kommentare

Hallo liebe Administrator Community.
Ich habe mich Heute Regestriert da ich Hilfe brauche in sachen PhP.
Möchte etwas mehr in PhP machen und mir wurde dieses Forum Empfohlen.
In einigen Foren konnte mir nicht grade geholfen werden.
Deswegen Frage ich nun euch.
Also zu meiner Frage.
Ich möchte eine Status Abfrage machen die jedoch von Hand gecheckt werden muss.
Heisst also man gibt IP + Port ein und man bekommt einen Status.
Die Automatische Abfrage ist ja nicht sehr Schwer.
Habe mal Test weise ein Script gemacht das auch Funktioniert. (Fast)
Jedoch möchte ich nicht das man Port und IP einzeln eingibt sondern alles in 1. Feld.
Zu dem möchte ich noch eine Funktion hinzufügen die das ganze etwas schöner macht.
Und zwar mit AJAX bzw Javascript.
Wenn man auf den Check Button klickt möchte ich das eine .gif Grafik für 3-5 Sekunden angezeigt wird.
Danach wird der Status angezeigt.
Nur habe ich mit AJAX und Javascript noch nie was gemacht.
Eher was mit HTML und CSS.
Noch ein mängel gibt es bei meinem Script.
Ich habe es mit iFrame eingebunden was nicht schön aussieht.
Ich weiss man kanns mit CSS wegmachen aber warum schwer machen wenns auch leichter geht ;)
Ich füge einfach mal ein Bild hinzu.
9a08fbeb1c7a6d507d16cc15287ab6cb - Klicke auf das Bild, um es zu vergrößern
PS: Das Bild habe ich Schwarz gemacht damit niemand Werbung oder sonst was bekommt

Grüße Goldencreeper
Mitglied: flow.ryan
09.08.2013 um 08:45 Uhr
Hallo und willkommen,

für den ersten Punkt (alles im 1. Feld eingeben) kann ich dir folgende Funktion an die Hand geben:
http://www.php.net/manual/de/function.split.php

angenommen das Feld heißt $server und du trennst den Servernamen / IP und den Port durch einen Doppelpunkt. (z.B. example.com:80)

dann kannst du folgendermaßen damit arbeiten:

01.
<?php 
02.
$server = $_POST['server']; 
03.
 
04.
$server = split(":",$server); 
05.
 
06.
$serverName = $server[0]; 
07.
$serverPort = $server[1]; 
08.
 
09.
?>
In der Variable $serverName hättest du dann den Servernamen, in der Variable $serverPort den Port.

Um das nun mit Ajax zu machen bzw. mit jQuery hilft dir folgende Docu:
http://api.jquery.com/jQuery.post/

Relativ weit unten ist eine Demo und auch der dazugehörige Quellcode. Damit solltest du in der Lage sein, etwas zu basteln.

Gruß,
Florian.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 09.08.2013, aktualisiert 18.01.2014
Hallo Goldencreeper, Willkommen im Forum.
hier ein Beispiel:

HTML-Datei
(Hinweis: Der "Check" Button erscheint wenn die IP im richtigen Format eingegeben wurde)
01.
<html> 
02.
<head> 
03.
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
04.
<script type="text/javascript"> 
05.
function checkIPSyntax(){ 
06.
  var regex = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}$/; 
07.
  if (regex.test($('#txtIP').val())){ 
08.
   	$('#txtIP').css('background-color', 'green');  
09.
   	$('#txtIP').css('color', 'white');  
10.
	$('#btnCheck').show(); 
11.
  }else{ 
12.
  	$('#txtIP').css('background-color', 'red');  
13.
   	$('#txtIP').css('color', 'white');  
14.
	$('#btnCheck').hide(); 
15.
16.
17.
 
18.
function checkServer(){ 
19.
	$('#meldung').html('<img src="http://de.d3rawr.com/images/waiting.gif" width=32 height=32 />'); 
20.
	var request = $.post("check.php",{ip : $('#txtIP').val()}); 
21.
	request.done(function(data){ 
22.
		$('#meldung').html(data);	 
23.
	}); 
24.
	 
25.
26.
</script> 
27.
</head> 
28.
 
29.
<body> 
30.
<div>Bitte IP und Port in folgendem Format eingeben (10.10.20.1:80)</div> 
31.
<input type="text" id="txtIP" onKeyUp="checkIPSyntax();"/> 
32.
<input type="button" id="btnCheck" onClick="checkServer();" style="display:none" value="Check"> 
33.
<div id="meldung"></div> 
34.
</body> 
35.
</html>
und das passende Beispiel PHP-Script (zum testen check.php nennen) das den Server "überprüft" und eine Rückmeldung schickt.(Als Demo gibt es nur eine feste Meldung aus, die Prüf-Funktion musst du selber implementieren)

PHP-Script
01.
<?php 
02.
if (isset($_POST['ip']) && $_POST['ip'] != ""){ 
03.
	sleep(2); 
04.
	$arIP = split(":",$_POST["ip"]); 
05.
	echo '<p style="color:green">IP: ' . $arIP[0] . ' mit Port: ' . $arIP[1] . ' is UP</p>'
06.
} else
07.
	echo "No valid IP specified"
08.
09.
?>
Grüße Uwe
Bitte warten ..
Mitglied: Goldencreeper
09.08.2013 um 15:06 Uhr
Danke für eure schnelle Hilfe.
Das Script funktioniert Super.
Aber ich hötte noch ne Frage.
Wenn ich den Port 25565 (Minecraft Standart Port) eingebe wird das Feld Rot angezeigt.
Kann man die Ports irgentwie Freischalten bzw allgemein irgentwo einstellen?
Würde mich über eure Hilfe Freuen ;)

Grüße Goldencreeper
Bitte warten ..
Mitglied: colinardo
LÖSUNG 09.08.2013, aktualisiert 18.01.2014
Sorry da war noch ein Fehler im RegEx(Zeile 6), ist korrigiert.
Bitte warten ..
Mitglied: Goldencreeper
09.08.2013 um 15:44 Uhr
Danke das du es Korrigiert hast aber irgentwie gehts immer noch nicht.
9e637ec852ac5f6f36c7706b7c283e24 - Klicke auf das Bild, um es zu vergrößern
Habe die IP Zensiert.

Grüße Goldencreeper.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 09.08.2013, aktualisiert 18.01.2014
korrigiere Zeile 6 im HTML-File so:
01.
var regex = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}$/; 
Bitte warten ..
Mitglied: Goldencreeper
09.08.2013 um 17:49 Uhr
Ok vielen Dank für eure Hilfe.
Das Script funktioniert zwar aber habe noch ne Frage.
Ich würde den Check button gerne die ganze zeit eingeblendet haben.
Nun frage ich wo ist der Code in der Php datei (Schätze mal das es in der php datei drin ist. Html kann ja nur darstellen)

Würde mich Freuen wenn mir jemand die letzte Frage beantworten kann ;)
Bitte warten ..
Mitglied: Goldencreeper
09.08.2013, aktualisiert um 18:12 Uhr
Zitat von Goldencreeper:
Ok vielen Dank für eure Hilfe.
Das Script funktioniert zwar aber habe noch ne Frage.
Ich würde den Check button gerne die ganze zeit eingeblendet haben.
Würde mich Freuen wenn mir jemand die letzte Frage beantworten kann ;)

Hötte dazu noch ne Frage.
Kann ich das auch einfach für Teamspeak nutzen? Teamspeak benutzt ja udp.

Danke im Voraus.

Liebe Grüße Goldencreeper
Bitte warten ..
Mitglied: colinardo
LÖSUNG 09.08.2013, aktualisiert 18.01.2014
Zitat von Goldencreeper:
Ok vielen Dank für eure Hilfe.
Das Script funktioniert zwar aber habe noch ne Frage.
Ich würde den Check button gerne die ganze zeit eingeblendet haben.

Zeile 32 in der HTML-Datei so ändern:
01.
<input type="button" id="btnCheck" onClick="checkServer();" value="Check"> 
und Zeile 10 und Zeile 14 löschen

Nun frage ich wo ist der Code in der Php datei (Schätze mal das es in der php datei drin ist. Html kann ja nur darstellen)
Quatsch .. mit Sauce

Grüße Uwe
Bitte warten ..
Mitglied: Goldencreeper
09.08.2013 um 22:48 Uhr
Okay vielen Dank für deine Hilfe habe noch ein paar sachen verändert ;)
Jetz funktioniert es so wie ich es mir vorgestellt habe.
Danke.
Echt nettes Forum :D
Bitte warten ..
Mitglied: colinardo
10.08.2013 um 08:04 Uhr
Bitte den Beitrag noch als gelöst markieren. Danke.
Bitte warten ..
Mitglied: Goldencreeper
10.08.2013 um 13:17 Uhr
Ah stimmt da war noch was habe immer vergessen was das war ^^
Danke

Grüße Goldencreeper
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(3)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Datenbanken
Abfrage letzter Status

Frage von tsunami zum Thema Datenbanken ...

VB for Applications
gelöst VBA Excel Recordset - Abfrage auf SQL-Server (4)

Frage von Aximand zum Thema VB for Applications ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...