jquery - 将 XML 数据发送到 MySQL 数据库

标签 jquery mysql xml forms

我正在尝试将 XML 对象发送到数据库。我有一些表单的 POST 数据,我将其转换为 XML 对象,我希望将其发送到数据库,这种方式允许表单创建其他输入,并且我可以稍后调用并使用 XML 对象来填充表单以防用户想要编辑其表单。我怎样才能以这种方式发送这些数据?任何和所有的帮助将不胜感激!感谢 gfrobenius,这就是我创建 XML 对象的方法:

JQuery:

//Grab all the POST info, turn it into a valid XML object and store it
$postData = null;
if($_SERVER['REQUEST_METHOD'] == 'POST' && count($_POST) > 0) $postData = assocArrayToXML('POST_DATA',$_POST);
//The assocArrayToXML returns the XML object with page breaks, we need a stright non-breaking string
//so that the flexigrid can display the results properly.
$postData = str_replace(chr(13), '', $postData);
$postData = str_replace(chr(10), '', $postData);

功能:

 function assocArrayToXML($root_element_name,$ar)
    {
      $xml = new SimpleXMLElement("<?xml version=\"1.0\"?><{$root_element_name}></{$root_element_name}>");
      $f = create_function('$f,$c,$a','
              foreach($a as $k=>$v) {
                  if(is_array($v)) {
                      $ch=$c->addChild(htmlspecialchars($k));
                      $f($f,$ch,$v);
                  } else {
                      $c->addChild($k,htmlspecialchars($v));
                  }
              }');
      $f($f,$xml,$ar);
      return $xml->asXML();
    }

最佳答案

我不确定 XML 对象是什么,但这就是我将 XML 传递到数据库的方式。

我会使用ajax(jQuery或纯JS)将其从客户端传递到一些服务器代码(页面或Web服务中的Web方法),该代码挂接到数据库中,将XML字符串作为参数传递给存储的过程或参数化 SQL。

应该是大约 20-30 行代码,并且您可以在网络上的一百万个地方找到有关如何执行此操作的示例。

编辑:

jQuery 示例:http://api.jquery.com/jquery.ajax/

JavaScript 示例:https://developer.mozilla.org/en-US/docs/AJAX/Getting_Started

关于jquery - 将 XML 数据发送到 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21486681/

相关文章:

javascript - 使用 jquery 获取特定的 id

php - 在我将 Wordpress 移动到新服务器后,Facebook 无法抓取元数据

android - imageview 不显示图像 android

java - Launch4j 将 jar 转为 exe

c# - 如何在 ASP.NET CORE 中签署 XML SAML 断言

JQuery 数据表行高

javascript - 处理 .load() 未找到错误

javascript - 页面加载时,不会调用 window.onload 中的窗口调整大小函数

当两个表具有相同的 ID 时,PHP/SQL 选择所有与连接

php - 在 PHP 中显示 12 个月的数据