Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    modifica script ajax periodic refresh

    Salve a tutti ,

    premetto conosco poco javascript.

    ho trovato in rete questo script .js

    praticamente è un temporizzatore che richiama uno script php ogni qualvolta viene inserito un nuovo commento (vedi sotto). Vengo subito al sodo:

    oltre al messaggio vorrei che venga passata anche l'immagine presente nell'sql . Ho provato in vari modi ma niente da fare il tag href lo legge ma quando vado ad inserire l'immagine (<img src..>) non lo legge, o meglio legge solo il contenuto del campo del db immagine (miaimmagine.jpg) . Qualcuno può aiutarmi.
    Per chi fosse interessato allo script completo posso inviare lo zip completo.

    Grazie infinite

    <script>
    var oXmlHttp = null;
    var iInterval = 10000;
    var iLastCommentId = -1;
    var divNotification = null;

    function checkComments() {
    if (!oXmlHttp) {
    oXmlHttp = zXmlHttp.createRequest();
    } else if (oXmlHttp.readyState != 0) {
    oXmlHttp.abort();
    }

    oXmlHttp.open("get", "CheckComments.php", true);
    oXmlHttp.onreadystatechange = function () {

    if (oXmlHttp.readyState == 4) {
    if (oXmlHttp.status == 200) {

    var aData = oXmlHttp.responseText.split("||");
    if (aData[0] != iLastCommentId) {

    iLastCommentId = aData[0];

    if (iLastCommentId != -1) {
    showNotification(aData[1], aData[2]);
    }

    }

    setTimeout(checkComments, iInterval);
    }
    }
    };

    oXmlHttp.send(null);

    }

    function showNotification(sName, sMessage) {
    if (!divNotification) {
    divNotification = document.createElement("div");
    divNotification.className = "notification";
    document.body.appendChild(divNotification);
    }

    divNotification.innerHTML = "New Comment
    " + sName
    + " says: " + sMessage + "...
    <a href=\"ViewComment.php?id="
    + iLastCommentId + "\">View</a>";
    divNotification.style.top = document.body.scrollTop + "px";
    divNotification.style.left = document.body.scrollLeft + "px";
    divNotification.style.display = "block";
    setTimeout(function () {
    divNotification.style.display = "none";
    }, 5000);
    }

    //if Ajax is enabled, assign event handlers and begin fetching
    window.onload = function () {
    if (zXmlHttp.isSupported()) {
    checkComments();
    }
    };

    </script>




    ....script php



    <?php
    header("Cache-control: No-Cache");
    header("Pragma: No-Cache");

    //database information
    $sDBServer = "your.database.server";
    $sDBName = "your_db_name";
    $sDBUsername = "your_db_username";
    $sDBPassword = "your_db_password";

    //create the SQL query string
    $sSQL = "select CommentId,Name,images LEFT(Message, 50) as ShortMessage from BlogComments order by Date desc limit 0,1";

    $oLink = mysql_connect($sDBServer,$sDBUsername,$sDBPassword );
    @mysql_select_db($sDBName) or die("-1|| || ");

    if($oResult = mysql_query($sSQL) and mysql_num_rows($oResult) > 0) {
    $aValues = mysql_fetch_array($oResult,MYSQL_ASSOC);
    echo $aValues['CommentId']."||".$aValues['Name']."||".$aValues['ShortMessage'];
    } else {
    echo "-1|| || ";
    }

    mysql_free_result($oResult);
    mysql_close($oLink);
    ?>
    Realizzazione siti web

  2. #2
    ....ah dimenticavo, per poter funzionare è necessario caricare anche questo script nell'head della pagina contenente il div.

    questo script si chiama zxml.js



    <script>

    var zXml={useActiveXtypeof ActiveXObject!="undefined"),useDom:document.implem entation&&document.implementation.createDocument,u seXmlHttptypeof XMLHttpRequest!="undefined")};zXml.ARR_XMLHTTP_VER S=["MSXML2.XmlHttp.5.0","MSXML2.XmlHttp.4.0","MSXML2. XmlHttp.3.0","MSXML2.XmlHttp","Microsoft.XmlHttp"];zXml.ARR_DOM_VERS=["MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0", "MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Mic rosoft.XmlDom"];;function zXmlHttp(){}zXmlHttp.createRequest=function(){if(z Xml.useXmlHttp){return new XMLHttpRequest();}else if(zXml.useActiveX){if(!zXml.XMLHTTP_VER){for(var i=0;i<zXml.ARR_XMLHTTP_VERS.length;i++){try{new ActiveXObject(zXml.ARR_XMLHTTP_VERS[i]);zXml.XMLHTTP_VER=zXml.ARR_XMLHTTP_VERS[i];break;}catch(oError){;}}}if(zXml.XMLHTTP_VER){ret urn new ActiveXObject(zXml.XMLHTTP_VER);}else{throw new Error("Could not create XML HTTP Request.");}}else{throw new Error("Your browser doesn't support an XML HTTP Request.");}};zXmlHttp.isSupported=function(){retu rn zXml.useXmlHttp||zXml.useActiveX;};function zXmlDom(){}zXmlDom.createDocument=function(){if(zX ml.useDom){var oXmlDom=document.implementation.createDocument("", "",null);oXmlDom.parseError={valueOf:function(){re turn this.errorCode;},toString:function(){return this.errorCode.toString()}};oXmlDom.__initError__( );oXmlDom.addEventListener("load",function(){this. __checkForErrors__();this.__changeReadyState__(4); },false);return oXmlDom;;}else if(zXml.useActiveX){if(!zXml.DOM_VER){for(var i=0;i<zXml.ARR_DOM_VERS.length;i++){try{new ActiveXObject(zXml.ARR_DOM_VERS[i]);zXml.DOM_VER=zXml.ARR_DOM_VERS[i];break;}catch(oError){;}}}if(zXml.DOM_VER){return new ActiveXObject(zXml.DOM_VER);}else{throw new Error("Could not create XML DOM document.");}}else{throw new Error("Your browser doesn't support an XML DOM document.");}};zXmlDom.isSupported=function(){retu rn zXml.useDom||zXml.useActiveX;};var oMozDocument=null;if(typeof XMLDocument!="undefined"){oMozDocument=XMLDocument ;}else if(typeof Document!="undefined"){oMozDocument=Document;}if(o MozDocument&&!window.opera){oMozDocument.prototype .readyState=0;oMozDocument.prototype.onreadystatec hange=null;oMozDocument.prototype.__changeReadySta te__=function(iReadyState){this.readyState=iReadyS tate;if(typeof this.onreadystatechange=="function"){this.onreadys tatechange();}};oMozDocument.prototype.__initError __=function(){this.parseError.errorCode=0;this.par seError.filepos=-1;this.parseError.line=-1;this.parseError.linepos=-1;this.parseError.reason=null;this.parseError.srcT ext=null;this.parseError.url=null;};oMozDocument.p rototype.__checkForErrors__=function(){if(this.doc umentElement.tagName=="parsererror"){var reError=/>([\s\S]*?)Location[\s\S]*?)Line Number(\d+),Column(\d+):<sourcetext>([\s\S]*?)(?:\-*\^)/;reError.test(this.xml);this.parseError.errorCode=-999999;this.parseError.reason=RegExp.$1;this.parse Error.url=RegExp.$2;this.parseError.line=parseInt( RegExp.$3);this.parseError.linepos=parseInt(RegExp .$4);this.parseError.srcText=RegExp.$5;}};oMozDocu ment.prototype.loadXML=function(sXml){this.__initE rror__();this.__changeReadyState__(1);var oParser=new DOMParser();var oXmlDom=oParser.parseFromString(sXml,"text/xml");while(this.firstChild){this.removeChild(this .firstChild);}for(var i=0;i<oXmlDom.childNodes.length;i++){var oNewNode=this.importNode(oXmlDom.childNodes[i],true);this.appendChild(oNewNode);}this.__checkFor Errors__();this.__changeReadyState__(4);};oMozDocu ment.prototype.__load__=oMozDocument.prototype.loa d;oMozDocument.prototype.load=function(sURL){this. __initError__();this.__changeReadyState__(1);this. __load__(sURL);};Node.prototype.__defineGetter__(" xml",function(){var oSerializer=new XMLSerializer();return oSerializer.serializeToString(this,"text/xml");});Node.prototype.__defineGetter__("text",fu nction(){var sText="";for(var i=0;i<this.childNodes.length;i++){if(this.childNod es[i].hasChildNodes()){sText+=this.childNodes[i].text;}else{sText+=this.childNodes[i].nodeValue;}}return sText;});}function zXslt(){}zXslt.transformToText=function(oXml,oXslt ){if(typeof XSLTProcessor!="undefined"){var oProcessor=new XSLTProcessor();oProcessor.importStylesheet(oXslt) ;var oResultDom=oProcessor.transformToDocument(oXml);va r sResult=oResultDom.xml;if(sResult.indexOf("<transf ormiix:result")>-1){sResult=sResult.substring(sResult.indexOf(">")+ 1,sResult.lastIndexOf("<"));}return sResult;;}else if(zXml.useActiveX){return oXml.transformNode(oXslt);}else{throw new Error("No XSLT engine found.");}};function zXPath(){}zXPath.selectNodes=function(oRefNode,sXP ath,sXmlNs){if(typeof XPathEvaluator!="undefined"){oXmlNs=oXmlNs||{};var nsResolver=function(sPrefix){return oXmlNs[sPrefix];};var oEvaluator=new XPathEvaluator();var oResult=oEvaluator.evaluate(sXPath,oRefNode,nsReso lver,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null); var aNodes=new Array;if(oResult!=null){var oElement=oResult.iterateNext();while(oElement){aNo des.push(oElement);oElement=oResult.iterateNext(); }}return aNodes;}else if(zXml.useActiveX){if(oXmlNs){var sXmlNs="";for(var sProp in oXmlNs){sXmlNs+="xmlns:"+sProp+"="+oXmlNs[sProp]+" ";}oRefNode.ownerDocument.setProperty("SelectionNa mespaces",sXmlNs);};return oRefNode.selectNodes(sXPath);}else{throw new Error("No XPath engine found.");}};zXPath.selectSingleNode=function(oRefN ode,sXPath,oXmlNs){if(typeof XPathEvaluator!="undefined"){;oXmlNs=oXmlNs||{};va r nsResolver=function(sPrefix){return oXmlNs[sPrefix];};var oEvaluator=new XPathEvaluator();var oResult=oEvaluator.evaluate(sXPath,oRefNode,nsReso lver,XPathResult.FIRST_ORDERED_NODE_TYPE,null);if( oResult!=null){return oResult.singleNodeValue;}else{return null;};}else if(zXML.useActiveX){if(oXmlNs){var sXmlNs="";for(var sProp in oXmlNs){sXmlNs+="xmlns:"+sProp+"="+oXmlNs[sProp]+" ";}oRefNode.ownerDocument.setProperty("SelectionNa mespaces",sXmlNs);};return oRefNode.selectSingleNode(sXPath);}else{throw new Error("No XPath engine found.");}};function zXMLSerializer(){}zXMLSerializer.prototype.seriali zeToString=function(oNode){var sXml="";switch(oNode.nodeType){case 1:sXml="<"+oNode.tagName;for(var i=0;i<oNode.attributes.length;i++){sXml+=" "+oNode.attributes[i].name+"=\""+oNode.attributes[i].value+"\"";}sXml+=">";for(var i=0;i<oNode.childNodes.length;i++){sXml+=this.seri alizeToString(oNode.childNodes[i]);}sXml+="</"+oNode.tagName+">";break;case 3:sXml=oNode.nodeValue;break;case 4:sXml="<![CDATA["+oNode.nodeValue+"]]>";break;case 7:sXml="<?"+oNode.nodevalue+"?>";break;case 8:sXml="";break;case 9:for(var i=0;i<oNode.childNodes.length;i++){sXml+=this.seri alizeToString(oNode.childNodes[i]);}break;};return sXml;};




    </script>
    Realizzazione siti web

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.