LINUXSOFT.cz
Nazwa użytkownika: Hasło:     
    CZ UK PL

> Komentarze :: Poradna Ako opakovat php script po urcitom case?

Ako opakovat php script po urcitom case? 6.2.2007 15:30
Juraj Paril

Ahojte.
Ako sa da opakovat php script po urcitom case? Viem to vyriesit, len pomocou opakovaneho nacitania celej stranky, ale ja potrebujem znovu nacitat len jednu funkciu a zobrazit vysledok. Ide o zoznam pripojenych uzivatelov nacitany z MySQL.

Skusal som to takto:
1. v php vytvorit funkciu, ktora funguje tak jak ma.
2. pomocou javascript-u po 5sekundach znova nacitat tuto funkciu a zobrazit vysledok.

Problem: Ono to ciastocne funguje, teda javascript spravne spusti php funkciu a zobrazi vysledok. Ale problem nastane pri opatovnom nacitani php funkcie. javascript zobrazi sice vysledok, ale nie je aktualny. Teda napriek tomu ze medzicasom zmenim udaje v MySQL javascript zobrazuje stale ten povodny vysledok.

Neviete prosim poradit vcom je chyba? Alebo popripade, ako inac vyrisit tento problem?

DAKUJEM

TU JE SAMOTNY SCRIPT

<head>
<?php
//---------------------toto je funkcia, ktoru chcem refresh-nut po 5 sekundach.------------------//
function funkcia()
{
define('SQL_HOST','localhost' );
define('SQL_USER','root' );
define('SQL_PASS','password' );
define('SQL_DB','database_name' );

$connect = mysql_connect( SQL_HOST, SQL_USER, SQL_PASS )
or die('Spojenie s databázou zlihalo; ' . mysql_error() ); // spojenie s MySQL
$selectdb = mysql_select_db( SQL_DB, $connect )
or die('Chyba pri nastavení pracovnej databázi; ' . mysql_error() ); // Zvolenie databazi


// toto tu nacita juzerov z tabulky ktory su online //
$user1=mysql_db_query(SQL_DB, "SELECT DISTINCT users FROM pripojeny WHERE file='$PHP_SELF'") or die("Chyba2");

$user2=mysql_num_rows($user1);

// Toto je vystup z funkcie//
return "Pocet pripojenych: $user2";
}
?>

<script language="javascript">
//---------------------tento javascript by mal refresh-nut funkciu po 5 sekundach.------------------//
function startTime()
{
var a='<?php echo funkcia(); ?>'
document.getElementById('vysledok').innerHTML=a //vysledok sa vyexportuje do polozky s id "vysledok"//
setTimeout('startTime()',5000)
}
/
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body onload="startTime()"> //toto spusti funkciu pri nacitani body//

<div id="vysledok"></div>

</body>
</html>

Re: Ako opakovat php script po urcitom case? 6.2.2007 16:51
Pavel Kácha

Pokud chcete pravidelne spoustet nejaky prikaz pouzyiva se na to napriklad cron, ale to neni vas pripad.

problem je v tom, ze php je veci serveru a javascript se zpracovava na strane klienta. jak to bezi? poslete pozadavek na stranku (treba kliknutim na odkaz), server si zjisti, ze chcete stranku, ktera odpovida vysledku nejakeho scriptu, vykona ten script a posle vam jeho vysledek jako html stranku a ta se potom zobrazi ve vasem prohlizeci. javascript pak uz pracuje jenom s timhle vysledkem a nebezi na serveru, ale uz jen u vas.

takze pokud byste se podival do zdrojaku stranky v prohlizeci, videl byste, ze radek
var a='<?php echo funkcia(); ?>'
se zmenil v neco jako
var a='pocet pripojenych: 2'

bud se s tim smirite a budete aktualizovat nacitanim cele stranky a nebo se zkuste podivat na technologii AJAX, ktera vam umozni poslat na server dotaz ne nutne na celou stranku, ale jen na cast, kterou chcete aktualizovat.

(vyse uvedeny text byl zamerne zjednodusen)

Re: Ako opakovat php script po urcitom case? 6.2.2007 17:38
Juraj Paril

Dakujem za reakciu. Moc mi to pomohlo.

Mal som tak plnu hlavu moznosti a variantov, ze ma taketo samozrejme vysvetlenie ani nenapadlo. heh
Skusim sa teda pozret ne ten AJAX.

Este raz dik a zelam hezky den.

Re: Ako opakovat php script po urcitom case? 6.2.2007 18:08
P.B.

necetl jsem sice cely ten zrojovy kod, ale jeste by tu byla moznost udelat si samostatny php script ktery by vypisoval pouze cislo a pomoci JS volat ten script a pak vysledek volani pres document write (nebo jak ta funkce v JS se jmenuje) zapisovat do stavajici stranky


KOMENTARZE
Ako opakovat php script po urcitom case? 6.2.2007 15:30 Juraj Paril
  |- Re: Ako opakovat php script po urcitom case? 6.2.2007 16:51 Pavel Kácha
  | L Re: Ako opakovat php script po urcitom case? 6.2.2007 17:38 Juraj Paril
  L Re: Ako opakovat php script po urcitom case? 6.2.2007 18:08 P.B.
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
> Szukanie oprogramowania
1. Pacman linux
Download: 4709x
2. FreeBSD
Download: 8881x
3. PCLinuxOS-2010
Download: 8386x
4. alcolix
Download: 10651x
5. Onebase Linux
Download: 9455x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 5950x

1. xinetd
Download: 2236x
2. RDGS
Download: 937x
3. spkg
Download: 4334x
4. LinPacker
Download: 9595x
5. VFU File Manager
Download: 3024x
6. LeftHand Mała Księgowość
Download: 6842x
7. MISU pyFotoResize
Download: 2598x
8. Lefthand CRM
Download: 3395x
9. MetadataExtractor
Download: 0x
10. RCP100
Download: 2867x
11. Predaj softveru
Download: 0x
12. MSH Free Autoresponder
Download: 0x
©Pavel Kysilka - 2003-2024 | mailatlinuxsoft.cz | Design: www.megadesign.cz