Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> if wartość X w mysql=1 to include plik.php
adek-
post
Post #1





Grupa: Zarejestrowani
Postów: 124
Pomógł: 2
Dołączył: 19.04.2007
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Chłopaki zrobiłem sobie w php proste sprawdzanie warunku, gdzie jeśli się spełni to użytkownik dostaje monit na ekranie -include popup.php, ale jak to w php bywa, trzeba odświerzyć stronę co załatwiłem wpisem do meta
  1. <meta http-equiv="refresh" content="200">

co nie bardzo mi leży, bo strona się odświeża bardzo często i co prawda tylko przy 20 użytkownikach jakoś nie męczy serwera, ale bardzo przeszkadza ;/
Szukałem rozwiązań w AJAXIE na którym się totalnie nie znam i poznjandywałem tutoriale, które robią to wszystko za pomocą GET,POST itd, a ja mam tylko sprawdzenie wartości MySQL nakierujcie mnie proszę na jakiś wątek jak by mógł wyglądać taki request poniżej w ajaxie?
  1. <?php // #### komunikat dla zalogowanego użytkownika gdy info=1 -zmieniono wartość popup wyskoczy
  2.  
  3. if (isset($_SESSION['login']) && !empty($_SESSION['login'])) {
  4. $wynik=mysql_query("SELECT * FROM $tabela WHERE login='{$_SESSION['login']}' and info=1");
  5. if (mysql_num_rows($wynik) == 1) {
  6. include('popup.php');
  7. } else {?>
  8. <?php }} ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
amii
post
Post #2





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

Ostrzeżenie: (0%)
-----


1. To powinno być dokładnie coś takiego:
[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. setInterval("load", 20000); //wywołanie co 200 sek.
  3. });
[JAVASCRIPT] pobierz, plaintext

Load umieszczasz w tym samym pliku. Kod php w/g mnie powinien wyglądać tak:
  1. $login = $_POST['login'];
  2. $wynik=mysql_query("SELECT * FROM $tabela WHERE login='$login' and info=1");
  3. if (mysql_num_rows($wynik) == 1) echo 'ok'; //wydrukuj cokolwiek żeby funkcja JS otrzymała parametr data, wtedy to znaczy że user jest zalogowany
  4. else {}
  5. ?>


Z tym fancyboxem to może być faktycznie problem. Podepnij bibliotekę pod główny plik tam gdzie masz dodane funkcje JS. Nie wiem czy to zadziała ale spróbuj wsadzić poniższy fragment kodu. Oczywiście wcześniej definiujesz pustego diva w głównym dokumencie: <div id="pole_input"></div>

[JAVASCRIPT] pobierz, plaintext
  1. if (data) {
  2. if ($('#pole_input').html()) $('#pole_input').html('');
  3. $('#pole_input').html("<script type=\"text/javascript\">
  4. $.fancybox(
  5. '<h2>Dane zmienione!</h2><center><br>Kliknij poniżej aby przejść do strony akceptacji<br><br><a href=\"akceptuj.php\"><b>-= KLIKNIJ TU =-</b></a><br><br><br><object data=\"webplayer.swf\" type=\"application/x-shockwave-flash\" width=\"32\" height=\"16\"><param name=\"movie\" value=\"webplayer.swf\"><param name=\"menu\" value=\"false\"><param name=\"scale\" value=\"noscale\"><param name=\"bgcolor\" value=\"#C0C0C0\"><param name=\"flashvars\" value=\"src=mp3.mp3&autostart=yes&loop=no&debug=no\"></object><!--<br><br>--></center>',
  6. {
  7. 'autoDimensions' : false,
  8. 'width' : 350,
  9. 'height' : 'auto',
  10. 'transitionIn' : 'none',
  11. 'transitionOut' : 'none'
  12. }
  13. );
  14.  
  15. </script>");
  16. }
[JAVASCRIPT] pobierz, plaintext


Jakby nie działało spróbuj jeszcze dopisać do post script jako typ danych zwracanych przez serwer, teoretycznie powinny być wtedy przeparsowane jako kod javascript

Ten post edytował amii 1.11.2011, 12:34:34
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 17:26