Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Echo wyświetla się bez wywołania GET'a
Forum PHP.pl > Forum > PHP
lanceq
  1. if($_GET[save]=="do")
  2. $ip = 'TU IP';
  3. $port = 'TU PORT';
  4. $socket=@fsockopen($ip,$port,$errno,$errstr,2);
  5. if($socket==true)
  6. {
  7. $polecenie = "killall -HUP theforgottenserver";
  8. $stream = ssh2_exec($polaczenie, $polecenie);
  9. if($stream) {echo "Save zostal wykonany pomyslnie.";}
  10. }
  11. else
  12. {
  13. echo "<p class='failed'>
  14. <b>POLECENIE NIE ZOSTAŁO WYKONANE BO SERWER NIE JEST URUCHOMIONY.</p>";
  15. }


Witam, napisałem sobie taki właśnie o to skrypt i jest mały problem, bo nawet nie wywołuyjąc GET'a to co jest w elsie wyświetla się mimo to, jak zrobić aby się to wyświetliło dopiero jak wywołąm GET'a ?
pitu
  1. if($_GET[save]=="do")
  2. {
  3. $ip = 'TU IP';
  4. $port = 'TU PORT';
  5. $socket=@fsockopen($ip,$port,$errno,$errstr,2);
  6.  
  7. if($socket==true)
  8. {
  9. $polecenie = "killall -HUP theforgottenserver";
  10. $stream = ssh2_exec($polaczenie, $polecenie);
  11. if($stream)
  12. {
  13. echo "Save zostal wykonany pomyslnie.";
  14. }
  15. }
  16. else
  17. {
  18. echo "<p class='failed'>
  19. <b>POLECENIE NIE ZOSTAŁO WYKONANE BO SERWER NIE JEST URUCHOMIONY.</p>";
  20. }
  21. }
lanceq
Dzięki działa, zrobiłem jeszcze jeden skrypt tylko teraz odwrotnie, jeżeli port jest zajęty to wyświetla tylko echo, a jak port nie jest zajęty to wyświetla polecenie i echo ale niezbyt to działa bo ciągle wyświetla elsa nawet jak nie wykonam GET'a a po drugie nawet jak się wyświetli Błąd serwer już działa to serwer i tak się włącza, co jest źle?

  1. if($_GET[start]=="do")
  2. {
  3. $ip = 'XXX';
  4. $port = 'XXX';
  5. $socket=@fsockopen($ip,$port,$errno,$errstr,2);
  6.  
  7. if($socket==true)
  8. {
  9. {
  10. echo "<p class='errors'><b>Błąd!</b> Serwer już działa.</p>";
  11. }
  12. }
  13. else
  14.  
  15. $polecenie = "cd ".$sciezka."; ./start.sh";
  16. $stream = ssh2_exec($polaczenie, $polecenie);
  17. if($stream)
  18. {
  19. echo "<p class='success'><b>Sukces!</b> Start zostal wykonany pomyslnie.</p>";
  20. }
  21.  
  22.  
  23. }
Shido
Gubisz klamry.
  1. if($_GET[start]=="do")
  2. {
  3. $ip = 'XXX';
  4. $port = 'XXX';
  5. $socket=@fsockopen($ip,$port,$errno,$errstr,2);
  6.  
  7. if($socket==true)
  8. {
  9. echo "<p class='errors'><b>Błąd!</b> Serwer już działa.</p>";
  10. }
  11. else
  12. {
  13. $polecenie = "cd ".$sciezka."; ./start.sh";
  14. $stream = ssh2_exec($polaczenie, $polecenie);
  15. if($stream)
  16. {
  17. echo "<p class='success'><b>Sukces!</b> Start zostal wykonany pomyslnie.</p>";
  18. }
  19. }
  20. }

To co do ciągłego wykonywania elsa.
lanceq
Dzięki, daje pomógł ciągle mam problemy z tymi klamrami, jest jakiś poradnik gdzieś kiedy te klamry stawiać? Bardzo by mi się przydał.
!*!
Cytat(lanceq @ 6.07.2012, 14:49:22 ) *
Dzięki, daje pomógł ciągle mam problemy z tymi klamrami, jest jakiś poradnik gdzieś kiedy te klamry stawiać? Bardzo by mi się przydał.


Zawsze wstawiaj klamry.

  1. if()
  2. {
  3. //cos1
  4. }
  5. elseif()
  6. {
  7. //cos2
  8. }
  9. else
  10. {
  11. //cos3
  12. }


W instrukcjach warunkowych, nawet jeśli mają zwracać 1 warunek, to są one po prostu wygodne.
lanceq
I jeszcze jedno pytanie, te sprawdzanie portu niby jest ok, ale zanim silnik się uruchomi i ten port zacznie być zajęty minie minuta od zrobienia wget'a, jest coś takiego szybkiego co by uniemożliwiało uruchomienie tego procesu od razu jeżeli już jest taki sam uruchomiony? Bo robie panel i jak ktoś naciśnie przez przypadek drugi raz to silnik uruchamia się drugi raz co się wiąże z dwukrotnym zużyciem ramu a tego nie chce.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.