[Php] script geeft error, code is correct *

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Icetree
  • Registratie: November 2001
  • Laatst online: 03-04-2022
Hoi,

als ik het volgende script probeer te laden op mijn linux machine met apache en php krijg ik de volgende fout melding:

Parse error: parse error, expecting `')'' in /var/www/html/index.phpon line 8

dit is her script :

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<HTML>
<TITLE>Welkom</TITLE>
<BODY>

<?php 
// Pc's die worden gechecked... 
$stations = array (
    "Pc1"        => "192.168.0.1", 
    "Pc2"        => "192.168.0.2", 
    "Pc3"        => "192.168.0.3", 
    "Pc4"        => "192.168.0.4", 
    "PC5"        => "192.168.0.5" 
); 
    echo "<h3>Wie is online?</h3> 
        <table width='100%' border='0' cellpadding='5' cellspacing='0'>\n 
        <tr> 
            <td width='33%'><b>Hostname</b></td>\n 
            <td width='33%'><b>Host ip</b></td>\n 
            <td width='33%'><b>Status</b></td></tr>\n"; 
    while (list($host, $ip) = each($stations)) { 
        system("ping -c1 -w1 $ip > /dev/null", $result); 
    echo "<tr><td>$host</td>\n
        <td>$ip</td>\n"; 
    if (!$result) { 
        echo "<td><font color='green'><b> Online </b></font></td>\n"; 
        } 
    else { 
        echo "<td><font color='red'><b> Offline </b></font></td>\n"; 
        } 
    echo "</tr>\n"; 
    } 
echo "</table>\n"; 
?>

</BODY>
</HTML>


kan iemand mij uitleggen hoe ik dit moet veranderen zodat het werkt ?????

[ Voor 27% gewijzigd door drm op 09-01-2003 17:41 . Reden: php tags ]


Acties:
  • 0 Henk 'm!

  • johnny7
  • Registratie: November 2000
  • Laatst online: 07-11-2023
Zou je de volgende keer de code tussen php tags kunnen zetten?
Het lijkt fout te gaan bij de constructie van je stations array...

Acties:
  • 0 Henk 'm!

Verwijderd

hmz, ik heb geen verstand van PHP, maar vond het idee wel leuk.
Dus heb het scriptje bij mij ff neergezet, en het werkt gewoon.
Zonder aanpassingen !!

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Welke php versie draai je? Als ik 't zo zie lijkt 't me correcte code.

offtopic:
let volgende keer zelf even op de php tags

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

Op mijn pc'tje (win2k, apache2, php4.2.3) no problemo.

Acties:
  • 0 Henk 'm!

  • Mafioso
  • Registratie: November 2000
  • Laatst online: 17-09 20:33
Erg raar dat hij een parse error geeft, is het bestand wel goed geupload? Het zou nog kunnen zijn dat hij een stuk mist, en daardoor die parse error geeft, hoewel dat natuurlijk wel erg onwaarschijnlijk is.

Acties:
  • 0 Henk 'm!

  • Icetree
  • Registratie: November 2001
  • Laatst online: 03-04-2022
ik draai op dit moment mandrake 9 maar de php versie kan ik zo snel niet op zoeken maar ik installeer vanavond ff red hat 8 en gelijk ff de niewste php, dus dan zal die wel werken als ie het al bij meerdere mensen doet.

Acties:
  • 0 Henk 'm!

  • We Are Borg
  • Registratie: April 2000
  • Laatst online: 13:26

We Are Borg

Moderator Wonen & Mobiliteit / General Chat
Ligt aan pc (software) en niet aan script, want script doet het prima :)

Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

cybersnow schreef op 09 januari 2003 @ 18:19:
ik draai op dit moment mandrake 9 maar de php versie kan ik zo snel niet op zoeken maar ik installeer vanavond ff red hat 8 en gelijk ff de niewste php, dus dan zal die wel werken als ie het al bij meerdere mensen doet.
makkelijkste manier om je versie te achterhalen is met phpinfo() ;)

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Erkens:
makkelijkste manier om je versie te achterhalen is met phpinfo() ;)

Ech nie!!! http://www.php.net/phpversion :P

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

hmm ach whatever, resultaat is hetzelfde :P
hoewel phpinfo minder typwerk is:
PHP:
1
<? phpinfo(); ?>


PHP:
1
<? echo phpversion(); ?>


:P

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

:D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

Erkens schreef op 09 januari 2003 @ 18:36:
[...]

hmm ach whatever, resultaat is hetzelfde :P
hoewel phpinfo minder typwerk is:
PHP:
1
<? phpinfo(); ?>


PHP:
1
<? echo phpversion(); ?>


:P
Maar het duurt langer voordat een phpinfo() op je scherm staat dan een phpversion()
:)

Acties:
  • 0 Henk 'm!

  • gday
  • Registratie: Oktober 2000
  • Laatst online: 02:30

gday

TENACIOUS D TIME!!!

Verwijderd schreef op 09 January 2003 @ 18:54:
[...]

Maar het duurt langer voordat een phpinfo() op je scherm staat dan een phpversion()
:)
sneller != makkelijker :)

ingen vill veta var du köpt din tröja


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Verwijderd schreef op 09 januari 2003 @ 18:54:
[...]

Maar het duurt langer voordat een phpinfo() op je scherm staat dan een phpversion()
:)
offtopic:
ik weet niet wat voor'n server jij hebt, maar bij mij maakt het geen reet uit :P
net alsof die paar micro seconden uitmaken ;)

Acties:
  • 0 Henk 'm!

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Erkens schreef op 09 januari 2003 @ 19:54:
offtopic:
ik weet niet wat voor'n server jij hebt, maar bij mij maakt het geen reet uit :P
net alsof die paar micro seconden uitmaken ;)

Mjah, nu nog de HTML die naar de client gaat, die scheelt toch wel marginaal tov phpversion(); en dat heeft niets met de server te maken :)

Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Glimi schreef op 09 januari 2003 @ 20:06:

[...]

Mjah, nu nog de HTML die naar de client gaat, die scheelt toch wel marginaal tov phpversion(); en dat heeft niets met de server te maken :)
laatste wat ik hierover zeg: boeie, als je de versie maar weet ;)

Acties:
  • 0 Henk 'm!

Verwijderd

gday schreef op 09 januari 2003 @ 19:22:
[...]


sneller != makkelijker :)
maar niet altijd even effectief (sjutwoord) 8)7 maar in dit geval wel :)

trouwens de code werkt ook bij mij (Win98 & XP Apache ?? en PHP (ena laaste versie ofzo)

[ Voor 4% gewijzigd door Verwijderd op 09-01-2003 22:26 ]


Acties:
  • 0 Henk 'm!

  • P.B.
  • Registratie: Juli 2001
  • Niet online
doe eens <? ipv <?php :?

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Heb je het script dmv ftp geupload?
Zoja, heb je dat dan in text-mode gedaan?

Acties:
  • 0 Henk 'm!

Verwijderd

ACM schreef op 09 January 2003 @ 22:40:
Heb je het script dmv ftp geupload?
Zoja, heb je dat dan in text-mode gedaan?
Doet me inderdaad denken aan de windows newlines..

Voor school maakte ik wat thuis en op school ging de compiler toch over zijn nek op elke regel.. was dus het verhaal met het verschil tussen unix en windows newlines....

Acties:
  • 0 Henk 'm!

  • beeman
  • Registratie: Februari 2002
  • Laatst online: 02-07-2022
Bij mij (WinXP Pro, Apache 1.3.x, PHP 4.20) moest ik parameters van de ping opdracht veranderen voordat het werkte.

Nadat ik regel 21 (van het origineel) had veranderd in de onderstaande code werkte het wel.
PHP:
1
system("ping -n 1 -w 1 $ip > null", $result);



Leuk scriptje trouwens :)

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

maar voordat je het veranderde kreeg je vast geen parse error, of wel?

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

Hij vraagt om een sluithaakje na de eerste value van je array. Misschien werkt het als je de array vooraf al declareert?
Dus op regel 6:
code:
1
$stations[5];

Acties:
  • 0 Henk 'm!

  • PijnJoh
  • Registratie: Oktober 1999
  • Laatst online: 07-08 17:22
Het orginele script werkt niet bij mij (WIN2000, IIS en laatste versie PHP)! Na de verandering van de PING doet ie wel iets, maar de SYSTEM function call retourneert enkel een 0. De systemen zijn volgens het script altijd online! Hoe kan dat?

De PING:

...
while (list($host, $ip) = each($stations))
{
system("ping -n 1 -w 1 $ip > NULL", $result);
echo "<tr><td>$host</td>\n<td>$ip</td>\n";
// if (!$result)
// {
// echo "<td><font color='green'><b> Online </b></font></td>\n";
// }
// else
// {
// echo "<td><font color='red'><b> Offline </b></font></td>\n";
// }
echo "<td>$result</td>";
echo "</tr>\n";
}
...

Hoe kan het bij jullie Windows gebruikers dan wel werken? Heeft iemand hier een verklaring voor?

Sjesus...


Acties:
  • 0 Henk 'm!

  • Squall-sX
  • Registratie: April 2002
  • Laatst online: 26-05 19:35
Bij mij gaf het originele script ook geen fout, maar het werkte niet. Alle pc's waren altijd online. Heb het scriptje dus ff verbeterd zodat het zou moeten werken (bij mij doet em het nu toch)

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<HTML> 
<TITLE>Welkom</TITLE> 
<BODY> 
<?php  

//link naar het gecreëerde null bestand
$linktofile = "http://localhost/null";

// Pc's die worden gechecked... 
$stations = array ( 
    "Pc1"        => "192.168.0.1",  
    "Pc2"        => "192.168.0.2",  
    "Pc3"        => "192.168.0.3",  
    "Pc4"        => "192.168.0.4",  
    "PC5"        => "192.168.0.5"  
); 
 
echo "<h3>Wie is online?</h3> 
      <table width='100%' border='0' cellpadding='5' cellspacing='0'>\n 
      <tr> 
          <td width='33%'><b>Hostname</b></td>\n 
          <td width='33%'><b>Host ip</b></td>\n 
          <td width='33%'><b>Status</b></td></tr>\n";  
      while (list($host, $ip) = each($stations)) {  
        system("ping -n 1 -w 1 $ip > null", $result);  
      echo "<tr><td>$host</td>\n 
        <td>$ip</td>\n";  
  
    $file = fopen ($linktofile, "r");
    if (!$file) {
       echo "<p>Unable to open remote file.\n";
           exit;
    }

    $switch = 0;

    while (!feof ($file) && $switch == 0) {
           $line = fgets ($file, 1024);
           if (eregi ("(100% verlies)", $line)) {
              echo "<td><font color='red'><b> Offline </b></font></td>\n";
              $switch = 1;
       }
           else {
          if (eregi ("(0% verlies)", $line)) {
             echo "<td><font color='green'><b> Online </b></font></td>\n";  
             $switch = 1;
          }
       }
    }
    fclose($file);
 
     echo "</tr>\n";  
     }  
echo "</table>\n"; 
?>

</BODY> 
</HTML> 


Het kan misschien simpel, maar ik ben nie simpel dus hoeft dat ook niet altijd :)

PS: sorry van de slechte plaatsing van de accolades en zo bij die else op het einde, maar kon er spijtig genoeg niks aan doen.

Acties:
  • 0 Henk 'm!

  • radial
  • Registratie: Augustus 2000
  • Laatst online: 17-09 21:35

radial

Watch out

win2k met php 4.2.2

PHP:
1
2
3
4
$time = exec ("ping  $ip1");
$average = explode(',', $time);
list($a,$b,$c,$d,$e) = explode(" ", $average[2]);
echo $e;


dit gebruik ik voor pingresultaat, waarbij $ip=een ipadres

20xSF170s - ozo


Acties:
  • 0 Henk 'm!

  • EnnaN
  • Registratie: September 2002
  • Laatst online: 12-09 11:42

EnnaN

Toys in the attic

ligt het nou aan mij of niet: die ping -w optie mag nie op mijn servertje....
btw-dat die eerste script altijd online is, komt dat niet omdat je gewoon kijkt of er een $result true is...en waarom zou als een ping niet terugkomt er $result==fals van komen?

sig


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

EnnaN schreef op 11 januari 2003 @ 13:22:
ligt het nou aan mij of niet: die ping -w optie mag nie op mijn servertje....
is van windows:
-w time-out Time-out in milliseconden voor ieder antwoord.

linux moet je -i gebruiken geloof ik

Acties:
  • 0 Henk 'm!

  • Squall-sX
  • Registratie: April 2002
  • Laatst online: 26-05 19:35
de result is false als er een fout is in de commandoregel geloof ik, daarom dat je altijd 1 krijgt als het commando juist is en dus altijd één van de twee krijgt. Hetgene dat ik gepost heb moet werken op een win2K machine.
Pagina: 1