---
title: "Ping script?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/16118-ping-script"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Papa Deoo"
published: "2001-09-17T09:48:00.000Z"
updated: "2001-09-20T18:54:00.000Z"
replies: 12
views: 401
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/16118-ping-script"
---

# Ping script?

## #1 — Papa Deoo, 2001-09-17T09:48Z

Hej! Bara undrar om det finns någon som har ett script som pingar en server.

Mvh

Peter

Permalänk: https://www.webforum.nu/p/16118

## #2 — 2bas, 2001-09-17T15:43Z

Om du ligger på linux/unix server, så borde det funka med 

```
<?
$output=system("ping webforum.nu");
echo $output;
?>
```

Permalänk: https://www.webforum.nu/p/320663

## #3 — peronet, 2001-09-18T08:04Z

Har ett litet problem här va... 

Jag kör följande kod, och jag vill att enbart $data skall skrivas ut, någon som vet hur man gör för att inte skriva ut resten på skärmen, alltså det som genereras av system() ?

\<?PHP 
$command="ping lunarstorm.se -t  ttl -c1 &#0124; tail -1 &#0124; awk '{print $4 \\" \\" $5}'";
$output = system($command);
system("exit(0)");
$data = str_replace('PING', '', $output);
echo "DATA: $data";
?\>

Permalänk: https://www.webforum.nu/p/320664

## #4 — jed, 2001-09-20T14:19Z

system() skriver ut allt den får på skärmen, byt ut det mot exec() istället, den skriver inte ut något.

Läs mer på <http://www.php.net/manual/en/function.exec.php> 

Här behöver du ju inte tänka på det, men om du ska anända nåt som en in^H^Hanvändare matar in, så glm inte att använda escapeshellcmd() 

//Jed

Permalänk: https://www.webforum.nu/p/320665

## #5 — FlashX, 2001-09-20T15:19Z

Så här kollar jag datorerna i vårt i nät.
Hämtar förvisso IP:et från en MySQl-db men det kan ju enkelt ändras.

```
$datorer = mysql_query("SELECT * FROM computers ORDER BY computername", DB);
while ($dator = mysql_fetch_array($datorer)) {

exec("ping -c 2 $dator[ip]", $data, $value);
if ($value == 0) {
	print ("network_on.gif\n"); }
	else {
	print ("network_off.gif\n"); }
}
```

2:an anger antalet försök innan det betraktas som en timeout ifall maskinen inte är igång. Tar lite tid om det är flera maskiner som time'ar ut...

\[Redigerat av FlashX den 20 sep 2001\]

Permalänk: https://www.webforum.nu/p/320666

## #6 — HDJHSKGDKJHSD, 2001-09-20T16:05Z

hej.

Hur gör man om detta script så att den bara pingar 1 dator?
alltså utan mysql.. (jag är väldigt ny på php)  tack!

Permalänk: https://www.webforum.nu/p/320667

## #7 — SPiN, 2001-09-20T16:57Z

```
exec("ping -c 2 [b]datornamn eller IP här[/b]", $data, $value);
if ($value == 0) {
&nbsp; &nbsp; echo "uppe";
}
else {
&nbsp; &nbsp; echo "nere";
}
```

Permalänk: https://www.webforum.nu/p/320668

## #8 — HDJHSKGDKJHSD, 2001-09-20T17:12Z

det fungerar inte :(

"Parse Error" blir det...bör tilläggas att jag använder Mac OS X server 2.0.

vad betyder egentligen exec("ping -c 2 127.0.0.1", $data, $value);

Vad menas med $data och $value?

Permalänk: https://www.webforum.nu/p/320669

## #9 — 2bas, 2001-09-20T18:36Z

> vad betyder egentligen exec("ping -c 2 127.0.0.1", $data, $value);

Betyder kör kommandot/programmet " ping -c 2 127.0.0.1 "

ping är ett unix kommando för att skicka ett litet paket till en server och se om man får svar.
Ingen aning om Macen har ett ping kommando. 

Som det är skrivet ovan, så fylls arrayen $data med utdatan från kommandot och $value talar om ifall kommandot returnerade OK. I det här fallet om servern svarade.

Permalänk: https://www.webforum.nu/p/320670

## #10 — 2bas, 2001-09-20T18:44Z

Kollade lite. Och det verkar som Mac OS X har ping. <http://www.resexcellence.com/hack_html_00/10-04-00.shtml>

Permalänk: https://www.webforum.nu/p/320671

## #11 — HDJHSKGDKJHSD, 2001-09-20T18:46Z

ehh, ja...självklart har Mac OS X ping... det är inte det som är problemet, skulle jag tro......ska undersöka

Permalänk: https://www.webforum.nu/p/320672

## #12 — HDJHSKGDKJHSD, 2001-09-20T18:51Z

Parse error: parse error in /Library/WebServer/Documents/ping.php on line 1

får jag nu... med exakt denna kod:
\<?
exec("ping -c 2 192.168.10.80", $data, $value);
if ($value == 0) {
    echo "uppe";
}
else {
    echo "nere";
}
?\>

Permalänk: https://www.webforum.nu/p/320673

## #13 — AndersN, 2001-09-20T18:54Z

Jag har ett pingscrpt i shell (.sh)
hör av dig om du är intresserad av det.

/ Anders

Permalänk: https://www.webforum.nu/p/320674

---

Tråden på webben: https://www.webforum.nu/amne/php/16118-ping-script
