2010-11-08 2 views
2
echo "<td> + manuf + </td>"; 

Действительно ли это выше?Вставить javascript в PHP echo

Я потянув результаты из БД MySQL для редактирования содержимого, но нужна функциональность JQuery, чтобы изменить его, следовательно, встроенный JavaScript переменная ...

EDIT:

Извините за отсутствие контекста , это связано с другим вопросом, который я задал здесь Mysql edit users orders they have placed Это конечная цель. Чтобы отредактировать заказ i, мне нужно вывести результаты в среду, похожую на то, как пользователь разместил заказ. Поэтому я думал, что я должен включить функцию jQuery для добавления элементов в корзину и т. Д., Тогда они могут нажать кнопку «Отправить» и таким же образом, как я использовал .Ajax для отправки данных в скрипт php для вставки я бы опубликовал значения в скрипт обновления php ! Это обратное мышление, любые советы приветствуются!

+6

Ваш вопрос не имеет контекста. Он будет работать, если вы хотите + manuf + появиться на странице. – Emyr

+0

Даже в HTML, ' + manuf +' ничего не будет делать, кроме записи «+ manuf +» в ячейке таблицы. В любом случае, если вы вытаскиваете результат из базы данных, вам не придется впоследствии редактировать его на стороне клиента. Вы должны уточнить код, который вы используете, если хотите помочь. – Shikiryu

ответ

2

Я предлагаю вам взглянуть на follwing.

Теперь ваше простое решение при вас обстоятельствах это действительно идут для метода json_encode. Позвольте мне показать вам пример:

$json_data = array(
    'manuf' => $some_munaf_data 
); 

echo "<script type=\"text/javascript\">"; 
    echo "var Data = " . json_encode(json_data); 
echo "</script>"; 

Это произведет объект под названием Data, и будет выглядеть так:

<script type="text/javascript"> 
var Data = { 
    munaf : "You value of $some_munaf_data" 
} 
</script> 

Затем, когда вам нужны данные просто использовать Data.munaf, и она будет содержать значение с PHP-стороны.

0

Действительно ли это выше?

Nope. Вы должны были бы выходной действительный JavaScript для браузера интерпретируют:

echo "<script>document.write('<td>'+manuf+'</td>')</script>"; 

Но это страшная конструкция, и я не могу понять, почему вы должны это, видя, как содержание td «s, вероятно, сначала быть статичным.

1

Не могли бы вы откликнуться на jQuery на острове кода JavaScript? Вам нужен клиентский код (jQuery), который можно выполнить после кода на стороне сервера (PHP).

echo '<td><script language = "JavaScript" type = "text/JavaScript">document.write("");</script></td>'; 
1

Try просто излучающий содержание MySQL с PHP:

echo "<td id='manuf'>".$manuf."</td>" 

Затем получить содержимое с JQuery, как это:

var manuf = $('#manuf').text(); 
0

Потребляйте у вас есть таблица вторит с PHP:

<table id="sometab"> 
<tr> 
    <td> 
    </td> 
<tr> 
</table> 

jqu чень для печати resuls в любом пД: п-й ребенок (2) принимает 2 таблицы объект TD:

<script type="text/javascript"> 
$(function(){ 
    $("#sometab tr td:nth-child(2)").html("bla"); 
}) 
</script> 
0

я думаю, что вы не можете вставить переменную JQuery в PHP, как это. вы просто указываете здесь имя класса здесь, когда редактирование будет нажато, вы получите переменную, как в сообщении, нажмите в других вопросах.

0

Является ли «manuf» переменной JS или частью выхода PHP, например. часть сгенерированной?

В принципе это можно легко сделать: MySQL через PHP (* я не могу поставить стол tag..sorry.):

 
while($row = mysql_fetch_object($result)) { 
    echo 'tr'; 
    echo 'td a href="#" class="myres"'.$row->manuf.'/a /td'; 
    echo '/tr'; 
} 

тогда на ваших JS просто прикрепить "щелчок" обработчик

 
$(function() { 
    $(".myres").click(function() { 
     //my update handler... 
    }); 
}); 
+0

manuf - это переменная jQuery, вытащенная из таблицы на той же странице, поэтому идея заключалась в том, что если я поставил js var в php echo, переменная будет заполнена фактическими данными после появления страницы! если это имеет смысл? – benhowdle89