VML绘图板①主控--VMLgraph.htm

 更新时间:2016年11月25日 16:56  点击:1606
主控
***************
* VMLgraph.htm
***************
<html>
<xmlns:v="urn:schemas-microsoft-com:vml" />
<head>
<meta http-equiv="Content-type" content="text/html; charset=gb2312">
<title>VML绘图板</title>
<style>
v:* { behavior: url(#default#VML); }
td { font-size:9pt; }
</style>
</head>
<script src="VMLgraph.js"></script>
<script src="XMLtool.js"></script>
<script language="JavaScript">
// 钩子函数,当选择了工具时被调用
function hooke() {
}
</script>
<body onLoad="init()">
<table>
<tr>
    <td width=61 valign=top>
     <span id="toolbox"></span><br>
     <span id="linebox"></span><br>
     <span id="opacity1"></span><br>
    </td>
    <td valign=top>
     <span id="view" align=left valign=top>
    你的浏览器可能不支持VML!请使用IE5+。需要xml3.0支持。<br>
    最佳效果出现在IE6。
     </span>
    </td>
    <td valign=top>
     <input type=button value="刷新" style="height:16; border:1px solid #C0C0C0;" onClick="view.innerHTML=tree(canvas.documentElement,0)">
     <input type=button value="保存" style="height:16; border:1px solid #C0C0C0;" onClick="saveXML()"><br><br>
     <span id="gradientBox"></span><br>
原创:
作者:xiaocon
邮箱:xiaocon@21cn.com
转载请注明出处
一 php与XML、XSLT、Mysql的结合运用,安装篇
    经常看到有用户问一些关于php与XML、数据库结合运用的贴子,也经常看到一些初学者
    把php代码与HTML代码混写到一起,然后在出错的时候找不到错误,急得团团转,下面我就给大
    家讲一下如何用XML技术将HTML代码和PHP程序分离,当然,分离的技术有好多种,比如PEAR中
    的IT模板.
    总的来说,个人认为使用XML技术是最方便的,废话不多说了,我们言归正传,
    讲一下在win2000下的安装
    使用php中的xml与xslt要用到一些dll库,
    extension=php_domxml.dll     //操作XML的函数库
    extension=php_iconv.dll    //转码用的,比如将GB2312的转成UTF-8的
    extension=php_xslt.dll     //XSLT的函数库
    
    使用上面这三个库的时候,你要将php安装目录下的dlls目录加入到路径中,否则会找不到
    这些类库的
    
    在下面的课程中,我们会用到php中的PEAR类库,主要用了DB类库,Sql2XML类库,大家可以在
    pear.php.net上下载最新的版本
    下载完上面二个类库以后,大家最好在php.ini中设置一下
    include_path = ".;d:phppear"
    
    d:phppear    是我的pear的安装路径
    
    设置完以后,重新启动一下机器,否则因为路径找不到而导致Apache启动不正常,无法正常使用
    
    
    至此要使用PHP中的XML和XSLT的设置就完成了,是不是很简单:)
    使用Linux的用户可以到
    <?php    
    require_once "DB.php";       //PEAR中的数据库处理类
    $dataType = "mysql" ;       //数据库类型
    $user = "root";          //用户名
    $pass = "abcd" ;           //密码
    $host="202.96.215.200";       //Mysql数据库服务器地址
    $db_name = "test";           //数据库名
    $dsn="$dataType://$user:$pass@$host/$db_name";     //连接数据库的DNS配制
    $db = DB::connect($dsn);        //连接数据库
    if (DB::isError($db))
    {       
        die ($db->getMessage());    //连接失败,输出出错信息
    }
    
    //下面二个是公共的函数
    /**
     * 读取xsl文档
     *
     * @param String $filename - xsl文件的名称
     * @return string
     */
    function readXsl($filename)
    {    
        if(false==file_exists($filename))
        {
       echo "要读取的文件<font color='red'>$filename</font>不存在</br />";    
example1.php
<?php
include_once("XML/sql2xml.php");
$sql2xmlclass = new xml_sql2xml("mysql://username:password@localhost/xmltest");
$xmlstring = $sql2xmlclass->getxml("select * from bands");
?>


XML是作为数据交换标准而出现的。Java和.NET都内在支持XML,但是其它平台上的开发者也不用担心自己被这项技术所遗弃了。PHP就是一个颇受欢迎的支持XML的脚本环境。

在本文中,我将向你介绍利用诸如PHP和MySQL这样的开放源码工具来处理XML的过程。我将以执行一个MySQL查询并把从查询所得到数据格式化为XML为例来加以说明。最后,在开始埋头编写代码之前,我将介绍如何把XML写入文件并检测系统设置。
为了可以运行本文所给出的代码,你需要能过运行PHP和MySQL,而且为了充分利用这些例子,你还需要知道主机名、用户名和口令。例子中的MySQL数据库的格式如图A所示。让我们看看如何用PHP来连接该数据库。
图A
用PHP建立数据库连接
下面的PHP脚本建立到数据库的连接并执行一个查询:

<?php
$db_name = "xrandomusa_4";
$connection = mysql_connect("MySQL.somewhere.com", "username", "password") or die("Could not connect.");
$table_name = 'pages';

查询MySQL
在MySQL连接建立之后,你必须用该连接来建立当前数据库。下面的代码就是用来完成这个任务的:

$db = mysql_select_db($dbName, $link);
现在,用一个SQL语句来选择$table_name中的所有行:
$query = "select * from " . $table_name;
如有必要,你可以随后添加属性。现在,如下执行查询:
$result = mysql_query($query, $connection) or die("Could not complete database query");
$num = mysql_num_rows($result);
你可以通过PHP.net网站来获得关于所有MySQL函数的参考资料。
建立并编写XML
现在,你应该已经做好了建立新XML文档的准备了。这有许多种方法,不过我认为清单A中所用到的方法可以满足绝大多数目的。
现在我们详细介绍这一过程。变量num表示你查询的数据行出现与否,它对MySQL的mysql_num_rows函数是可测的。变量$file包含了一个指针,该指针指向PHP在文件系统中成功的搜索到results.xml时所产生文件对象。如果找到result.xml,则创建你的PHP文件对象以及指定文件,且其属性是可写的。现在你可以把一个变量的内容打印到创建后的文件(由于你的目录已经设置为允许PHP写文件,所以这么做是没有问题的)。
注意,从安全的角度来考虑,在实际的应用程序开发中这么做其实是很愚蠢的。为了确保你能够安全的实现本文所涉及的概念,你应该为你所希望打开并写入的文件提供完全路径,并确保该文件位于你的Web根目录之下。
[!--infotagslink--]

相关文章

  • 深入c# GDI+简单绘图的具体操作步骤(二)

    本篇文章是对GDI+简单绘图的绘图知识进行了详细的分析介绍,需要的朋友参考下...2020-06-25
  • 将matplotlib绘图嵌入pyqt的方法示例

    这篇文章主要介绍了将matplotlib绘图嵌入pyqt的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-27
  • R语言绘图时输出希腊字符上下标及数学公式实现方法

    这篇文章主要为大家介绍了R语言进行绘图时输出希腊字符上标,下标及数学公式的实现方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...2021-11-06
  • 使用matplotlib的pyplot模块绘图的实现示例

    这篇文章主要介绍了使用matplotlib的pyplot模块绘图的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-12
  • Python下使用Trackbar实现绘图板

    这篇文章主要为大家详细介绍了Python下使用Trackbar实现绘图板,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-10-28
  • 如何用R语言绘制饼图和条形图

    这篇文章主要介绍了如何用R语言绘制饼图和条形图,帮助大家更好的理解和学习使用R语言,感兴趣的朋友可以了解下...2021-05-06
  • R语言绘制Vonoroi图的完整代码

    今天来给大家分享一篇教程关于R语言绘制Vonoroi图的完整代码,包括deldir包绘制Voronoi图,ggplot2绘制Voronoi图的实现代码,感兴趣的朋友跟随小编一起看看吧...2021-06-21
  • VML绘图板②脚本--VMLgraph.js、XMLtool.js

    脚本 ************* * VMLgraph.js ************* var xo=0; var yo=0; var ox=80; var oy=20; var dx=0; var dy=0; var drawKey = false; var itemID = 0; var Shap...2016-11-25
  • C#打印绘图的实现方法

    这篇文章主要介绍了C#打印绘图的实现方法,涉及C#针对图片的绘制与打印相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • Python绘制组合图的示例

    这篇文章主要介绍了Python如何绘制组合图,帮助大家更好的利用python绘制图像,进行数据可视化分析,感兴趣的朋友可以了解下...2020-09-17
  • 三星LG因在美签“互不挖角”协议遭集体诉讼

    新浪科技讯 北京时间9月13日凌晨消息,据上周在美国提起的一桩民事诉讼案显示,三星电子和LG电子已因同意“互不挖角”对方的美国员工而遭到起诉,这种指控在硅谷公司中已变得司空见惯。...2016-09-28
  • 深入c# GDI+简单绘图的具体操作步骤(一)

    本篇文章是对GDI的基础知识进行了详细的分析介绍,需要的朋友参考下...2020-06-25
  • 解决使用Spyder IDE时matplotlib绘图的显示问题

    这篇文章主要介绍了解决使用Spyder IDE时matplotlib绘图的显示问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-24
  • JavaScript 绘制饼图的示例

    这篇文章主要介绍了JavaScript 绘制饼图的示例,帮助大家更好的利用JavaScript绘制图表,感兴趣的朋友可以了解下...2021-02-20
  • 深入c# GDI+简单绘图的具体操作步骤(三)

    前两篇已经基本向大家介绍了绘图的基本知识.那么,我就用我们上两篇所学的,做几个例子.我们先来做一个简单的--仿QQ截图...2020-06-25
  • LG公布新款虹膜扫描仪:用于明年旗舰机

    据韩国媒体报道,LG电子在上周正式对外公布了一款新型的虹膜扫描仪,这款扫描仪将以手机模块的形式对外发售。LG的G6极有可能是首款支持这一模块的智能手机。虹膜识别技术并非是一项非常先进的技术,无疑三星和LG两家韩国厂商在这项技术领域里走在了前列。...2016-11-11
  • 详解PyQt5 GUI 接收UDP数据并动态绘图的过程(多线程间信号传递)

    这篇文章主要介绍了PyQt5 GUI 接收UDP数据并动态绘图(多线程间信号传递),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-09-08
  • Painter加绘图板手绘清新情侣图教程

    今天小编在这里就来给Painter的这一款软件的使用者们来说一下结合绘图板手绘清新情侣图的教程,各位想知道具体绘制步骤的使用者,那么下面就快来看一下小编的这一篇文章...2016-09-14
  • 微信小程序 绘图之饼图实现

    这篇文章主要介绍了微信小程序 绘图之饼图实现的相关资料,需要的朋友可以参考下...2016-10-25
  • 中国能源公司扩大产能 与LG等行业巨头展开竞争

    导语:路透社今天撰文称,在政策和市场的双重刺激下,中国宁德时代新能源有限公司正在加紧扩大产能,并将与日本松下和韩国LG化学等行业巨头展开竞争。以下为文章全文:宁德,中国东南部的一座三线城市,它的郊外有一座尘土漫天的村庄。在多数人看来,这里似乎都不可能是未来全球汽车技术领导者的总部所在地。...2016-12-31