как изменить php-функции отправить результат в jquery ajax

-4

У меня есть много кодов для уведомлений пользователей, это делает много mysql, поэтому ему нужно время ожидания. jquery ajax работает для php файлов. как я могу использовать jquery для отправки php-результата на веб-страницу?

текущий код:

<? echo db_cache("main_top_naver_cache", 300, "naver_popular('naver_popular', 4)"))?>

требуемый код: но он показывает ошибки. результат php-функций не отправляется в div. htmlspecialchars бесполезен.

<div id='a'>
<div id='b'>
<script type="text/javascript">
    $("#test1").html( " <? echo htmlspecialchars(db_cache("main_top_naver_cache", 300, "naver_popular('naver_popular', 4)"))?> " );
</script>

IE debuger показывает ошибку... SCRIPT 1015:... незавершенная константа sting...

<script type="text/javascript">
$("#test1").html( " &lt;style&gt;
/* http://html.nhncorp.com/uio_factory/ui_pattern/list/3 */
.section_ol3{position:relative;border:1px solid #ddd;background:#fff;font-size:12px;font-family:Tahoma, Geneva, sans-serif;line-height:normal;*zoom:1}
.section_ol3 a{color:#666;text-decoration:none}
.section_ol3 a:hover,
.section_ol3 a:active,
.section_ol3 a:focus{text-decoration:underline}
.section_ol3 em{font-style:normal}
.section_ol3 h2{margin:0;padding:10px 0 8px 13px;border-bottom:1px solid #ddd;font-size:12px;color:#333}
.section_ol3 h2 em{color:#cf3292}
.section_ol3 ol{margin:13px;padding:0;list-style:none}
.section_ol3 li{position:relative;margin:0 0 10px 0;*zoom:1}
.section_ol3 li:after{display:block;clear:both;content:&quot;&quot;}
.section_ol3 li .ranking{display:inline-block;width:14px;height:11px;margin:0 5px 0 0;border-top:1px solid #fff;border-bottom:1px solid #d1d1d1;background:#d1d1d1;text-align:center;vertical-align:top;font:bold 10px Tahoma;color:#fff}
.section_ol3 li.best .ranking{border-bottom:1px solid #6e87a5;background:#6e87a5}
.section_ol3 li.best a{color:#7189a7}
.section_ol3 li .num{position:absolute;top:0;right:0;font-size:11px;color:#a8a8a8;white-space:nowrap}
.section_ol3 li.best .num{font-weight:bold;color:#7189a7}
.section_ol3 .more{position:absolute;top:10px;right:13px;font:11px Dotum, 돋움;text-decoration:none !important}
.section_ol3 .more span{margin:0 2px 0 0;font-weight:bold;font-size:16px;color:#d76ea9;vertical-align:middle}
&lt;/style&gt;

&lt;div class=&quot;section_ol3&quot;&gt;
    &lt;ol style='text-align:left;'&gt;
  &lt;li class='best'&gt;&lt;span class='ranking'&gt;1&lt;/span&gt;&lt;a    href='http://search.naver.com/search.naver?where=nexearch&amp;query=%B9%AB%C7%D1%B5%B5%C0%FC&amp;sm=top_lve' onfocus='this.blur()' title='무한도전' target=new&gt;무한도전&lt;/a&gt;&lt;span class='num'&gt;+42&lt;/span&gt;&lt;/li&gt;&lt;li class='best'&gt;&lt;span class='ranking'&gt;2&lt;/span&gt;&lt;a href='http://search.naver.com/search.naver?where=nexearch&amp;query=%B1%E8%C0%E7%BF%AC&amp;sm=top_lve' onfocus='this.blur()' title='김재연' target=new&gt;김재연&lt;/a&gt;&lt;span class='num'&gt;+123&lt;/span&gt;&lt;/li&gt;&lt;li class='best'&gt;&lt;span class='ranking'&gt;3&lt;/span&gt;&lt;a href='http://search.naver.com/search.naver?where=nexearch&amp;query=%C0%CC%C7%CF%C0%CC&amp;sm=top_lve' onfocus='this.blur()' title='이하이' target=new&gt;이하이&lt;/a&gt;&lt;span class='num'&gt;+90&lt;/span&gt;&lt;/li&gt;&lt;li &gt;&lt;span class='ranking'&gt;4&lt;/span&gt;&lt;a href='http://search.naver.com/search.naver?where=nexearch&amp;query=%BA%D2%C8%C4%C0%C7%B8%ED%B0%EE2&amp;sm=top_lve' onfocus='this.blur()' title='불후의명곡2' target=new&gt;불후의명곡2&lt;/a&gt;&lt;span class='num'&gt;+87&lt;/span&gt;&lt;/li&gt;  &lt;/ol&gt;

</div> "

    ); </script>
Теги:

2 ответа

1
Лучший ответ

правильный код для этого

<?
// http://huddak.net/bbs/board.php?bo_table=cm_free&wr_id=3629
function remove_nr($str) {
    $reg_e = array('/\n/', '/\r/', '/\"/', "/<\/script>/i"); 
    $reg_p = array(' ', ' ', '\\"', "<\/SCRIPT>"); 

    return preg_replace($reg_e, $reg_p, $str);
}
?>

<script type="text/javascript">
$("#test1").html( " <? echo remove_nr( trim( db_cache("main_top_naver_cache", 300, "naver_popular('naver_popular', 4)")))?> " ); 
</script>

вы можете потратить много времени на php-код на загрузку jquery. это сделает вашу страницу загруженной фантастикой.

2

Вместо прямого использования эха вы можете использовать json_encode() для кодирования данных, а затем использовать эхо, чтобы отправить его в jquery, это может решить вашу проблему.

  • 0
    Я использую echo для отображения данных на веб-странице, а не для отправки данных в другую программу. json_encode - хорошая функция, но не для меня.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню