科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件简单的XML留言板

简单的XML留言板

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

简单的XML留言板

作者: 来源:中国软件网 2008年6月21日

关键字: 留言板 简单 XML 软件

  • 评论
  • 分享微博
  • 分享邮件
主程序guestbook.php
<?php
//==========================================
// 文件名: guestbook.php
// 说 明: 简单的XML留言簿
// power by ice_berg16
//==========================================
class guestbook extends DOMDocument
{
public function __construct()
{
parent:: __construct();
if (!file_exists("guestbook.xml"))
{
$xmlstr = "<?xml version=''1.0'' encoding=''GB2312''?><messageList></messageList>";
$this->loadXML($xmlstr);
$this->save("guestbook.xml");
}
else
$this->load("guestbook.xml");
}
//==========================================
// 函数: addMessage
// 功能: 添加一条留言
// 参数: $userName 留言人名称
// 参数: $message 留言内容
// 参数: $postTime 留言时间
// 返回: 1 成功 0 失败
//==========================================
public function addMessage($userName, $content, $postTime)
{
$root = $this->documentElement;
$id = $this->getElementsByTagName("id")->length+1;
$Nid = $this->createElement("id");
$text = $this->createTextNode(iconv("GB2312","UTF-8",$id));
$Nid->appendChild($text);
$NuserName = $this->createElement("userName");
$text = $this->createTextNode(iconv("GB2312","UTF-8",$userName));
$NuserName->appendChild($text);
$Ncontent = $this->createElement("content");
$text = $this->createTextNode(iconv("GB2312","UTF-8",$content));
$Ncontent->appendChild($text);
$NpostTime = $this->createElement("postTime");
$text = $this->createTextNode(iconv("GB2312","UTF-8",$postTime));
$NpostTime->appendChild($text);
$Nmessage = $this->createElement("message");
$Nmessage->appendChild($Nid);
$Nmessage->appendChild($NuserName);
$Nmessage->appendChild($Ncontent);
$Nmessage->appendChild($NpostTime);
$root->appendChild($Nmessage);
if ($this->save("guestbook.xml"))
{
return 1;
}
else
return 0;

}
//==========================================
// 函数: delMessage($id)
// 功能: 根据信息ID删除一条信息
// 参数: $id 留言编号
// 返回: 1 成功 0 失败
//==========================================
function delMessage($id)
{
$root = $this->documentElement;
$xpath = new DOMXPath($this);
$Nmessage = $xpath->query("//message[id=$id]");
if ($root->removeChild($Nmessage->item(0)))
{
$this->save("guestbook.xml");
return 1;
}
else
return 0;
}
}

if (isset($_POST[''add'']))
{
$guestbook = new guestbook;
$now = date("Y-m-d H:i:s");
if ($guestbook->addMessage($_POST[''userName''],$_POST[''content''],$now))
{
echo "<script>alert(''添加成功'');location.href=http://www.ddvip.com/web/xml/index2/''".$_SERVER[''PHP_SELF'']."''</script>";
}

}
if (isset($_GET[''method'']) && $_GET[''method''] == "del")
{
$guestbook = new guestbook;
if ($guestbook->delMessage($_GET[''id'']))
{
echo "<script>alert(''删除成功'');location.href=http://www.ddvip.com/web/xml/index2/''".$_SERVER[''PHP_SELF'']."''</script>";
}
}
else
{
$script = <<<SCRIPT
<script>
var xml = new ActiveXObject("Msxml2.DOMDocument");
var xsl = new ActiveXObject("Msxml2.DOMDocument");
xml.async = false;
xml.load("guestbook.xml");
xsl.async = false;
xsl.load("guestbook.xsl");
document.write(xml.transformNode(xsl));
</script>
SCRIPT;
$form = <<<FORM
<form method=''post'' action=''guestbook.php''>
<input type=text name=''userName'' size=20><br/>
<textarea name=''content'' cols=50 rows=5></textarea><br/>
<input type=''submit'' name=''add'' value=''添加留言''>
FORM;
echo $script;
echo $form;
//*/
}
?>
-------样式表guestbook.xsl-----------------
<?xml version=''1.0'' encoding=''GB2312''?>
<xsl:stylesheet version=''1.0'' xmlns:xsl="ttp://www.w3.org/1999/XSL/Transform">
<xsl:template match="/messageList">
<table style=''font-size:12px;'' width=''60%'' cellpadding=''5'' cellspacing=''1'' bgcolor=''#999999''>
<xsl:for-each select=''message''>
<tr>
<td style=''color:#FFFFFF''>
<xsl:value-of select="userName" />
&#160;At&#160;
<xsl:value-of select="postTime" />
&#160;&#160;&#160;&#160;&#160;
<xsl:element name="A">
<xsl:attribute name="href">guestbook.php?method=del&amp;id=<xsl:value-of select="id" /></xsl:attribute>
删除
</xsl:element>
</td>
</tr>
<tr bgcolor=''#FFFFFF''>
<td><xsl:value-of select="content" /></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章