Tengo el mismo problema y creo ke podria solucionarse con PHP. Al cargar, la variable vale por defecto 0. Cuando se ejecute por primera vez, la variable valdrá 1, y lo que tenemos que hacer es pasar la variable en la url. Creo que sería algo así:
Código HTML:
<!-- para formularios -->
<form name="form1" id="form1" action="archivo.php?var= <?php echo $var;?> " method="post">
<!-- para enlaces -->
<a href="archivo.php?var= <?php echo $var;?> "></a>
El problema es que debemos mantener SIEMPRE la transmisión de este parámetro, de manera que independientemente de la navegación que realice el usuario, la variable siempre valga 1 y el código no vuelva a ejecutarse hasta que vuelva a cargar la pagina desde el principio. Lógicamente, debemos meter la script que queremos que se ejecute una sola vez dentro de la siguiente condicional:
Código PHP:
<?php
if ($var == 0) {
"código a ejecutar";
$var = 1; //o $var++;
};
?>
//para el JavaScript simplemente abrir y cerrar sus etiquetas
<?php if ($var == 0) { ?>
<script type="text/javascript">
"código a ejecutar";
</script>
<?php $var = 1; //o $var++; }; ?>
};
Soy bastante novato con PHP ya que estoy aprendiendo... lo he probado y no he sido capaz de conseguirlo, sinceramente, pero estoy convencido de que el fallo es mio, algo estoy haciendo mal...
Bueno espero que te sirva, la idea es simple y no deberia dar problemas. Si has conseguio otra solución por favor comunicanosla que a mi me vendría muy bien. O si por otra parte alguien ve que la opción que propongo no es viable tb puede ayudarnos.
Gracias y un saludo!