Newsgroup: it.comp.lang.javascript
Titolo: Script che non va in una pagina php

Mi sapete dire perchè se io prendo questo semplicissimo codice (è un 
esempio che ho trovato su innternet di split()) e lo metto in una pagina 
html funziona mentre se lo inserisco in una pagina php tramite templates 
non funziona???
<script language='Javascript'>
//Creo una stringa composta da più parole divise da virgole
miastringa = new String('mrwebmaster,bannergratis,wmstats,mrw,linkami')
//Creo la mia Array usando Split. Il delimitatore è uno spazio bianco
miaarray = miastringa.split(",")
//Stampo a video tutti gli elementi della mia Array
document.write(miaarray+'<br>')
document.write(miaarray+'<br>')
document.write(miaarray+'<br>')
document.write(miaarray+'<br>')
document.write(miaarray)
</script>
In particolare la funzione split non suddivide la stringa ma mi aggiunge 
all'array tutta la stringa per 5 volte, il risultato quindi è che mi stampa:
mrwebmaster,bannergratis,wmstats,mrw,linkami
mrwebmaster,bannergratis,wmstats,mrw,linkami
mrwebmaster,bannergratis,wmstats,mrw,linkami
mrwebmaster,bannergratis,wmstats,mrw,linkami
mrwebmaster,bannergratis,wmstats,mrw,linkami
Aggiungo che lo script è tra i tag <head>.... boh.. qualcuno più esperto 
sa spiegarmi il motivo?

 mrwebmaster,bannergratis,wmstats,mrw,linkami
no. La funzione split crea correttamente l'array, ma tu gli stai dicendo di
stampare l'intero array, non un indice per volta ...
-- 
"Non sai che ci vuol scienza
 ci vuol costanza
 ad invecchiare senza maturità"
									    F.G.

 stampare l'intero array, non un indice per volta ...
Scusami hai perfettamente ragione ho postato l'esempio senza modifica... 
quello corretto è questo:
<script language='Javascript'>
//Creo una stringa composta da più parole divise da virgole
miastringa = new String('mrwebmaster,bannergratis,wmstats,mrw,linkami')
//Creo la mia Array usando Split. Il delimitatore è uno spazio bianco
miaarray = miastringa.split(',')
//Stampo a video tutti gli elementi della mia Array
document.write(miaarray[0]+'<br>')
document.write(miaarray[1]+'<br>')
document.write(miaarray[2]+'<br>')
document.write(miaarray[3]+'<br>')
document.write(miaarray[4])
</script>
Che mi funziona perfettamente se lo metto da solo in una paginetta html 
di prova e non mi funziona + se lo metto all'interno di una pagina php 
tramite template (all'interno di <head>)

 tramite template (all'interno di <head>)
beh, se l'esempio funziona vuol dire che è ok e quindi stai sbagliando a
inviarlo al client ... guarda l'html risultante e troverai l'errore.
Certo che scrivere dentro head non è il massimo, la pagina sarà del tipo
 <html><head>riga1<br/>riga2...</head><body...
che è una bella schifezza (ma dovrebbe comunque scrivere)
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

 che è una bella schifezza (ma dovrebbe comunque scrivere)
Sisi è solo una prova perchè dove lo mettevo io non funzionava  e allora 
ho provato a metterlo lì... ho appena controllato l'html ed incredibile 
ma vero mi genera 'sta roba:
<html>
<head>
<script language="Javascript">
//Creo una stringa composta da più parole divise da virgole
miastringa = new String("mrwebmaster,bannergratis,wmstats,mrw,linkami")
//Creo la mia Array usando Split. Il delimitatore è uno spazio bianco
miaarray = miastringa.split(",")
//Stampo a video tutti gli elementi della mia Array
document.write(miaarray+"<br>")
document.write(miaarray+"<br>")
document.write(miaarray+"<br>")
document.write(miaarray+"<br>")
document.write(miaarray)
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
Vengono persi i  riferimenti agli elementi dell'array!!!
Es. miaarray[0] diventa miaarray
A questo punto credo che ci sia qualche problema nella classe che 
gestisce i template...

 gestisce i template...
direi proprio di sě
-- 
"Run rabbit run
 dig that hole, forget the sun
 and when at last the work is done
 don't sit down, it's time to dig another one"
									    P.F.