Given that the number of domestic network companies is not a lot, the medium-sized definition means there is more than one full-time programmer to make a new network company of most features.
The content of customer relationships and demand analysis is not explored, and only the company has developed the company and the B / S application software direction and simple technical implementation.
The technology of making dynamic websites is already mature now, and many small companies can complete a lot of powerful dynamic sites. But most of the website architecture is still using the architecture of the previous static website, making a new website basically starting from the beginning, and is isolated, and there are fewer links to other websites, basically a friendly connection, No data sharing, no interactive operation. Therefore, I conceive the following website architecture, which can achieve maximum data sharing, and can modular development, reduce development cost, and improve development efficiency. At the same time, the website is also improved as the function of the information platform. This is: based on the primary database, with the main station as the core, web architecture based on Web Service idea. Overall, the development direction of the company's technical framework is that all public data (such as regional information, industry classification) is stored in the underlying database, providing data calls in XML format, and other websites can be converted with XSLT after calling data. This guarantees the unity of data, and a variety of performance forms can be provided. Well.
Further, BBS, information publishing system can use multiple user versions so that the functions of the website can basically be implemented through the background management system, making a website as long as it is designed to design it. Moreover, production companies can unite some customers, provide better services, for example, all companies have the content of recruitment, and make companies have their own recruitment websites or have a good relationship with good cooperation websites. The customer's website background management is an integrated recruitment system so that the customer is convenient, and the enthusiasm of the recruitment information has also increased, both parties benefit.
The following will be further implemented from the technical perspective:
I. The basis of the release of XML data is to release XML data. In SQL Server 2000, there are two release methods. First, the database own XML release, you can directly release the content within the database into XML documents, which is generated The data update is timely, generally not error, but the control of the data is not very free, it is inconvenient to query; the second is to generate an XML document with a server-side programming language such as ASP, which is relatively free, but to ensure that the database is updated. Update. Let's take a detailed introduction to generate an XML document with ASP: For example, generate the following document XML Version = "1.0" Encoding = "GB2312"?>
faatherid>
faatherid>
faatherid>
Catalogs> First create a database connection, generate a Recordset by the specified SQL statement, here you can customize the generated content by passing parameters. DIM XMLSTR XMLSTR = "
Second, the client's XSLT conversion is nothing to say here. If you don't have to use the XSLT to directly parse the XML document directly, but there is no way to define the style, so according to the layout of content and style classification, use XML to implement For details, please refer to the tutorial of XSLT, one provides an example: XML Version = "1.0" Encoding = "GB2312"?>
xsl: element>
xsl: element>
xsl: element>
xsl: template>
div> xsl: attribute> div> td> TR> TABLE> xsl: template> List.asp? catalogid = XSL: Value-of> xsl: attribute>
xsl: template> xsl: stylesheet> Third, the step of the client's call is more troublesome, it is also difficult. Overall, there will be three ways when the user calls: First, use the server-side script, such as ASP; first, using the client script, such as javascript; the other is to use flash. Here we only introduce the two of the previous, saying that it is two kinds, in fact, it is called the XML parser to work, the principle is the same, the code is as follows: ASP: <% Function ClassList (userid) 'Display all product categories Set Xmldoc = Server.createObject ("msxml2.domdocument") XMLDoc.async = false Xmldoc.resolveexternals = false IF Xmldoc.Load ("http://www.***.com/webservice/catalog.asp? Userid =" & userid) THEN Set xsldoc = server.createObject ("msxml2.domdocument") XSLDoc.async = false xsldoc.resolveexternals = false XSLDoc.Load (Server.Mappath ("Catalog.xsl"))) Response.write (xmldoc.transformnode (xsldoc)) Else Response.write ("Network Service call failed, please Retry ) END IF END FUNCTION Function ProductList (UserID, Catalog) 'Show the list of products below the current company's current class Set Xmldoc = Server.createObject ("msxml2.domdocument") XMLDoc.async = false Xmldoc.resolveexternals = false Xmldoc.Load ("http://www.***.com/webservice/productlist.asp? userid =" & userid & "& catalogid =" & catalogid) Set xsldoc = server.createObject ("msxml2.domdocument") XSLDoc.async = false xsldoc.resolveexternals = false XSLDoc.Load (Server.Mappath ("ProductList.xsl")) Response.write (xmldoc.transformnode (xsldoc.documentelement))) END FUNCTION Function ProductSearch (UserID, Search_Key) 'Show the list of products below the current company's current class Set Xmldoc = Server.createObject ("msxml2.domdocument") XMLDoc.async = false Xmldoc.resolveexternals = false Xmldoc.Load ("http://www.***.com/webservice/productlist.asp? userid =" & userid & "& search_key =" & search_key) Set xsldoc = server.createObject ("msxml2.domdocument") XSLDoc.async = false xsldoc.resolveexternals = false XSLDoc.Load (Server.Mappath ("ProductList.xsl")) Response.write (xmldoc.transformnode (xsldoc.documentelement))) END FUNCTION Function ProductDetail (UserID, ProductID, PriceID) 'Display the current company's current product details set Xmldoc = Server.createObject ("msxml2.domdocument") XMLDoc.async = false Xmldoc.resolveexternals = false XMLDoc.Load ("http://www.**.com/webservice/productdetail.asp? userid =" & usreid & "& products)" & producer "& quitId =" & praic) Set xsldoc = server.createObject ("msxml2.domdocument") XSLDoc.async = false xsldoc.resolveexternals = false XSLDoc.Load (Server.Mappath ("ProductDetail.xsl"))) Response.write (xmldoc.transformnode (xsldoc.documentelement))) END FUNCTION %> The way the way is as follows: <% = ClassList ("userid")%> <% = ProductList ("UserID", 304)%> <% = ProductDetail ("UserID", 13494, 20121)%> JavaScript version: Function QueryString (SNAME) { Var ssource = string (window.document.location); VAR SRETURN = "" Var squs = "?"; VAR SAMP = "&"; VAR SEQ = "="; Var ipos; IPOS = ssource.indexof (SQUS); Var strquery = ssource.substr (IPOS, SSOURCE.LENGTH - IPOS); Var strlcQuery = strQuery.tolowercase (); Var strlcname = sname.tolowercase (); IPOS = strlcquery.indexof (SQUS Strlcname SEQ); IF (ipos == -1) { IPOS = strlcQuery.indexof (Samp StrlcName SEQ); IF (ipos == -1) ""; " } Sreturn = strquery.substr (IPOS SNAME.LENGTH 2, STRQUERY.LENGTH- (IPOS SNAME.LENGTH 2); Var iposamp = sreturn.indexof (SAMP); IF (iposamp == -1) Return Sreturn; Else { sreturn = sreturn.substr (0, iposamp); Return Sreturn; } // Call the displayed function Function classlist (userid) { // Display all company product categories Var err_str = "Network service call failed, please Retry ." // Show the list of products below the current company's current class VAR XMLDoc = New ActiveXObject ("msxml2.domdocument"); Xmldoc.async = false; Xmldoc.resolveexternals = false; XMLFileName = "http://www.**.com/webservice/productlist.asp? userid =" userid "& catalogid =" catalog; Xmldoc.load (); IF (xmldoc.load (xmlfilename)) { IF (xmldoc.documentelement.childnodes.length> 0) { Var xsldoc = new activXObject ("msxml2.domdocument"); xsldoc.async = false; xsldoc.resolveexternals = false; XSLDoc.Load ("ProductList.xsl"); Return XMLDoc.TransFormNode (xsldoc.documentelement); } else { Return Err_STR & "The number of child nodes is zero."; } else { Return Err_STR; } } Function ProductSearch (userid, search_key) { Var err_str = "Network service call failed, please
VAR XMLDoc = New ActiveXObject ("msxml2.domdocument"); Xmldoc.async = false; Xmldoc.resolveexternals = false; XMLFileName = "http://www.**.com/webservice/productlist.asp? userid =" userid "& search_key =" search_key XMLDoc.Load (XMLFileName); IF (xmldoc.load (xmlfilename)) { IF (xmldoc.documentelement.childnodes.length> 0) { Var xsldoc = new activXObject ("msxml2.domdocument"); xsldoc.async = false; xsldoc.resolveexternals = false; XSLDoc.Load ("ProductList.xsl"); Return XMLDoc.TransFormNode (xsldoc.documentelement); } else { Return Err_STR & "The number of child nodes is zero." } } else { Return Err_STR; } } Function ProductDetail (UserID, ProductID, PriceId) { |