🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
13 messages
13 total messages Started by trip Fri, 31 Aug 2001 19:11
wielokrotne wykonanie PHP
#1902
Author: trip
Date: Fri, 31 Aug 2001 19:11
27 lines
1299 bytes
Mam klopot z wielokrotnym wywolaniem PHP na danej stronie.
Pierwsze wywolanie z klikniecia przycisku po ktorym odpala sie JS wywolujace
PHP - dziala : PHP i JS.

//***

function _set()
{
i++;
<?
include("skrypt.php");
?>
document.form1.main_channel.value = document.form1.main_channel.value + i  ;
}

//***

kolejne wywolanie tej funkcji powoduje, ze dziala tylko JS - kod z include
nie funkcjonuje....

dlaczego ?

pozdrawiam

-
leash
Re: wielokrotne wykonanie PHP +
#1903
Author: trip
Date: Fri, 31 Aug 2001 20:33
32 lines
1265 bytes
doszedlem dalej wiec uscislam : :)

 //***
<?
$x = 0;
?>

<script>

 function _set()
 {

 <?
$x++;
$_v  = " ' ".$x." ' ";
$_msg =  "document.form1.main_channel.value=".$_v.";";
echo "$_msg" ;
 ?>

 }

 </script>
 //***

wypisuje ze $x = 1;
i tak juz zostaje mimo kolejnych wywolan
dlaczego ?

 pozdrawiam

 -
 leash
Re: wielokrotne wykonanie PHP +
#1904
Author: bitro
Date: Fri, 31 Aug 2001 20:47
11 lines
1246 bytes
> wypisuje ze $x = 1;
> i tak juz zostaje mimo kolejnych wywolan
> dlaczego ?

to przyjzyj sie temu, jak wyglada twoja strona po stronie klienta
(przegladarki), moze zrozumiesz.
PHP jest jezykiem po stronie serwera i jesli bylo rzadanie strony (a
bylo tylko raz) to i kod sie wykonal tylko raz.

--
BITRO
Re: wielokrotne wykonanie PHP +
#1905
Author: trip
Date: Fri, 31 Aug 2001 23:10
16 lines
1538 bytes
> PHP jest jezykiem po stronie serwera i jesli bylo rzadanie strony (a
> bylo tylko raz) to i kod sie wykonal tylko raz.
>

Czyli nie ma mozliwosci aby ponownie dla raz wczytanej strony uruchomic dany
skrypt ?
Konkretnie potrzebuje co np 5 sekund wczytac jakis plik, obrobic go i
umiescic ale na tej samej stronie, bez odswiezania calosci.
Wszystko gra, ale plik mimo , ze sie dynamicznie zmienia na serwerze - nie
ulega aktualizacji - bo skrypt jakgdyby go nie zaczytuje lecz uzywa kopii z
pierwszego czytania.

Mam wiec robic ponownie czytanie calej strony ?

-
leash
Re: wielokrotne wykonanie PHP +
#1908
Author: Darek Sieradzki
Date: Fri, 31 Aug 2001 23:27
19 lines
1461 bytes
"trip" <mop@lop.com> wrote in news:9mosol$cqm$1@news.tpi.pl:

> wypisuje ze $x = 1;
> i tak juz zostaje mimo kolejnych wywolan
> dlaczego ?

Pewnie dlatego, ze PHP wykonuje sie po stronie serwera, podczas generowania 
dokumentu, a JavaScript wykonuje sie po stronie klienta.

Ciekawe dlaczego ludzie tak nagminnie to myla... 

DS

-- 
 .---------
(-- a dny jak padli andele prsty ryji hlinu --.                  .
 `              `-- a dni jak upadle anioly palcami ryja ziemie --)    
                                                        ---------'   
                  http://www.dago.pmp.com.pl
Re: wielokrotne wykonanie PHP +
#1909
Author: Jedrek Jozefowicz
Date: Fri, 31 Aug 2001 23:40
12 lines
1512 bytes
> Pewnie dlatego, ze PHP wykonuje sie po stronie serwera, podczas generowa
nia
> dokumentu, a JavaScript wykonuje sie po stronie klienta.
>
> Ciekawe dlaczego ludzie tak nagminnie to myla...

Wystarczy ze ma -side w nazwie, a juz leca tu ;-)
Nie, zartuje - na pl.comp.www.server-side

Jedrek
www.webmaster.nano.pl
Re: wielokrotne wykonanie PHP +
#1910
Author: trip
Date: Sat, 01 Sep 2001 00:17
9 lines
1159 bytes
> Wystarczy ze ma -side w nazwie, a juz leca tu ;-)
> Nie, zartuje - na pl.comp.www.server-side


NTG i OT
a ja oczekuje porady

-
leash
Re: wielokrotne wykonanie PHP +
#1911
Author: trip
Date: Sat, 01 Sep 2001 00:18
21 lines
1623 bytes
> Pewnie dlatego, ze PHP wykonuje sie po stronie serwera, podczas
generowania
> dokumentu, a JavaScript wykonuje sie po stronie klienta.
>
> Ciekawe dlaczego ludzie tak nagminnie to myla...


a co to ma do rzeczy ?

$x to zmienna skryptu PHP i w nim wykorzystywana a nie w JS,
i jako taka dla strony chyba powinna byc aktualna caly czas ?
czy po 1szym wykonaniu - pozostaje juz taka i dalsze nic nie zmieniaja ??
prosze o taka odpowiedz na tak albo na nie

JS tylko wywoluje skrypt PHP.
Jak narazie nic nie myle tylko zadaje pytania, wiec licze na komentarz
odnosnie podanego przykladu.

-
leash
Re: wielokrotne wykonanie PHP
#1912
Author: Tomasz Nidecki
Date: Sat, 01 Sep 2001 00:53
19 lines
2124 bytes
In article <9monlt$pth$2@news.tpi.pl>, "trip" <mop@lop.com> wrote:

> kolejne wywolanie tej funkcji powoduje, ze dziala tylko JS - kod z 
> include
> nie funkcjonuje....
> dlaczego ?

To bardzo proste. Twoja przegladarka pobiera cala strone z serwera, 
przed czym zaraz na serwerze wykonany jest PHP. Potem jak wywolujesz JS 
to wywolujesz juz kod, ktory pobrala przegladarka, nic nie jest 
pobierane z serwera. Wiec NIE MOZNA w funkcji JS zawrzec kodu PHP ktory 
bylby wykonywany za kazdym wykonaniem tej funkcji JS. Kod ten bedzie 
wykonany tylko raz, zanim Twoja przegladarka otrzyma wynikowa strone.

-- 
tomasz 'tonid' nidecki, zoliborz, warszawa, poland
mailto:tonid@tonid.net http://endemic.tonid.net
Volkswagen 1302 "Garbus" Automatic (1971) 
Cadillac Eldorado (1983) - CZEKA NA NOWEGO WLASCICIELA!
Re: wielokrotne wykonanie PHP
#1913
Author: trip
Date: Sat, 01 Sep 2001 08:31
58 lines
2833 bytes
Rozumiem zasade ale teraz mam jedno ale:

>Twoja przegladarka pobiera cala strone z serwera,
> przed czym zaraz na serwerze wykonany jest PHP.

moj kod umieszczony w funkcji JS wyglada tak:


<?
[..]

$_v  = " ' ".date(" [d m y] [G:i:s]  ", time())." ' ";

$_msg =  "document.form1.main_channel.value=".$_v.";";

echo "$_msg" ;

[..]
?>

1 - po zaladowaniu strony w pole tekstowe - main_channel - nie jest wpisana
data.

>Potem jak wywolujesz JS
> to wywolujesz juz kod, ktory pobrala przegladarka, nic nie jest
> pobierane z serwera.

2 - ok, po nacisnieciu butona, uruchamia mi sie ww. kod i data wchodzi do
pola tekstowego

> Wiec NIE MOZNA w funkcji JS zawrzec kodu PHP ktory
> bylby wykonywany za kazdym wykonaniem tej funkcji JS. Kod ten bedzie
> wykonany tylko raz, zanim Twoja przegladarka otrzyma wynikowa strone.

3
- w JS wyczyscilem w miedzyczasie pole tekstowe
- po kolejnym nacisnieciu przycisku czyli wywolaniu funkcji PHP:
_pole tekstowe sie wypelnia_ czyli dziala funkcja _echo_ czyli PHP, czyli
pobrany skrypt, no i funkcja data skoro date wpisuje,
jedynie co ze data i sekundy - wszystko jest takie jak przy 1szym wywolaniu.

Czyli podsumowujac - czesc PHP dziala a czesc nie - nie bede juz definiowal
co.
Czyli wczytujac tak samo jakis _plik_ po raz pierwszy, a potem po raz
drugi - ten (plik) mimo ze ulegl w miedzyczasie zmianie - nie zostanie
wczytany tylko pobrany z jakiegos niby cache.

Tak dociekam - bo gdyby PHP faktycznie sie nie wykonywalo - nie byloby
problemu. A w ten sposob ciagnie mnie to do dalszego kombinowania.

dzieki za odpowiedz na temat, ale czy naprawde nie mozna tego bez META
zrobic, jezeli w innym jezyku niz php, czy JS - to prosze o podpowiedz, moze
byc na priv

pozdrawiam
-
leash
leash@@@go2.pl - @@
Re: wielokrotne wykonanie PHP
#1914
Author: Fires
Date: Sat, 01 Sep 2001 09:07
70 lines
3163 bytes
Użytkownik "trip" <mop@lop.com> napisał w wiadomości
news:9mq688$sal$2@news.tpi.pl...
> Rozumiem zasade ale teraz mam jedno ale:
>
[...]
> $_v  = " ' ".date(" [d m y] [G:i:s]  ", time())." ' ";
>
> $_msg =  "document.form1.main_channel.value=".$_v.";";

> 2 - ok, po nacisnieciu butona, uruchamia mi sie ww. kod i data
wchodzi do
> pola tekstowego

Dlatego, że interpreter PHP pracujący na serwerze wygenerował fragment
JS:
document.form1.main_channel.value="konkretna_data_i_czas";

[...]
> - w JS wyczyscilem w miedzyczasie pole tekstowe
> - po kolejnym nacisnieciu przycisku czyli wywolaniu funkcji PHP:

Co jest nieprawdą. Ktoś Ci już radził, aby podejrzał kod wygenerowany
przez PHP. Będzie on wyglądał tak:

<script>
function set()  {
    document.form1.main_channel.value= '  [01 09 01] [10:57:57]   ' ;
 }
</script>

<form name="form1" action="">
<input type="text" name="main_channel">
<input type="button" onclick="set();">
</form>

Po nacisnięciu przycisku (mam nadzieję, że mniej więcej tak to u
Ciebie wygląda) wykonywana jest funkcja set(), która polu main_channel
prypisuje stał wartość daty wygenerowaną pierwotnie przez PHP.

> _pole tekstowe sie wypelnia_ czyli dziala funkcja _echo_ czyli PHP,
czyli

niprawda... wyjaśniłem to powyżej

> pobrany skrypt, no i funkcja data skoro date wpisuje,
> jedynie co ze data i sekundy - wszystko jest takie jak przy 1szym
wywolaniu.

Własnie dlatego, że PHP nie działa, a jedynie skrypt JS wpisuje
pierwotnie wygenrowana date, która w kolenych uruchomieniach nie jest
już zmienną, tylko stałym łacuchem znakowym (zobacz powyżej jak
wygląda funkcja po pierwszym załadowaniu strony)

> Czyli podsumowujac - czesc PHP dziala a czesc nie - nie bede juz
definiowal
> co.

Jak juz próbowałem udowodnić, PHP
_nie_może_zadziałać_bez_przeładowania_strony ponieważ intepreter PHP
znajduje się na serwerze

[...]


--

      ----=== Sławomir Fajer (Fires) ==----
--==== firesoft@abczone.com.USUN.pl ====--
"ABCZone" - strefa początkującego webdesignera
           http://www.abczone.com.pl/
Re: wielokrotne wykonanie PHP
#1915
Author: bitro
Date: Sat, 01 Sep 2001 09:12
25 lines
2067 bytes
Użytkownik "trip" <mop@lop.com> napisał w wiadomości
news:9mq688$sal$2@news.tpi.pl...
> Rozumiem zasade ale teraz mam jedno ale:
> [...i tak dalej i tak dalej]

aby zrozumiec, co ci dziala i jak dziala, po wladowaniu strony do
przegladarki zapisz sobie jej kod (widok/zrodlo) i ogladnij, nastepnie
zapisz i uruchamiaj do woli dziala tak samo, jak przy uzyciu PHP, z ta
jednak roznica, ze data bedzie ta, ktora byla przy zapisywaniu, a nie
zaladowaniu strony.
rozwiazanie twojego problemu, to albo przeladowywanie calej strony
(jesli nie chcesz przeladowywac 1 ramki), innym jest uzycie JS i
przeladowywanie zawartosci tego jednago elementu, ale tu odeslal bym
cie na anglojezyczne grupy, bo polskiej jeszcze nie ma
unieszczesliwiajac pl.comp.lang.java

no i wreszcie zasadnicza sprawa ktora musisz zrozumiec PHP JEST
WYKONYWANE PO STRONIE SERWERA, i aby cos sie zmienilo na stronie to
trzeba ten serwer poprosic o nowa porcje informacji.

EOT

ewentualne dalsze uwagi na priv
--
BITRO
Re: wielokrotne wykonanie PHP
#1916
Author: trip
Date: Sat, 01 Sep 2001 10:20
18 lines
1564 bytes
Wszystko jasne.
Mam literature, ale jak kazdy wie, co ksiazka to linijka typu - "reszty
szukaj w pozycji xxx".

Dziekuje wszystkim ktorzy mi pomogli, nie bede musial pchac dalej pod gore.

Ale teksty typu:
"unieszczesliwiajac pl.comp.lang.java" itp radze sobie darowac i nie
prowokowac niechcianych watkow. Sa dziedziny w ktorych ja moge tak odbic
pileczke w druga strone. Na szczescie szukam tu tylko informacji wiec reszte
mam gdzies.
Pozdrawiam i jeszcze raz dzieki za informacje osobom, ktore mi ich
udzielily.

:)

-
leash
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads