如何将 html 和 php 代码存储在要回显到 html 页面的 php 变量中
Posted
技术标签:
【中文标题】如何将 html 和 php 代码存储在要回显到 html 页面的 php 变量中【英文标题】:how to store html and php code inside a php variable to be echoed to a html page 【发布时间】:2012-11-05 19:36:29 【问题描述】:我正在尝试将包含一些 php 代码的整个 html 字符串回显到 html 页面,问题是,我无法将字符串存储到 php 变量中;
prependapp.php
<?php
include("db.php");
include("tolink.php");
$result=mysql_query("select * from messages order by msg_id desc");
$row=mysql_fetch_array($result);
$id=$row['msg_id'];
$msg=$row['message'];
$date=$row['date_sent'];
$msg= nl2br($msg);
$msg="<br>$msg<br>$date";
$app = <<<EOD
<li class="bar<?php echo $id; ?>">
<div align="left" class="post_box">
<span style="padding:10px"><?php echo $msg; ?> </span>
<span class="delete_button"><a href="#" id="<?php echo $id; ?>" class="delete_update">X</a></span>
<span class='feed_link'><a href="#" class="comment" id="<?php echo $id; ?>">comment</a></span>
</div>
<div id='expand_box'>
<div id='expand_url'></div>
</div>
<div id="fullbox" class="fullbox<?php echo $id; ?>">
<div id="commentload<?php echo $id; ?>" >
</div>
<div class="comment_box" id="c<?php echo $id; ?>">
<form method="post" action="" name="<?php echo $id; ?>">
<textarea class="text_area" name="comment_value" id="textarea<?php echo $id; ?>">
</textarea><br />
<input type="submit" value=" Comment " class="comment_submit" id="<?php echo $id; ?>"/>
</form>
</div>
</div>
</li>
EOD;
echo $app;
?>
html页面内的javascript
<script>
$(document).ready(function()
$("#formID").validationEngine(
ajaxSubmit: true,
ajaxSubmitFile: "update_ajax.php",
success : function()
alert("success exe!");
$("ol#update").load("prependapp.php");
$("ol#update li:first").slideDown("slow");
document.getElementById('content').value='';
$('#content').value='';
$('#content').focus();
alert("success exe");
,
failure : function() alert("success fail");
)
);
</script>
我前面的“测试”总是显示问题是 $app 没有,我有什么办法可以将带有一些 php 代码的大型 html 代码添加到我的 html 页面中?
【问题讨论】:
【参考方案1】:您不能在 javascript 部分中使用 PHP 代码。请注意 PHP 将在服务器端呈现,而 javascript 将在客户端浏览器中执行。因此,浏览器无权访问任何PHP variables and objects
。
但是,您可以使用AJAX
。例如:
$.ajax(
url : "/server/prepend.php",
success : function(response)
$("ol#update").prepend(response);
,
);
将在服务器端执行 php 代码并将结果添加到 ol#update 标记中。
【讨论】:
它加载了 php 脚本,但没有将 html 代码添加到我的 ol 标签中 这只是一个例子,你可以用ajax做各种各样的事情。您还可以看到 ***.com/questions/1906066/jquery-prepend-fadein 用于 ajax 前置 我做了什么将 html 封装到 EOD 然后在之后回显 现在的问题是我该如何添加它,因为每次执行它时它都会替换 html 我能不能像 $("ol#update").prepend(.load("prependapp.php"));以上是关于如何将 html 和 php 代码存储在要回显到 html 页面的 php 变量中的主要内容,如果未能解决你的问题,请参考以下文章