Как присвоить переменной PHP значение внутри блока JavaScript? - PullRequest
0 голосов
/ 22 января 2010
if ($page_title->exists()) {
//the rest of the code is in php.here i insert a javascript for the confirm box.
               echo'<script type= "text/javascript" >
var b=confirm("This page already exists.would you want to edit");
if(b == true)
//here i want to assign a php variable , say for eg. $a to 1 so that i can use that value of $a in an if clause outside this javascript code.
</script>';
}

if($a==1)
..some code..

Как мне это сделать?

Ответы [ 3 ]

1 голос
/ 22 января 2010

PHP-код выполняется на стороне сервера, и все это делается в тот момент, когда ваш javascript выполняется на стороне клиента.

Для передачи значения от клиента на сервер вы обычно либо используете AJAX (учебное пособие о том, как это сделать здесь: http://www.w3schools.com/ajax/ajax_httprequest.asp), либо сохраняете значение в форме и отправляете его вместе с данными, которые вывсе равно отправим позже.

Удачи

1 голос
/ 22 января 2010

Javascript работает на клиенте (браузере) и PHP на вашем сервере. Таким образом, вы должны перенести переменную на сервер.

Самый простой способ сделать это - использовать URL для отправки этой информации, например: http://example.com/myscript.php?a=1. Затем вы можете получить с помощью $_REQUEST['a'] и использовать его.

Более сложным (и сложным) методом является использование AJAX для отправки переменной в ваш PHP-скрипт, чтобы он мог возвращать некоторые данные, которые вы можете использовать для изменения вашей страницы.

То, что вам нужно, зависит от вашего приложения, поэтому вам следует предоставить более подробную информацию, если вы не знаете, какой метод вам лучше всего подходит в вашей ситуации.

1 голос
/ 22 января 2010

Вы можете отправить результат обратно в php с помощью вызова ajax, например ::100100

<script type="text/javascript"
  src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>

<script type="text/javascript">
x = confirm('Page exists, would you like to edit it?)
$.post('script.php', {x: x}, function(data) {
  if (data == '1') {
    alert('ok');
  } else {
    alert('not ok');
  }
});
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...