Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Zaawansowany switch
Forum PHP.pl > Forum > Przedszkole
murawa
  1. <?php
  2. if ($packet['type'] == GG_RECV_MSG) 
  3.  {
  4. switch($packet['msg']){
  5.  case 'disconnect now': 
  6. $gg->changeStatus(GG_STATUS_INVISIBLE);
  7. break;
  8.  case 'connect now': 
  9. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, 'offline');
  10. break;
  11.  case "status($status)":
  12. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, "$status");
  13. break;
  14.  default: 
  15. $gg->sendMessage($packet['sender'], "$message");  
  16.  }
  17.  
  18. }
  19. ?>


Dlaczego nie działa status oraz jak to zmienić żeby działało ?

Pomoże ktoś ?
yaotzin
status to jakaś funkcja questionmark.gif
jeśli tak to w ten sposób nie zadziała :/
flv
  1. <?php
  2. if ($packet['type'] == GG_RECV_MSG) 
  3.  {
  4. switch($packet['msg']){
  5.  case 'disconnect now': 
  6. $gg->changeStatus(GG_STATUS_INVISIBLE);
  7. break;
  8.  case 'connect now': 
  9. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, 'offline');
  10. break;
  11.  case status($status):
  12. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, "$status");
  13. break;
  14.  default: 
  15. $gg->sendMessage($packet['sender'], "$message");  
  16.  }
  17.  
  18. }
  19. ?>


---
Do wstawiania kodu na forum służą odpowiednie
tagi BB Code([php]). Tym razem poprawiłem, ale
na przyszłość proszę o tym pamiętać.
---
~strife
murawa
status($status) musi być zdeklarowana wcześniej jako funkcja ?
flv
To chyba oczywiste? no i co logiczne musi zwracać jakąś wartość jeśli ma być sprawdzana.
murawa
  1. <?php
  2. if ($packet['type'] == GG_RECV_MSG) 
  3.  {
  4. switch($packet['msg']){
  5.  case 'disconnect now': 
  6. $gg->changeStatus(GG_STATUS_INVISIBLE);
  7. break;
  8.  case 'connect now': 
  9. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, 'offline');
  10. break; 
  11. case 'off':
  12. $gg->disconnect('Server Disconnect');
  13. case "s/$status":
  14. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, "$status");
  15. break;
  16.  default: 
  17. $gg->sendMessage($packet['sender'], "$message");  
  18.  }
  19.  
  20. }
  21. ?>

z funkcji zmieniłem na s/$status dlaczego nadal nie działa?


Jest mi wstanie ktoś pomóc ?
mrjozo
Może tutaj masz mieć po prostu:

  1. <?php
  2. case 'status':
  3. $gg->changeStatus(GG_STATUS_AVAILABLE_DESCR, "$status");
  4. break;
  5. ?>


Jeśli nie działa to przy default dopisz:
  1. <?php
  2. default: 
  3. echo $packet['msg']; //i zobacz co sie wyswietla jesli zmienia sie status, potem to nalezy wstawic do c
    ase
  4. $gg->sendMessage($packet['sender'], "$message")
  5. ?>
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.