Javascript и php

antifox

Новичок
Javascript и php

Искал, искал, никак не мог найти, хотя проблема может оказаться для многих существенной.

Вот в чем дело:
Есть два файла, один называется java.php другой file.php
Цель - После истечении обратного отсчета, javascript перенаправляет в file.php и вместе с ней переменную $var1.

В файле file.php переменная $var1 уже бы фигурировала в другом скрипте.

Вот скрипт javascript:

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
<!--
var g_iCount = new Number();
// CHANGE THE COUNTDOWN NUMBER HERE - ADD ONE TO IT //
var g_iCount = 10;
function startCountdown(){
if((g_iCount - 1) >= 1){
g_iCount = g_iCount - 1;
numberCountdown.innerText = '' + g_iCount;
setTimeout('startCountdown()',1000);
}
else window.location = "fail.php";
}
// End -->
</script>

Вот и куда запихнуть здесь $var1, который бы равнялся допустим '1'.
 

chira

Новичок
при чём здесь MySQL?
Код:
 }
else window.location = "fail.php[b]?var1=1[/b]";
}
 

antifox

Новичок
Извените не в ту тему,
}
else window.location = "fail.php?var1=1";
}
Это не пойдет, так как $var=1, должен быть спрятан от глаз пользователя. Он должен находиться внутри javascript
 

chira

Новичок
antifox

расскажи, как находясь внутри javascript он будет спрятан от пользователя?
это защита от кухарок?
можешь закодировать как нибудь "fail.php?var1=%31"
 

antifox

Новичок
Мне нужно чтоб в адресной строчке было чисто "fail.php"
И при этом передалась переменная $var1 каким-нибудь другим способом. Можно ли так?
 

antifox

Новичок
Потому что, если они узнают что можно не ждать пока пройдет время обратного отсчета, они возьмут и сразу в адресной строке наберут fail.php?var1=1 и таким образом запустят скрипт.
 

Фанат

oncle terrible
Команда форума
для этих целей надо использовать сессии, а не детский лепет с прятками.
 

antifox

Новичок
А где можно прочитать про сессии, как правильно назвать такую операцию?
 

Maria

Guest
Если без сессий, можешь так попробовать, хотя это, конечно, изврат:

java.php:

<form name="form1" action="file.php" method="post">
<input type="hidden" name="var1" value="Значение var1" />
</form>

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
<!--
var g_iCount = new Number();
// CHANGE THE COUNTDOWN NUMBER HERE - ADD ONE TO IT //
var g_iCount = 10;
function startCountdown(){
if((g_iCount - 1) >= 1){
g_iCount = g_iCount - 1;
numberCountdown.innerText = '' + g_iCount;
setTimeout('startCountdown()',1000);
}
else document.forms[0].submit();
}
// End -->
</script>




file.php:

<?php
$var1 = $_REQUEST["var1"];
…..
?>
 

white phoenix

Новичок
Несомненно использовать сессию.
По поводу JavaScript, вот как это реализовано на этом форуме:
http://phpclub.ru/talk/register.php?action=signup
PHP:
  <script>
  <!--
  var time = 60;

  function vbaccept()
  {
    time--;
    frm = document.vbaccept;

    if (frm)
      frm.submit.value = 'Принять ('+time+')';

    if (time>0)
      window.setTimeout("vbaccept()",1000);
    else if (frm)
    {
	frm.submit.value = 'Принять';
  	frm.submit.disabled=0;
    }
  }

  vbaccept();
  -->
  </script>
Maria
setInterval
 
Сверху