Thread View: pl.comp.lang.php
13 messages
13 total messages
Started by trip
Fri, 31 Aug 2001 19:11
wielokrotne wykonanie PHP
Author: trip
Date: Fri, 31 Aug 2001 19:11
Date: Fri, 31 Aug 2001 19:11
27 lines
1299 bytes
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 +
Author: trip
Date: Fri, 31 Aug 2001 20:33
Date: Fri, 31 Aug 2001 20:33
32 lines
1265 bytes
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 +
Author: bitro
Date: Fri, 31 Aug 2001 20:47
Date: Fri, 31 Aug 2001 20:47
11 lines
1246 bytes
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 +
Author: trip
Date: Fri, 31 Aug 2001 23:10
Date: Fri, 31 Aug 2001 23:10
16 lines
1538 bytes
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 +
Author: Darek Sieradzki
Date: Fri, 31 Aug 2001 23:27
Date: Fri, 31 Aug 2001 23:27
19 lines
1461 bytes
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 +
Author: Jedrek Jozefowicz
Date: Fri, 31 Aug 2001 23:40
Date: Fri, 31 Aug 2001 23:40
12 lines
1512 bytes
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 +
Author: trip
Date: Sat, 01 Sep 2001 00:17
Date: Sat, 01 Sep 2001 00:17
9 lines
1159 bytes
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 +
Author: trip
Date: Sat, 01 Sep 2001 00:18
Date: Sat, 01 Sep 2001 00:18
21 lines
1623 bytes
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
Author: Tomasz Nidecki
Date: Sat, 01 Sep 2001 00:53
Date: Sat, 01 Sep 2001 00:53
19 lines
2124 bytes
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
Author: trip
Date: Sat, 01 Sep 2001 08:31
Date: Sat, 01 Sep 2001 08:31
58 lines
2833 bytes
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
Author: Fires
Date: Sat, 01 Sep 2001 09:07
Date: Sat, 01 Sep 2001 09:07
70 lines
3163 bytes
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
Author: bitro
Date: Sat, 01 Sep 2001 09:12
Date: Sat, 01 Sep 2001 09:12
25 lines
2067 bytes
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
Author: trip
Date: Sat, 01 Sep 2001 10:20
Date: Sat, 01 Sep 2001 10:20
18 lines
1564 bytes
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