<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Webmaster Widget &#187; AJAX</title> <atom:link href="http://www.webmasterwidget.com/topic/ajax/feed" rel="self" type="application/rss+xml" /><link>http://www.webmasterwidget.com</link> <description>best resource for webmasters and web developers</description> <lastBuildDate>Sun, 28 Aug 2011 10:34:50 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.1</generator> <item><title>Adobe Integrated Runtime &#8211; Introduction</title><link>http://www.webmasterwidget.com/article/adobe-integrated-runtime-introduction</link> <comments>http://www.webmasterwidget.com/article/adobe-integrated-runtime-introduction#comments</comments> <pubDate>Thu, 25 Aug 2011 03:35:10 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Adobe flash]]></category> <category><![CDATA[Adobe Flash]]></category> <category><![CDATA[Adobe flex]]></category> <category><![CDATA[Adobe integrated runtime]]></category> <category><![CDATA[Adobe integrated runtime - introduction]]></category> <category><![CDATA[Adobe Systems]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Application Software]]></category> <category><![CDATA[Cross Platform]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Rich internet application]]></category> <category><![CDATA[Run Time]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/adobe-integrated-runtime-introduction</guid> <description><![CDATA[Adobe Integrated Runtime (AIR), also known as Adobe AIR, is a cross-platform runtime environment developed by Adobe Systems for building rich Internet applications using Adobe Flash, Adobe Flex, HTML, or Ajax, that can be deployed as desktop applications. Adapted from the Wikipedia article Adobe Integrated Runtime, under the G. N. U. Free Documentation License. Please [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Adobe Integrated Runtime (AIR), also known as Adobe AIR, is a cross-platform runtime environment developed by Adobe Systems for building rich Internet applications using Adobe Flash, Adobe Flex, HTML, or Ajax, that can be deployed as desktop applications.</p><p>Adapted from the Wikipedia article Adobe Integrated Runtime, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/adobe-integrated-runtime-introduction/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Progressive enhancement &#8211; Support and adoption</title><link>http://www.webmasterwidget.com/article/progressive-enhancement-support-and-adoption</link> <comments>http://www.webmasterwidget.com/article/progressive-enhancement-support-and-adoption#comments</comments> <pubDate>Wed, 24 Aug 2011 04:36:57 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Web Design]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Dave shea]]></category> <category><![CDATA[Progressive enhancement]]></category> <category><![CDATA[Progressive enhancement - support and adoption]]></category> <category><![CDATA[Web standards project]]></category> <category><![CDATA[Wt - web toolkit]]></category> <category><![CDATA[Yahoo]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/progressive-enhancement-support-and-adoption</guid> <description><![CDATA[*Jim Wilkinson created a page for Progressive Enhancement Wiki to collect some tricks and tips and to explain the overall strategy. *Designers such as Jeremy Keith have shown how the approach can be used harmoniously with still other approaches to modern Web design (such as Ajax) to provide flexible, but powerful, user experiences. *Others, including [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>*Jim Wilkinson created a page for Progressive Enhancement Wiki to collect some tricks and tips and to explain the overall strategy.</p><p>*Designers such as Jeremy Keith have shown how the approach can be used harmoniously with still other approaches to modern Web design (such as Ajax) to provide flexible, but powerful, user experiences.</p><p>*Others, including Dave Shea, have helped to spread the adoption of the term to refer to CSS-based design strategies.</p><p>*Organizations such as the Web Standards Project have embraced PE as a basis for their educational efforts.</p><p>*In 2006 Nate Koechley at Yahoo! made extensive reference to PE in his own approach to Web design and browser support, Graded Browser Support (GBS).</p><p>*Steve Chipman at AOL has referred to PE as a basis for his Web design strategy.</p><p>*David Artz, leader of the AOL Optimization team, developed a suite of [http://www.artzstudio.com/artz/ Accessible Rendering Technologies], and invented a technique for disassembly of the &ldquo;enhancement&rdquo; on the fly, saving the user&#8217;s preference.</p><p>*Chris Heilmann discusses the importance of targeted delivery of CSS so that each browser only gets the content (and enhancements) it can handle.</p><p>*Scott Jehl of Filament Group introduces &#8220;Test-Driven Progressive Enhancement&#8221; on A List Apart. The article proposes testing browser capabilities (rather than user-agent detection) before applying enhancements, to ensure a usable experience to the largest audience possible. Ideas in this article led to creation of the [http://enhancejs.googlecode.com/ EnhanceJS] framework.</p><p>*Wt is a web application library which transparently implements progressive enhancement during its bootstrap, progressing from plain HTML to full AJAX.</p><p>*[http://enhancejs.googlecode.com/ EnhanceJS] is a Javascript framework maintained by [http://filamentgroup.com Filament Group] designed to improve the application of Progressive Enhancement by first testing browser capabilities for key Javascript and CSS support before applying advanced styles and scripts to the page.</p><p>Adapted from the Wikipedia article Progressive enhancement, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/progressive-enhancement-support-and-adoption/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Xuheki &#8211; Introduction</title><link>http://www.webmasterwidget.com/article/xuheki-introduction</link> <comments>http://www.webmasterwidget.com/article/xuheki-introduction#comments</comments> <pubDate>Mon, 22 Aug 2011 02:34:14 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Webserver]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Apache Http Server]]></category> <category><![CDATA[Debian]]></category> <category><![CDATA[Dynarchlib]]></category> <category><![CDATA[Free Software]]></category> <category><![CDATA[Gnu General Public License]]></category> <category><![CDATA[Imap]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[Perl]]></category> <category><![CDATA[Ubuntu]]></category> <category><![CDATA[Xuheki]]></category> <category><![CDATA[Xuheki - introduction]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/xuheki-introduction</guid> <description><![CDATA[Xuheki is a web-based IMAP client written in Perl. It is completely build upon Ajax technology, i.e. there are no page reloads. Xuheki is released under the GNU General Public License but includes DynarchLIB which is not free software. It uses persistent IMAP connections. The IMAP operations are not handled by the webserver itself, but [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Xuheki is a web-based IMAP client written in Perl. It is completely build upon Ajax technology, i.e. there are no page reloads. Xuheki is released under the GNU General Public License but includes DynarchLIB which is not free software. It uses persistent IMAP connections. The IMAP operations are not handled by the webserver itself, but by a Perl daemon which maintains connection to the IMAP server.</p><p>Currently it supports only the Apache webserver and the installation script is written for Debian/Ubuntu based systems. It might nevertheless be easy to install it on every Linux system.</p><p>Adapted from the Wikipedia article Xuheki, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/xuheki-introduction/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Quicknet &#8211; Introduction</title><link>http://www.webmasterwidget.com/article/quicknet-introduction</link> <comments>http://www.webmasterwidget.com/article/quicknet-introduction#comments</comments> <pubDate>Sat, 20 Aug 2011 00:34:54 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Javascript]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Cleartext]]></category> <category><![CDATA[Password]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[Quicknet]]></category> <category><![CDATA[Quicknet - introduction]]></category> <category><![CDATA[Xml]]></category> <category><![CDATA[Xmlhttprequest]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/quicknet-introduction</guid> <description><![CDATA[Quicknet is an Ajax framework (using XMLHttpRequest in JavaScript) designed to develop web applications or websites that use passwords to identify correct users. Using this framework, no cleartext password would be sent over the network or stored in the server. Quicknet supports multi-language, JavaScript cooperative multitasking, AJAX call, session and password management, modular structure, XML [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Quicknet is an Ajax framework (using XMLHttpRequest in JavaScript) designed to develop web applications or websites that use passwords to identify correct users. Using this framework, no cleartext password would be sent over the network or stored in the server. Quicknet supports multi-language, JavaScript cooperative multitasking, AJAX call, session and password management, modular structure, XML content, and JavaScript animation. It uses PHP on the server side, and JavaScript on the client side.</p><p>Adapted from the Wikipedia article Quicknet, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/quicknet-introduction/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>JavaScript &#8211; Use in web pages</title><link>http://www.webmasterwidget.com/article/javascript-use-in-web-pages</link> <comments>http://www.webmasterwidget.com/article/javascript-use-in-web-pages#comments</comments> <pubDate>Wed, 17 Aug 2011 19:35:17 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Javascript]]></category> <category><![CDATA[Activex]]></category> <category><![CDATA[Adobe Flash]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Application Programming Interface]]></category> <category><![CDATA[Assistive technology]]></category> <category><![CDATA[Brendan eich]]></category> <category><![CDATA[Buffer overflow]]></category> <category><![CDATA[C++]]></category> <category><![CDATA[Computer Program]]></category> <category><![CDATA[Cross Site Scripting]]></category> <category><![CDATA[Cross-site request forgery]]></category> <category><![CDATA[Disability]]></category> <category><![CDATA[Document Object Model]]></category> <category><![CDATA[Event]]></category> <category><![CDATA[Fault-tolerant system]]></category> <category><![CDATA[Form]]></category> <category><![CDATA[Gmail]]></category> <category><![CDATA[Google chrome]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Http]]></category> <category><![CDATA[Hyperlink]]></category> <category><![CDATA[Interpreter]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[Javascript - use in web pages]]></category> <category><![CDATA[Javascript engine]]></category> <category><![CDATA[Json]]></category> <category><![CDATA[Keyboard]]></category> <category><![CDATA[Microsoft Windows]]></category> <category><![CDATA[Mobile Phone]]></category> <category><![CDATA[Mouse]]></category> <category><![CDATA[Netscape communications corporation]]></category> <category><![CDATA[Netscape navigator]]></category> <category><![CDATA[Nontrivial]]></category> <category><![CDATA[Obfuscated code]]></category> <category><![CDATA[Personal digital assistant]]></category> <category><![CDATA[Pop-up ad]]></category> <category><![CDATA[Rhino]]></category> <category><![CDATA[Rollover]]></category> <category><![CDATA[Same origin policy]]></category> <category><![CDATA[Sandbox]]></category> <category><![CDATA[Screen reader]]></category> <category><![CDATA[Semantic html]]></category> <category><![CDATA[Server-side javascript]]></category> <category><![CDATA[Source Code]]></category> <category><![CDATA[Spidermonkey]]></category> <category><![CDATA[Target language]]></category> <category><![CDATA[Trojan horse]]></category> <category><![CDATA[Validation]]></category> <category><![CDATA[Vbscript]]></category> <category><![CDATA[Visual impairment]]></category> <category><![CDATA[Web Browser]]></category> <category><![CDATA[Web Server]]></category> <category><![CDATA[Windows script host]]></category> <category><![CDATA[World Wide Web Consortium]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/javascript-use-in-web-pages</guid> <description><![CDATA[Main&#124;Client-side JavaScript See also&#124;JavaScript engine&#124;Ajax (programming) The primary use of JavaScript is to write functions that are embedded in or included from HTML pages and that interact with the Document Object Model (DOM) of the page. Some simple examples of this usage are: * Opening or popping up a new window with programmatic control over [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Main|Client-side JavaScript</p><p>See also|JavaScript engine|Ajax (programming)</p><p>The primary use of JavaScript is to write functions that are embedded in or included from HTML pages and that interact with the Document Object Model (DOM) of the page. Some simple examples of this usage are:</p><p>* Opening or popping up a new window with programmatic control over the size, position, and attributes of the new window (e.g. whether the menus, toolbars, etc. are visible).</p><p>* Validating input values of a web form to make sure that they are acceptable before being submitted to the server.</p><p>* Changing images as the mouse cursor moves over them: This effect is often used to draw the user&#8217;s attention to important links displayed as graphical elements.</p><p>Because JavaScript code can run locally in a user&#8217;s browser (rather than on a remote server), the browser can respond to user actions quickly, making an application more responsive. Furthermore, JavaScript code can detect user actions which HTML alone cannot, such as individual keystrokes. Applications such as Gmail take advantage of this: much of the user-interface logic is written in JavaScript, and JavaScript dispatches requests for information (such as the content of an e-mail message) to the server. The wider trend of Ajax programming similarly exploits this strength.</p><p>A JavaScript engine (also known as &#8221;JavaScript interpreter&#8221; or &#8221;JavaScript implementation&#8221;) is an interpreter that interprets JavaScript source code and executes the script accordingly. The first JavaScript engine was created by Brendan Eich at Netscape Communications Corporation, for the Netscape Navigator web browser. The engine, code-named SpiderMonkey, is implemented in C. It has since been updated (in JavaScript 1.5) to conform to ECMA-262 Edition 3. The Rhino engine, created primarily by Norris Boyd (formerly of Netscape; now at Google) is a JavaScript implementation in Java. Rhino, like SpiderMonkey, is ECMA-262 Edition 3 compliant.</p><p>A web browser is by far the most common host environment for JavaScript. Web browsers typically use the public API to create &#8220;host objects&#8221; responsible for reflecting the DOM into JavaScript. The web server is another common application of the engine. A JavaScript webserver would expose host objects representing an HTTP request and response objects, which a JavaScript program could then manipulate to dynamically generate web pages.</p><p>Because JavaScript is the only language that the most popular browsers share support for, it has become a target language for many frameworks in other languages, even though JavaScript was never intended to be such a language. Despite the performance limitations inherent to its dynamic nature, the increasing speed of JavaScript engines has made the language a surprisingly feasible compilation target.</p><h3> Example &#8211; use in web pages</h3><p> A minimal example of a standards-conforming web page containing JavaScript (using HTML 4.01 syntax) would be the following:</p><p>simple page</p><p>document.write(&#8216;Hello World!&#8217;);</p><p>Your browser either does not support JavaScript, or you have JavaScript turned off.</p><h3>Compatibility considerations</h3><p> Main|Web interoperability</p><p>Since JavaScript runs in widely varying environments, an important part of testing and debugging it is testing across browsers.</p><p>The DOM interfaces for manipulating web pages are not part of the ECMAScript standard, or of JavaScript itself. Officially, they are defined by a separate standardization effort by the W3C; in practice, browser implementations differ from the standards and from each other, and not all browsers execute JavaScript.</p><p>To deal with these differences, JavaScript authors can attempt to write standards-compliant code which will also be executed correctly by most browsers; failing that, they can write code that checks for the presence of certain browser features and behaves differently if they are not available. In some cases, two browsers may both implement a feature but with different behavior, and authors may find it practical to detect what browser is running and change their script&#8217;s behavior to match. Programmers may also use libraries or toolkits which take browser differences into account.</p><p>Furthermore, scripts may not work for some users. For example, a user may:</p><p>* use an old or rare browser with incomplete or unusual DOM support,</p><p>* use a PDA or mobile phone browser which cannot execute JavaScript,</p><p>* have JavaScript execution disabled as a security precaution,</p><p>* use a speech browser due to, for example, a visual disability.</p><p>To support these users, web authors can try to create pages which degrade gracefully on user agents (browsers) which do not support the page&#8217;s JavaScript. In particular, the page should remain usable albeit without the extra features that the JavaScript would have added.</p><h3>Accessibility</h3><p> Main|Web accessibility</p><p>Assuming that the user has not disabled its execution, client-side web JavaScript should be written to enhance the experiences of visitors with visual or physical disabilities, and certainly should avoid denying information to these visitors.</p><p>Screen readers, used by the blind and partially sighted, can be JavaScript-aware and so may access and read the page DOM after the script has altered it. The HTML should be as concise, navigable and semantically rich as possible whether the scripts have run or not. JavaScript should not be totally reliant on mouse-specific events so as to deny its benefits to users who either cannot use a mouse or who choose to favor the keyboard for whatever reason. Equally, although hyperlinks and webforms can be navigated and operated from the keyboard, accessible JavaScript should not require keyboard events either. There are device-independent events such as onfocus and onchange that are preferable in most cases.</p><p>JavaScript should not be used in a way that is confusing or disorientating to any web user. For example, using script to alter or disable the normal functionality of the browser, such as by changing the way the back-button or the refresh event work, is usually best avoided. Equally, triggering events that the user may not be aware of reduces the user&#8217;s sense of control as do unexpected scripted changes to the page content.</p><p>Often the process of making a complex web page as accessible as possible becomes a nontrivial problem where issues become matters of debate and opinion, and where compromises are necessary in the end. However, user agents and assistive technologies are constantly evolving and new guidelines and relevant information are continually being published on the web.</p><h3>Security</h3><p> JavaScript and the DOM provide the potential for malicious authors to deliver scripts to run on a client computer via the web. Browser authors contain this risk using two restrictions. First, scripts run in a sandbox in which they can only perform web-related actions, not general-purpose programming tasks like creating files. Second, scripts are constrained by the same origin policy: scripts from one web site do not have access to information such as usernames, passwords, or cookies sent to another site. Most JavaScript-related security bugs are breaches of either the same origin policy or the sandbox.</p><h4>Cross-site vulnerabilities</h4><p> Main|Cross-site scripting|Cross-site request forgery</p><p>A common JavaScript-related security problem is cross-site scripting, or XSS, a violation of the same-origin policy. XSS vulnerabilities occur when an attacker is able to cause a target web site, such as an online banking website, to include a malicious script in the webpage presented to a victim. The script in this example can then access the banking application with the privileges of the victim, potentially disclosing secret information or transferring money without the victim&#8217;s authorization. A solution to XSS vulnerabilities is to use &#8221;HTML escaping&#8221; whenever displaying untrusted data.</p><p>Some browsers include partial protection against &#8221;reflected&#8221; XSS attacks, in which the attacker provides a URL including malicious script. However, even users of those browsers are vulnerable to other XSS attacks, such as those where the malicious code is stored in a database. Only correct design of Web applications on the server side can fully prevent XSS.</p><p>XSS vulnerabilities can also occur because of implementation mistakes by browser authors.</p><p>Another cross-site vulnerability is cross-site request forgery or CSRF. In CSRF, code on an attacker&#8217;s site tricks the victim&#8217;s browser into taking actions the user didn&#8217;t intend at a target site (like transferring money at a bank). It works because, if the target site relies only on cookies to authenticate requests, then requests initiated by code on the attacker&#8217;s site will carry the same legitimate login credentials as requests initiated by the user. In general, the solution to CSRF is to require an authentication value in a hidden form field, and not only in the cookies, to authenticate any request that might have lasting effects. Checking the HTTP Referrer header can also help.</p><p>&#8220;JavaScript hijacking&#8221; is a type of CSRF attack in which a  tag on an attacker&#8217;s site exploits a page on the victim&#8217;s site that returns private information as JSON or JavaScript. Possible solutions include requiring an authentication token in the POST and GET parameters for any response that returns private JSON (even if it has no side effects); using POST and never GET for requests that return private JSON; and modifying the response so that it can&#8217;t be used via a  tag (by, for example, wrapping the JSON in a JavaScript comment).</p><h4>Misplaced trust in the client</h4><p> Client-server applications, whether they involve JavaScript or not, must recognize that untrusted clients may be under the control of attackers. Thus any secret embedded in JavaScript could be extracted by a determined adversary, and the application author can&#8217;t assume that his JavaScript runs as intended, or at all. Some implications:</p><p>* Web site authors cannot perfectly conceal how their JavaScript operates, because the code is sent to the client, and obfuscated code can be reverse-engineered.</p><p>* JavaScript form validation only provides convenience for users, not security. If a site verifies that the user agreed to its terms of service, or filters invalid characters out of fields that should only contain numbers, it must do so on the server, not only the client.</p><p>* Scripts can be selectively disabled, so JavaScript can&#8217;t be relied on to prevent operations such as &#8220;save image&#8221;.</p><p>* It would be extremely bad practice to embed a password in JavaScript (where it can be extracted by an attacker), then have JavaScript verify a user&#8217;s password and pass &#8220;password_ok=1&#8243; back to the server (since the &#8220;password_ok=1&#8243; response is easy to forge).</p><h4>Browser and plugin coding errors</h4><p> JavaScript provides an interface to a wide range of browser capabilities, some of which may have flaws such as buffer overflows. These flaws can allow attackers to write scripts which would run any code they wish on the user&#8217;s system.</p><p>These flaws have affected major browsers including Firefox, Internet Explorer, and Safari.</p><p>Plugins, such as video players, Adobe Flash, and the wide range of ActiveX controls enabled by default in Microsoft Internet Explorer, may also have flaws exploitable via JavaScript,</p><p>and such flaws have been exploited in the past.</p><p>In Windows Vista, Microsoft has attempted to contain the risks of bugs such as buffer overflows by running the Internet Explorer process with limited privileges. Google Chrome similarly limits page renderers to an operating-system-enforced &#8220;sandbox.&#8221;</p><h4>Sandbox implementation errors</h4><p> Web browsers are capable of running JavaScript outside of the sandbox, with the privileges necessary to, for example, create or delete files. Of course, such privileges aren&#8217;t meant to be granted to code from the web.</p><p>Incorrectly granting privileges to JavaScript from the web has played a role in vulnerabilities in both Internet Explorer and Firefox. In Windows XP Service Pack 2, Microsoft demoted JScript&#8217;s privileges in Internet Explorer.</p><p>Microsoft Windows allows JavaScript source files on a computer&#8217;s hard drive to be launched as general-purpose, non-sandboxed programs. This makes JavaScript (like VBScript) a theoretically viable vector for a Trojan horse, although JavaScript Trojan horses are uncommon in practice. (See Windows Script Host.)</p><p>Adapted from the Wikipedia article JavaScript, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/javascript-use-in-web-pages/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Dynamic web page &#8211; Two types of dynamic web sites</title><link>http://www.webmasterwidget.com/article/dynamic-web-page-two-types-of-dynamic-web-sites</link> <comments>http://www.webmasterwidget.com/article/dynamic-web-page-two-types-of-dynamic-web-sites#comments</comments> <pubDate>Sat, 13 Aug 2011 03:34:43 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[ColdFusion]]></category> <category><![CDATA[Actionscript]]></category> <category><![CDATA[Active Server Pages]]></category> <category><![CDATA[Adobe Flash]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Asp.net]]></category> <category><![CDATA[Client side scripting]]></category> <category><![CDATA[Client-side]]></category> <category><![CDATA[Client-side javascript]]></category> <category><![CDATA[Common Gateway Interface]]></category> <category><![CDATA[Dynamic Html]]></category> <category><![CDATA[Dynamic web page]]></category> <category><![CDATA[Dynamic web page - two types of dynamic web sites]]></category> <category><![CDATA[Ecmascript]]></category> <category><![CDATA[Google Maps]]></category> <category><![CDATA[Html form]]></category> <category><![CDATA[Iframe]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Javaserver Pages]]></category> <category><![CDATA[Look and feel]]></category> <category><![CDATA[Netscape]]></category> <category><![CDATA[Perl]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[Query string]]></category> <category><![CDATA[Remote scripting]]></category> <category><![CDATA[Rich internet application]]></category> <category><![CDATA[Scripting Language]]></category> <category><![CDATA[Server Side]]></category> <category><![CDATA[Server side includes]]></category> <category><![CDATA[Server Side Scripting]]></category> <category><![CDATA[State]]></category> <category><![CDATA[Uniform Resource Locator]]></category> <category><![CDATA[Web Application]]></category> <category><![CDATA[Web Content]]></category> <category><![CDATA[Web Page]]></category> <category><![CDATA[Web Server]]></category> <category><![CDATA[Web Service]]></category> <category><![CDATA[Xmlhttprequest]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/dynamic-web-page-two-types-of-dynamic-web-sites</guid> <description><![CDATA[Client-side scripting and content creation Using client-side scripting to change interface behaviors &#8221;within&#8221; a specific web page, in response to mouse or keyboard actions or at specified timing events. In this case the dynamic behavior occurs within the presentation. Such web pages use presentation technology called rich interfaced pages. Client-side scripting languages like JavaScript or [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><h3>Client-side scripting and content creation</h3><p> Using client-side scripting to change interface behaviors &#8221;within&#8221; a specific web page, in response to mouse or keyboard actions or at specified timing events. In this case the dynamic behavior occurs within the presentation.</p><p>Such web pages use presentation technology called rich interfaced pages. Client-side scripting languages like JavaScript or ActionScript, used for Dynamic HTML (DHTML) and Flash technologies respectively, are frequently used to orchestrate media types (sound, animations, changing text, etc.) of the presentation. The scripting also allows use of remote scripting, a technique by which the DHTML page requests additional information from a server, using a hidden Frame, XMLHttpRequests, or a Web service.</p><p>The Client-side content is generated on the user&#8217;s computer. The web browser retrieves a page from the server, then processes the code embedded in the page (often written in JavaScript) and displays the retrieved page&#8217;s content to the user.</p><p>The innerHTML property (or write command) can illustrate the client-side dynamic page generation: two distinct pages, A and B, can be regenerated as document.innerHTML = A and document.innerHTML = B; or &#8220;on load dynamic&#8221; by document.write(A) and document.write(B).</p><p>The first &#8220;widespread used&#8221; version of JavaScript was 1996 (with Netscape 3 an ECMAscript standard).</p><h3>Server-side scripting and content creation</h3><p> Using server-side scripting to change the supplied page source &#8221;between&#8221; pages, adjusting the sequence or reload of the web pages or web content supplied to the browser. Server responses may be determined by such conditions as data in a posted HTML form, parameters in the URL, the type of browser being used, the passage of time, or a database or server state.</p><p>Such web pages are often created with the help of server-side languages such as PHP, Perl, ASP, ASP.NET, JSP, ColdFusion and other languages. These server-side languages typically use the Common Gateway Interface (CGI) to produce &#8221;dynamic web pages&#8221;. These kinds of pages can also use, on the client-side, the first kind (DHTML, etc.).</p><p>Server-side dynamic content is more complicated: (1) The client sends the server the request. (2) The server receives the request and processes the server-side script such as [PHP] based on the query string, HTTP POST data, cookies, etc.</p><p>The dynamic page generation was made possible by the Common Gateway Interface, stable in 1993. Then Server Side Includes pointed a more direct way to deal with server-side scripts, at the web servers.</p><h3>Combining client and server side</h3><p> Ajax is a web development technique for dynamically interchanging content with the server-side, without reloading the web page. Google Maps is an example of a web application that uses Ajax techniques and database.</p><p>Adapted from the Wikipedia article Dynamic web page, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/dynamic-web-page-two-types-of-dynamic-web-sites/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Radixweb &#8211; Introduction</title><link>http://www.webmasterwidget.com/article/radixweb-introduction</link> <comments>http://www.webmasterwidget.com/article/radixweb-introduction#comments</comments> <pubDate>Tue, 09 Aug 2011 00:34:31 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Joomla!]]></category> <category><![CDATA[Adobe Flash]]></category> <category><![CDATA[Adobe flex]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Board support package]]></category> <category><![CDATA[C Sharp]]></category> <category><![CDATA[C++]]></category> <category><![CDATA[CSS]]></category> <category><![CDATA[Dot net nuke]]></category> <category><![CDATA[Drupal]]></category> <category><![CDATA[Embedded linux]]></category> <category><![CDATA[Hand-held devices]]></category> <category><![CDATA[Kernel]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[Magento]]></category> <category><![CDATA[Microsoft .net]]></category> <category><![CDATA[Microsoft biztalk server]]></category> <category><![CDATA[Microsoft Commerce Server]]></category> <category><![CDATA[Microsoft dynamics]]></category> <category><![CDATA[Microsoft office sharepoint server]]></category> <category><![CDATA[MySQL]]></category> <category><![CDATA[Oscommerce]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[Radixweb]]></category> <category><![CDATA[Radixweb - introduction]]></category> <category><![CDATA[Ruby On Rails]]></category> <category><![CDATA[Vb net]]></category> <category><![CDATA[Vc++]]></category> <category><![CDATA[Windows ce]]></category> <category><![CDATA[XHTML]]></category> <category><![CDATA[Xml]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/radixweb-introduction</guid> <description><![CDATA[Consulting and development for Microsoft .Net technologies &#8211; Microsoft Office SharePoint Server, Microsoft BizTalk Server, Microsoft Dynamics and Microsoft Commerce Server * Software development / custom applications using C, C++, VC++, C#.Net &#38; VB.Net * Web applications from Open Source frameworks &#8211; PHP, MySQL, Linux, AJAX and Ruby on Rails * E-commerce applications using Joomla, [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Consulting and development for Microsoft .Net technologies &#8211; Microsoft Office SharePoint Server, Microsoft BizTalk Server, Microsoft Dynamics and Microsoft Commerce Server</p><p>* Software development / custom applications using C, C++, VC++, C#.Net &amp; VB.Net</p><p>* Web applications from Open Source frameworks &#8211; PHP, MySQL, Linux, AJAX and Ruby on Rails</p><p>* E-commerce applications using Joomla, Magento, Drupal, osCommerce and Dot Net Nuke</p><p>* Embedded development and System Programming: Board support package (BSPs), Kernel Development (for Windows &amp; Linux), Wired &amp; Wireless Communication Protocols, Embedded Linux &amp; Windows CE, CPU &amp; Microcontrollers, Hand-held devices programming, GIS &amp; GPS</p><p>* Accessible Web 2.0 applications using XHTML, CSS and XML</p><p>* Rich Internet Applications from Adobe Flash and Adobe Flex platforms</p><p>Adapted from the Wikipedia article Radixweb, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/radixweb-introduction/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Web mapping &#8211; Web mapping technologies</title><link>http://www.webmasterwidget.com/article/web-mapping-web-mapping-technologies</link> <comments>http://www.webmasterwidget.com/article/web-mapping-web-mapping-technologies#comments</comments> <pubDate>Mon, 08 Aug 2011 22:34:55 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Webserver]]></category> <category><![CDATA[Adobe acrobat]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Apache Http Server]]></category> <category><![CDATA[Apple quicktime]]></category> <category><![CDATA[Arcims]]></category> <category><![CDATA[Common Gateway Interface]]></category> <category><![CDATA[Dhtml]]></category> <category><![CDATA[Document Object Model]]></category> <category><![CDATA[Fastcgi]]></category> <category><![CDATA[Google Maps]]></category> <category><![CDATA[Internet Information Services]]></category> <category><![CDATA[Macromedia flash]]></category> <category><![CDATA[Mapnik]]></category> <category><![CDATA[Mapserver]]></category> <category><![CDATA[Middleware]]></category> <category><![CDATA[MySQL]]></category> <category><![CDATA[Open geospatial consortium]]></category> <category><![CDATA[Oracle spatial]]></category> <category><![CDATA[Plugin]]></category> <category><![CDATA[Postgis]]></category> <category><![CDATA[Simple features]]></category> <category><![CDATA[Spatial database]]></category> <category><![CDATA[Svg]]></category> <category><![CDATA[Web map service]]></category> <category><![CDATA[Web mapping]]></category> <category><![CDATA[Web mapping - web mapping technologies]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/web-mapping-web-mapping-technologies</guid> <description><![CDATA[The potential number of technologies to implement web mapping projects is almost infinite. Any programming environment, programming language and serverside framework can be used to implement web mapping projects. In any case, both server and client side technologies have to be used. Following is a list of potential and popular server and client side technologies [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>The potential number of technologies to implement web mapping projects is almost infinite. Any programming environment, programming language and serverside framework can be used to implement web mapping projects. In any case, both server and client side technologies have to be used. Following is a list of potential and popular server and client side technologies utilized for web mapping.</p><h3>Server side technologies</h3><p> * Web server &ndash; The webserver is responsible for handling http requests by web browsers and other user agents. In the simplest case they serve static files, such as HTML pages or static image files. Web servers also handle authentication, content negotiation, server side includes, URL rewriting and forward requests to dynamic resources, such as CGI applications or serverside scripting languages. The functionality of a webserver can usually be enhanced using modules or extensions. The most popular web server is Apache, followed by Microsoft Internet Information Server and others.</p><p>** CGI applications are executables running on the webserver under the environment and user permissions of the webserver user. They may be written in any programming language (compiled) or scripting language (e.g. perl). A CGI application implements the common gateway interface protocol, processes the information sent by the client, does whatever the application should do and sends the result back in a web-readable form to the client. As an example a web browser may send a request to a CGI application for getting a web map with a certain map extent, styling and map layer combination. The result is an image format, e.g. JPEG, PNG or SVG. For performance enhancements one can also install CGI applications such as FastCGI. This loads the application after the web server is started and keeps the application in memory, eliminating the need to spawn a separate process each time a request is being made.</p><p>** Alternatively, one can use scripting languages built into the webserver as a module, such as PHP, Perl, Python, ASP, Ruby, etc. If built into the web server as a module, the scripting engine is already loaded and doesn&#8217;t have to be loaded each time a request is being made.</p><p>* Web application servers are middleware which connects various software components with the web server and a programming language. As an example, a web application server can enable the communication between the API of a GIS and the webserver, a spatial database or other proprietary applications. Typical web application servers are written in Java, C, C++, C# or other scripting languages. Web application servers are also useful when developing complex realtime web mapping applications or Web GIS.</p><p>* Spatial databases are usually object relational databases enhanced with geographic data types, methods and properties. They are necessary whenever a web mapping application has to deal with dynamic data (that changes frequently) or with huge amount of geographic data. Spatial databases allow spatial queries, sub selects, reprojections, geometry manipulations and offer various import and export formats. A popular example for an open source spatial database is PostGIS. MySQL also implements some spatial features, although not as mature as PostGIS. Commercial alternatives are Oracle Spatial or spatial extensions of Microsoft SQL Server and IBM DB2. The OGC Simple Features for SQL Specification is a standard geometry data model and operator set for spatial databases. Most spatial databases implement this OGC standard.</p><p>* WMS server are specialized web mapping servers implemented as a CGI application, Java Servlet or other web application server. They either work as a standalone web server or in collaboration with existing web servers or web application servers (the general case). WMS Servers can generate maps on request, using parameters, such as map layer order, styling/symbolization, map extent, data format, projection, etc. The OGC Consortium defined the WMS standard to define the map requests and return data formats. Typical image formats for the map result are PNG, JPEG, GIF or SVG. There are open source WMS Servers such as UMN Mapserver and Mapnik. Commercial alternatives exist from most commercial GIS vendors, such as ESRI ArcIMS, ArcGIS Server, GeoClip, Intergraph Geomedia WebMap, and others.</p><h3>Client side technologies</h3><p> * Web browser &ndash; In the simplest setup, only a web browser is required. All modern web browsers support the display of HTML and raster images (JPEG, PNG and GIF format). Some solutions require additional plugins (see below).</p><p>** ECMAScript support &ndash; ECMAScript is the standardized version of JavaScript. It is necessary to implement client side interaction, refactoring of the DOM of a webpage and for doing network requests. ECMAScript is currently part of any modern web browser.</p><p>** Events support &ndash; Various events are necessary to implement interactive client side maps. Events can trigger script execution or SMIL operations. We distinguish between:</p><p>*** Mouse events (mousedown, mouseup, mouseover, mousemove, click)</p><p>*** Keyboard events (keydown, keypress, keyup)</p><p>*** State events (load, unload, abort, error)</p><p>*** Mutation events (reacts on modifications of the DOM tree, e.g. DOMNodeInserted)</p><p>*** SMIL animation events (reacts on different states in SMIL animation, beginEvent, endEvent, repeatEvent)</p><p>*** UI events (focusin, focusout, activate)</p><p>*** SVG specific events (SVGZoom, SVGScroll, SVGResize)</p><p>** Network requests &ndash; This is necessary to load additional data and content into a web page. Most modern browsers provide the XMLHttpRequest object which allows for get and post http requests and provides some feedback on the data loading state. The data received can be processed by ECMAScript and can be included into the current DOM tree of the web page / web map. SVG user agents alternatively provide the getURL and postURL methods for network requests. It is recommended to test for the existence of a network request method and provide alternatives if one method isn&#8217;t present. As an example, a wrapper function could handle the network requests and test whether XMLHttpRequests or getURL or alternative methods are available and choose the best one available. These network requests are also known under the term Ajax.</p><p>** DOM support &ndash; The Document Object Model provides a language independent API for the manipulation of the document tree of the webpage. It exposes properties of the individual nodes of the document tree, allows to insert new nodes, delete nodes, reorder nodes and change existing nodes. DOM support is included in any modern web browser. DOM support together with scripting is also known as DHTML or Dynamic HTML. Google Maps and many other web mapping sites use a combination of DHTML, Ajax, SVG and VML.</p><p>** [http://meta.wikimedia.org/wiki/SVG_image_support SVG support or SVG image support] &ndash; SVG is the abbreviation of &#8220;Scalable Vector Graphics&#8221; and integrates vector graphics, raster graphics and text. SVG also supports animation, internationalization, interactivity, scripting and XML based extension mechanisms. SVG is a huge step forward when it comes to delivering high quality, interactive maps. At the time of writing (2007&ndash;01), SVG is natively supported in Mozilla/Firefox &gt;version 1.5, Opera &gt;version 9 and the developer version of Safari/Webkit. Internet Explorer users still need the Adobe SVG viewer plugin provided by Adobe. For a German book on web mapping with SVG see and for an English paper on SVG mapping see.</p><p>** Java support &ndash; some browsers still provide old versions of the Java virtual machine. An alternative is the use of the Sun Java Plugin. Java is a full featured programming language that can be used to create very sophisticated and interactive web maps. The Java2D and Java3D libraries provide 2d and 3d vector graphics support. The creation of Java based web maps requires a lot of programming know how. Adrian Herzog discusses the use of Java applets for the presentation of interactive choroplethe and cartogram maps.</p><p>** Web browser plugins</p><p>*** Adobe Acrobat &ndash; provides vector graphics and high quality printing support. Allows toggling of map layers, hyper links, multimedia embedding, some basic interactivity and scripting (ECMAScript).</p><p>*** Adobe Flash &ndash; provides vector graphics, animation and multimedia support. Allows the creation of sophisticated interactive maps, as with Java and SVG. Features a programming language (ActionScript) which is similar to ECMAScript. Supports Audio and Video.</p><p>*** Apple Quicktime &ndash; Adds support for additional image formats, video, audio and Quicktime VR (Panorama Images). Only available to Mac OS X and Windows.</p><p>*** Adobe SVG viewer &ndash; provide SVG 1.0 support for web browsers, only required for Internet Explorer Users, because it doesn&#8217;t yet natively support SVG. The Adobe SVG viewer isn&#8217;t developed any further and only fills the gap until Internet Explorer gains native SVG support.</p><p>*** Sun Java plugin provides support for newer and advanced Java Features.</p><p>==Notes and references</h2><p>Adapted from the Wikipedia article Web mapping, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/web-mapping-web-mapping-technologies/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Outline of the Internet &#8211; Basic Internet protocols</title><link>http://www.webmasterwidget.com/article/outline-of-the-internet-basic-internet-protocols</link> <comments>http://www.webmasterwidget.com/article/outline-of-the-internet-basic-internet-protocols#comments</comments> <pubDate>Tue, 26 Jul 2011 12:35:01 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[Web Security]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Alt.* hierarchy]]></category> <category><![CDATA[CSS]]></category> <category><![CDATA[Dhtml]]></category> <category><![CDATA[Dom]]></category> <category><![CDATA[E Mail]]></category> <category><![CDATA[File Transfer]]></category> <category><![CDATA[File Transfer Protocol]]></category> <category><![CDATA[Flash Animation]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Http]]></category> <category><![CDATA[Instant Messaging]]></category> <category><![CDATA[Internet message access protocol]]></category> <category><![CDATA[Internet relay chat]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Newsgroup]]></category> <category><![CDATA[Outline of the internet]]></category> <category><![CDATA[Outline of the internet - basic internet protocols]]></category> <category><![CDATA[Post office protocol]]></category> <category><![CDATA[Tcp/ip]]></category> <category><![CDATA[Telnet]]></category> <category><![CDATA[Transport layer security]]></category> <category><![CDATA[Usenet]]></category> <category><![CDATA[Voip]]></category> <category><![CDATA[Web Browser]]></category> <category><![CDATA[Web Portal]]></category> <category><![CDATA[World Wide Web]]></category> <category><![CDATA[XHTML]]></category> <category><![CDATA[Xml]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/outline-of-the-internet-basic-internet-protocols</guid> <description><![CDATA[E-mail * Post Office Protocol * Internet Message Access Protocol 2. The explanation outlines the origins and history of the internet Instant messaging :&#8221;See list of Instant Messaging Services.&#8221; Internet Relay Chat= File transfer * File Transfer Protocol (FTP) Telnet= Usenet newsgroups *&#8221;alt.*&#8221; hierarchy World Wide Web * Web browser * Web portal Protocols and [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><h3>E-mail</h3><p> * Post Office Protocol</p><p>* Internet Message Access Protocol</p><p>2. The explanation outlines the origins and history of the internet</p><h3>Instant messaging</h3><p> :&#8221;See list of Instant Messaging Services.&#8221;</p><h3>Internet Relay Chat=</h2><h3>File transfer</h3><p> * File Transfer Protocol (FTP)<br
/><h3>Telnet=</h2><h3>Usenet newsgroups</h3><p> *&#8221;alt.*&#8221; hierarchy</p><h3>World Wide Web</h3><p> * Web browser</p><p>* Web portal</p><h4>Protocols and technologies</h4><p> * AJAX</p><p>* CSS</p><p>* DOM</p><p>* DHTML</p><p>* Flash animation</p><p>* HTML</p><p>* HTTP protocol</p><p>* Javascript</p><p>* TCP/IP</p><p>* Transport Layer Security or SSL</p><p>* VOIP</p><p>* XHTML</p><p>* XML</p><p>Adapted from the Wikipedia article Outline of the Internet, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/outline-of-the-internet-basic-internet-protocols/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Eval &#8211; Programming languages</title><link>http://www.webmasterwidget.com/article/eval-programming-languages</link> <comments>http://www.webmasterwidget.com/article/eval-programming-languages#comments</comments> <pubDate>Tue, 26 Jul 2011 06:33:58 +0000</pubDate> <dc:creator></dc:creator> <category><![CDATA[ColdFusion]]></category> <category><![CDATA[Actionscript]]></category> <category><![CDATA[AJAX]]></category> <category><![CDATA[Assembly language]]></category> <category><![CDATA[D programming]]></category> <category><![CDATA[Eval]]></category> <category><![CDATA[Eval - programming languages]]></category> <category><![CDATA[Exception handling]]></category> <category><![CDATA[Exception handling syntax#perl]]></category> <category><![CDATA[Forth]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Json]]></category> <category><![CDATA[Lisp programming language]]></category> <category><![CDATA[Lua]]></category> <category><![CDATA[Name binding]]></category> <category><![CDATA[Perl]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[Postscript]]></category> <category><![CDATA[Python]]></category> <category><![CDATA[Rbscript]]></category> <category><![CDATA[Read-eval-print loop]]></category> <category><![CDATA[Realbasic programming language]]></category> <category><![CDATA[Ruby]]></category> <category><![CDATA[Scheme]]></category> <category><![CDATA[Scope]]></category> <category><![CDATA[Variable]]></category><guid
isPermaLink="false">http://www.webmasterwidget.com/article/eval-programming-languages</guid> <description><![CDATA[JavaScript In JavaScript, eval is something of a hybrid between an expression evaluator and a statement executor. It returns the result of the last expression evaluated (all statements are expressions in both Javascript &#38; ActionScript), and allows the final semicolon to be left off. Example as an expression evaluator: foo = 2; alert(eval(&#8216;foo + 2&#8242;)); [...]No related posts.]]></description> <content:encoded><![CDATA[<div
class="ad" style="float:left; padding:0 15px 15px 15px"><script type="text/javascript"><!--
google_ad_client = "pub-0091919875977192";
/* 336x280, skapad 2011-04-06 */
google_ad_slot = "0402496911";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><h3> JavaScript</h3><p> In JavaScript, eval is something of a hybrid between an expression evaluator and a statement executor. It returns the result of the last expression evaluated (all statements are expressions in both Javascript &amp; ActionScript), and allows the final semicolon to be left off.</p><p>Example as an expression evaluator:</p><p>foo = 2;</p><p>alert(eval(&#8216;foo + 2&#8242;));</p><p>Example as a statement executor:</p><p>foo = 2;</p><p>eval(&#8216;foo = foo + 2;alert(foo);&#8217;);</p><p>One use of JavaScript&#8217;s eval is to parse JSON text, perhaps as part of an Ajax framework. However, modern browsers provide JSON.parse as a more secure alternative for this task.</p><h3> ActionScript</h3><p> In ActionScript (Flash&#8217;s programming language), eval cannot be used to evaluate arbitrary expressions. According to the Flash 8 documentation, its usage is limited to expressions which represent &#8220;the name of a variable, property, object, or movie clip to retrieve. This parameter can be either a String or a direct reference to the object instance.&#8221;</p><p>[http://livedocs.macromedia.com/flash/8/index.html]</p><p>ActionScript 3 does not support eval.</p><p>The ActionScript 3 Eval Library and the D.eval API are ongoing development projects to create equivalents to eval in ActionScript 3.</p><h3> Lisp</h3><p> Lisp was the original language to make use of an eval function. In fact, definition of the eval function led to the first implementation of the language interpreter.</p><p>Before the eval function was defined, Lisp functions were manually compiled to assembly language statements. However, once the eval function had been manually compiled it was then used as part of a simple read-eval-print loop which formed the basis of the first Lisp interpreter.</p><p>Later versions of the Lisp eval function have also been implemented as compilers.</p><p>The eval function in Lisp expects a form to be evaluated and executed as argument. The return value of the given form will be the return value of the call to eval.</p><p>This is an example Lisp code:</p><p>; A form which calls the + function with 1,2 and 3 as arguments.</p><p>; It returns 6.</p><p>(+ 1 2 3)</p><p>; In lisp any form is meant to be evaluated, therefore</p><p>; the call to + was performed.</p><p>; We can prevent Lisp from performing evaluation</p><p>; of a form by prefixing it with &#8220;&#8216;&#8221;, for example:</p><p>(setq form1 &#8216;(+ 1 2 3))</p><p>; Now form1 contains a form that can be used by eval, for</p><p>; example:</p><p>(eval form1)</p><p>; eval evaluated (+ 1 2 3) and returned 6.</p><p>Lisp is well known to be very flexible and so is the eval function. For example, to evaluate the content of a string, the string would first have to be converted into a Lisp form using the read-from-string function and then the resulting form would have to be passed to eval:</p><p>(eval (read-from-string &#8220;(format t &#8221;Hello World!!!~%&#8221;)&#8221;))</p><p>One major point of confusion is the question, in which context the symbols in the form will be evaluated. In the above example, form1 contains the symbol +. Evaluation of this symbol must yield the function for addition to make the example work as intended. Thus some dialects of lisp allow an additional parameter for eval to specify the context of evaluation (similar to the optional arguments to Python&#8217;s eval function &#8211; see below). An example in the Scheme dialect of Lisp (R5RS and later):</p><p>;; Define some simple form as in the above example.</p><p>(define form2 &#8216;(+ 5 2))</p><p>;Value: form2</p><p>;; Evaluate the form within the initial context.</p><p>;; A context for evaluation is called an &#8220;environment&#8221; in Scheme slang.</p><p>(eval form2 user-initial-environment)</p><p>;Value: 7</p><p>;; Confuse the initial environment, so that + will be</p><p>;; a name for the subtraction function.</p><p>(environment-define user-initial-environment &#8216;+ -)</p><p>;Value: +</p><p>;; Evaluate the form again.</p><p>;; Notice that the returned value has changed.</p><p>(eval form2 user-initial-environment)</p><p>;Value: 3</p><h3> Perl</h3><p> In Perl, the eval function is something of a hybrid between an expression evaluator and a statement executor. It returns the result of the last expression evaluated (all statements are expressions in Perl), and allows the final semicolon to be left off.</p><p>Example as an expression evaluator:</p><p>$foo = 2;</p><p>print eval(&#8216;$foo + 2&#8242;), &#8220;n&#8221;;</p><p>Example as a statement executor:</p><p>$foo = 2;</p><p>eval(&#8216;$foo += 2; print &#8220;$foon&#8221;;&#8217;);</p><p>(Beware about the quoting of strings. Note that single quotes were used above to quote the string. If double quotes were used, then it would interpolate the value of the variable into the string before passing it to &#8220;eval&#8221;, defeating the purpose of the &#8220;eval&#8221;, and possibly causing syntax errors, in the case of assignment.)</p><p>Perl also has eval &#8221;blocks&#8221;, which serves as its exception handling mechanism (see Exception handling syntax#Perl). This differs from the above use of eval with strings in that code inside eval blocks is interpreted at compile-time instead of run-time, so it is not the meaning of eval used in this article.</p><h3> PHP</h3><p> In PHP, eval executes code in a string almost exactly as if it had been put in the file instead of the call to eval. The only exception is that errors are reported as coming from a call to eval, and return statements become the result of the function.</p><p>Example using echo:</p><p>Adapted from the Wikipedia article Eval, under the G. N. U. Free Documentation License. Please also see http://en.wikipedia.org/wiki</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.webmasterwidget.com/article/eval-programming-languages/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Content Delivery Network via Amazon Web Services: CloudFront: dgtgjmvkdtza0.cloudfront.net

Served from: www.webmasterwidget.com @ 2012-02-05 14:05:11 -->
