2009-02-27 5 views
0

в моем проекте У меня такая ситуация.PHP Встроенный в Javascript

<script language="JavaScript"> 
function fonsubmit() 
{ 
    alert('Out side PHP'); 
    //Here the php code starts 
    include("customerpage.php"); 
    $cc="us"; 
    $clang="en"; 
    $cpath="us"; 
    some coding goes here...... 
    Php ends here 
} 
</script> 

Но оно показывает ожидаемую ошибку объекта. Что в этом плохого? Но я даю только тег PHP, он не будет генерировать никаких ошибок. Пожалуйста, помогите мне узнать эту проблему, спасибо заранее ...

+0

Пожалуйста, используйте правильное форматирование. – Gumbo

+0

спасибо за формирование, Это то, что я ожидаю – Sakthivel

ответ

12

Вы пытаетесь встроить язык на основе сервера на основе языка на стороне клиента. Это не сработает.

Если вы могли бы объяснить немного больше, что именно вы пытаетесь достичь, может быть лучшее решение, такое как вещь типа AJAXie.

Позвольте мне объяснить немного больше, поскольку другие дали ответы, которые можно было бы здесь поставить.

У вас может быть php, встроенный в ваши * .php файлы, которые будут интерпретироваться на сервере и разбираться там. Используя это, вы можете установить переменные, которые javascript может получить позже, и использовать их на стороне клиента. Как я уже сказал, хотя у клиентской стороны нет маршрута для интреттинга и разбора php, и поэтому отправка php через пользователя не будет работать.

Если вы тем не менее пытается получить все работало так, что ваш PHP устанавливает некоторые JavaScript значения, то я бы, как Гэри Willough и Tudor Olariu как говорят, добавить теги PHP

<?php 
... PHP CODE... 
?> 

Однако, вы должны понимаете, это будет интерпретироваться на сервере, а не на клиенте. Поэтому следующий код будет предупреждать «внешний php», а затем «внутри php».

<script language="JavaScript"> 
function fonsubmit() 
{ 
    alert('outside php'); 
    <?php 
    $message = "inside php"; 
    echo "alert('$message');"; 
    ?> 
} 
</script> 

HTML, отправляется пользователь будет затем

<script language="JavaScript"> 
function fonsubmit() 
{ 
    alert('outside php'); 
    alert('inside php'); 
} 
</script> 

Надеется, что это помогает.

2

Я не знаю JavaScript, но JS является на стороне клиента Язык, означающий, что он оценивается в веб-браузере, когда пользователь вашей веб-страницы просматривает его. PHP - это серверный язык, что означает, что он оценивается на компьютере, на котором размещена ваша веб-страница. Ваш браузер не может оценить PHP-код. Все PHP должен быть выполнен на сервере. Вы должны безошибочно оценивать PHP, иначе PHP не может быть оценен вообще. Затем используйте JavaScript, чтобы выбрать, какую часть вывода PHP вы хотите отобразить, - это позволит добиться эффекта, который, как я думаю, вам нужен.

0

PHP должен быть заключен в соответствующие теги PHP:

<?php include("customerpage.php"); $cc="us"; $clang="en"; $cpath="us"; ?> 

Убедитесь, что страница имеет расширение * .php и запустить на сервере, который имеет PHP установлен.

+0

, если я напечатаю так, чтобы он не показывался, то есть yi type n таким образом, чтобы отображать – Sakthivel

+0

@sakthiopr - вам нужно ввести его в виде кода, то есть либо с помощью «обратных шагов», либо с отступом пробел кода 4, чтобы он отображался как код. –

2

Вы пропускаете начало PHP и тег:

function fonsubmit() 
{ 
    alert('Out side PHP'); 
    //Here the php code starts 

    <?php 
    include("customerpage.php"); 
    $cc="us"; 
    $clang="en"; 
    $cpath="us"; 
    //Php ends here 
    ?> 
} 

Обратите внимание, что ваш код PHP будет выполняться на сервере, перед вашим яваскриптом пинков в

+0

Я набрал то же самое, что и выше, но он отобразил ошибку «ожидаемый ожидаемый» ... – Sakthivel

+0

Вы должны взглянуть на то, что делает clientpage.php, тогда как это может выводить что-то, что не может попасть в Javascript function ... – Ben

+0

Хорошо, что этот PHP-скрипт выводит текст? –

1

Альтернатива была бы, чтобы отобразить Javascript внутри PHP.Вместо того, чтобы помещать PHP в Javascript, вы помещаете Javascript в PHP. Например, вы можете сделать это:

<?php 
echo '<script language="JavaScript"> 
function fonsubmit() 
{ 
    alert("outside php"); 
'; 

    // here is where you insert your PHP code 
    include("customerpage.php"); 
    $cc="us"; 
    $clang="en"; 
    $cpath="us"; 

echo ' 
} 
</script>'; 
?> 

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

<?php 
echo '<script language="JavaScript">'; 
?> 

, а затем вставить нужный Javascript нормально. Всякий раз, когда вы хотите вставить PHP-код, окружите его тегами <? Php?>.