我下了一个flash+xml的相册,但不知道怎么与数据库MySQL相结合。
还没学XML,PHP也没学多深,但是急需要,请各位伸伸援手,谢谢!!最好能出实例
我的问题是:
数据库 db,表 photo,
1.当上传图片成功时,怎么同时把上传图片的信息存入XML文件中?
2.当在后台对photo删除数据成功时,怎么同时把该图片的信息从XML中删除?
3.当在后台对photo修改数据成功时,怎么同时修改XML文件中该图片的信息?

解决方案 »

  1.   

    用php动态输出下边的内容,flash不要读取xml文件了,直接读取a.php,就行了
    假如该文件的名字叫a.php$Xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
    $Xml.= "<urlset>";
    $Xml.= "<url>";
    $Xml.= "<loc>a</loc>";
    $Xml.= "<last>b</last>";
    $Xml.= "</url>";
    $Xml.= "</urlset>";
    Echo $Xml;
    Die();
      

  2.   

    或者用下边得代码生成xml文件,然后flash读取该xml文件
    如果图片上传了或修改删除了,那么你就用php重新生成一下该xml文件就行了
    $Xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
    $Xml.= "<urlset>";
    $Xml.= "<url>";
    $Xml.= "<loc>a</loc>";
    $Xml.= "<last>b</last>";
    $Xml.= "</url>";
    $Xml.= "</urlset>";File_Put_Contents("../sitemaps.xml",$Xml,LOCK_EX);
    Die();
      

  3.   

    //这是我照着上面写的,有错误,请帮我改改!!!我的意思是想把数据库的记录,照着xml的格式遍历,但是没成功生成xml记录。d.php 页面内容
    require_once ("mysql.php");
    $Xml = "<?xml version=\"1.0\" encoding=\"gb2312\"?>";
    $sql = "select * from photo order by id ASC ";
    $rs = mysql_query($sql, $mysql->conn);
    list($cnt)=mysql_fetch_row($rs);
    //echo $cnt;表中数据总数
    $i=1;if ($rs) {
    while ($i<=$cnt & $rows = mysql_query($rs)) {
    $i=$i++;
    $Xml .= "<gallery>";
    $Xml .= "<photo>";
    $Xml .= "<filename>$rows[photo_url]</filename>";
    $Xml .= "<phototitle>$rows[photo_introduce] - 图片$i++(给图片按数据总数加个序号)</phototitle>";
    $Xml .= "</photo>";
    $Xml .= "</gallery>";
    }
    }
    File_Put_Contents("sitemaps.xml", $Xml, LOCK_EX);
    Die();
    //图片上传后,数据传到处理页面(x.php),写入数据库成功后,用什么函数触发d.php(上面要修改的文件),使得自动更新xml页面。
      

  4.   

    把错误信息贴出来
    另外在<?xml version="1.0" encoding="gb2312"?>之前不能有任何输出.你可以把这个产生xml文件的代码封装成function,代码上传完毕马上调用此function就行了
      

  5.   

    你也可以在PHP文件头上加上
    header("Content-Type:text/xml");
    这一句,输出一下HTTP Content-type头信息,高速浏览器这个文件是xml文件
      

  6.   

    你也可以用  php内置的类  SimpleXMLElement();