Eccoci quà con un problema che veramente non riesco a risolvere.
Avrei necessità di passare dei valori da Javascript a PHP.
Visto che il JS è eseguito lato client e il PHP viene eseguito lato Server, mi rendo conto che la cosa non è semplice e forse è impossibile
ma veniamo a scrivere qualche riga almeno chiarisco meglio il mio problema.
Ho una funzione JS che mi recupera le dimensioni dello schermo utente :
Codice:
function dim_schermo()
{
//Recupero delle dimensioni schermo
var w = screen.width;
var h = screen.height;
//Impostazione valori durata coockie
var dtOggi = new Date();
var dtExpires = new Date();
var iGiorni=1;
dtExpires.setTime (dtOggi.getTime() + 24 * iGiorni * 3600000);
//Scrittura del cookie
document.cookie = 'info='+escape(w)+' x '+escape(h)+'; expires=' + dtExpires.toGMTString();
}
La funzione mi sembra autoesplicativa in ogni caso vi informo che utilizzo i coockie perchè tra i vari tentativi è quello che tutto sommato mi permettere di accedere ai dati scritti da JS, anche se funziona soltanto dopo aver caricato la pagina 2 volte ovviamente
Nella pagina php invece è riportato questo codice :
Codice PHP:
<html>
<head>
<script language="javascript" src='./jscript/function.js'></script>
<script>dim_schermo();</script>
</head>
<body>
<?php
//recupero dimensioni schermo
//---------------------------
$info=explode('|',$_COOKIE["info"]);
print_r ($info);
?>
</body>
</html>
E' inultile dire che questo sistema non funziona, o meglio la prima volta non funziona mentre al ricarico della pagina tutto sembra andare regolarmente.
Questo per la premessa fatta prima e cioè che il PHP viene eseguito prima del JS.
Girovagando su Internet ho visto che molti consigliano di utilizzare AJAX, soltanto che non ho capito minimamente come fare.
A me andrebbe bene anche ricaricare la pagina per recueprare quei dati, ma tenete presente che la parte PHP presentata sopra dovrà essere inclusa in un'altra pagina e non dovrà minimanete andare a toccarla (vedi refresh ecc ecc).
A questo punto mi rimetto ai consigli di voi esperti.
Se avete bisogno di ulteriori info dite pure.
Grazie a tutti.
Ciao
Leandro