Free Articel & E-Book

Free Download Style Icon



Download Icon style

Diagram With PHP


Diagram with PHP
Download

PHP Anti Spam




PHP Anti Spam
Download Source Code

Ajax Slide Show





Download
Source code

Ajax Search






Download Source Code nya

Sorce Code Ajax xmlHttpRequest








Download Source Code

Teknik Reparasi PC dan Monitor



Download Link

Kreasi Web Fantastis dgn Photoshop CS



Download Link

Tips and Techniques MySQL Database


PHP & MySQL adalah bahasa pemprogaman web yang mendunia, bahasanya mudah untuk dipelajari, kompatibilitas dengan berbagai macam server baik itu windows maupun unix, dan yang tak kalah penting adalah bahasa pemprogaman PHP & MySQL bersifat open source sehingga perkembangannya pun akan semakin cepat dan dapat diimplementasikan diberbagai bidang kebutuhan dalam pembuatan aplikasi.

Dengan semakin berkembangnya dunia internet dan tingginya kebutuhan akan sebuah bahasa pemprogaman yang mumpuni, setiap saat berbagai macam fungsi baru dan library tambahan selalu muncul di internet untuk memperkokoh dan meningkatkan performa keduanya, bug-bug yang ada pada versi sebelumnya diperbaiki oleh komunitas dan juga oleh para programmer handal yang ada diseluruh dunia.

PHP & MySQL sekarang hadir tidak lagi pada pembuatan aplikasi web dan database semata, tetapi juga sudah merambah kedalam dunia desktop Windows yang dikenal dengan PHP GTK.

Karena manfaatnya yang sangat banyak, mudah untuk dipelajari, dan dapat diimplementasikan dihampir semua bidang kebutuhan maka hadirlah sebuah E-book ini, E-book ini dibuat dengan mengambil dari berbagai macam sumber yang ada, dari situs internet, E-book dan dari manual book.


Creating Your MySQL Database: Practical Design Tips and Techniques
Oleh Marc Delisle
Diterbitkan oleh Packt Publishing, 2006
ISBN 1904811302, 9781904811305
108 halaman
Download Link

Excel 2007 VBA Programming for Dummies


Excel 2007 VBA Programming For Dummies
Oleh John Walkenbach, Jan Karel Pieterse
Kontributor John Walkenbach, Jan Karel Pieterse
Diterbitkan oleh For Dummies, 2007
ISBN 0470046740, 9780470046746
368 halaman
Introduction
Greetings, prospective Excel programmer . . .
Thanks for buying my book. I think you’ll find that it offers a fast, enjoyable way
to discover the ins and outs of Microsoft Excel programming. Even if you don’t
have the foggiest idea of what programming is all about, this book can help you
make Excel jump through hoops in no time (well, it will take some time).
Unlike most programming books, this one is written in plain English, and
even normal people can understand it. Even better, it’s filled with information
of the “just the facts, ma’am” variety — and not the drivel you might need
once every third lifetime
Download Link

Expert Oracle JDBC Programming


  • Expert Oracle JDBC Programming
    Copyright © 2005 by R. M. Menon
    All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means,
    electronic or mechanical, including photocopying, recording, or by any information storage or retrieval
    system, without the prior written permission of the copyright owner and the publisher.
    ISBN (pbk): 1-59059-407-X
    Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1
    Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence
    of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark
    owner, with no intention of infringement of the trademark.
    Lead Editor: Tony Davis
    Technical Reviewers: Rob Harrop, Thomas Kyte, Torben Holm, Julian Dyke
    Editorial Board: Steve Anglin, Dan Appleman, Ewan Buckingham, Gary Cornell, Tony Davis,
    Jason Gilmore, Jonathan Hassell, Chris Mills, Dominic Shakeshaft, Jim Sumser
    Associate Publisher: Grace Wong
    Project Manager: Sofia Marchant
    Copy Editor: Nicole LeClerc
    Production Manager: Kari Brooks-Copony
    Production Editor: Kelly Winquist
    Compositor: Van Winkle Design Group
    Proofreader: Nancy Sixsmith
    Indexer: Broccoli Information Management
    Artist: Diana Van Winkle, Van Winkle Design Group
    Interior Design: Diana Van Winkle, Van Winkle Design Group
    Cover Designer: Kurt Krames
    Manufacturing Manager: Tom Debolski
    Distributed to the book trade in the United States by Springer-Verlag New York, Inc., 233 Spring Street,
    6th Floor, New York, NY 10013, and outside the United States by Springer-Verlag GmbH & Co. KG,
    Tiergartenstr. 17, 69112 Heidelberg, Germany.
    In the United States: phone 1-800-SPRINGER, fax 201-348-4505, e-mail orders@springer-ny.com, or visit
    http://www.springer-ny.com. Outside the United States: fax +49 6221 345229, e-mail orders@springer.de,
    or visit http://www.springer.de.
    For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley,
    CA 94710. Phone 510-549-5930, fax 510-549-5939, e-mail info@apress.com, or visit http://www.apress.com.
    The information in this book is distributed on an “as is” basis, without warranty. Although every precaution
    has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to
    any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly
    by the information contained in this work.
    The source code for this book is available to readers at http://www.apress.com in the Downloads section.
    You will need to answer questions pertaining to this book in order to successfully download the code
  • Paperback: 708 pages
  • Publisher: Apress; 1 edition (May 30, 2005)
  • Language: English
  • ISBN-10: 159059407X
  • ISBN-13: 978-1590594070
  • Product Dimensions: 9.1 x 6.9 x 1.6 inches
  • Download

Sams.Teach.Yourself.Microsoft.SQL.Server.T-SQL.in.10.Minutes.Aug.2007

The fact that you are reading this book indicates that you, somehow, need
to interact with databases. So before diving into SQL Server and its
T-SQL implementation of the SQL language, it is important that you under-
stand some basic concepts about databases and database technologies.
Whether you are aware of it or not, you use databases all the time. Each
time you select a name from your email address book, you are using a
database. If you conduct a search on an Internet search site, you are using
a database. When you log into your network at work, you are validating
your name and password against a database. Even when you use your
ATM card at a cash machine, you are using databases for PIN verification
and balance checking.
But even though we all use databases all the time, there remains much
confusion over what exactly a database is. This is especially true because
different people use the same database terms to mean different things.
Therefore, a good place to start our study is with a list and explanation of
the most important database ter



Download Link

PCB Elektronika with TraxMaker



Download link

Interfacing Komputer dan Mikrokontroler


Computer Interfacing
Oleh George A. Smith
Diterbitkan oleh Newnes, 2000
ISBN 0750644745, 9780750644747
191 halaman



Download Link 1
Download Link 2

161 Teknik Profesional Flash MX 2004

161 Teknik Profesional Flash MX 2004

87 Teknik Profesional Photoshop CS2

87 Teknik Profesional Photoshop CS2

Database PostgreSQL


Addison Wesley - PostgreSQL - Introduction and Concepts

101 Tip & Trik Adobe Photoshop CS2.pdf

101 Tip & Trik Adobe Photoshop CS2

20 Kreasi Buah dgn CorelDRAW 12

20 Kreasi Buah-buahan Dengan Coreldraw 12
Oleh Jubilee Enterprise
Diterbitkan oleh Elex Media Komputindo
ISBN 9792074856, 9789792074857

20-kreasi-binatang-laut-dengan-coreldraw-12

Your Price : Rp 42.330 (15% OFF)

Penerbit : Elex Media Komputindo
Edisi : Soft Cover + CD
ISBN : 979-20-6924-0
Tgl Penerbitan : 2005
Bahasa : Indonesia

Light Book

How to Use

Part 1 - Setup

  1. Lightbox 2 uses the Prototype Framework and Scriptaculous Effects Library. You will need to include these three Javascript files in your header (in this order).

    include prototype.js
    include scriptaculous.js?load=effects,builder
    include lightbox.js

  2. Check the CSS and make sure the referenced prev.gif and next.gif files are in the right location. Also, make sure the loading.gif and close.gif files as referenced near the top of the lightbox.js file are in the right location.
include lightbox.css

Part 2 - Activate

  1. Add a rel="lightbox" attribute to any link tag to activate the lightbox. For example: Optional: Use the title attribute if you want to show a caption.
  2. If you have a set of related images that you would like to group, follow step one but additionally include a group name between square brackets in the rel attribute. For example:No limits to the number of image sets per page or how many images are allowed in each set. Go nuts!
Download Sample Code

JCalendar - JavaScript




Source Code

AJAC CHAT


Usability Improvements

At this point we have the core functionality of our chat application completed. However, we can add a few additional features to polish up our implementation. To start we need to make the chat messages automatically refresh at fixed intervals without requiring user input. We will also add a small message to let the user know when a background request is active. To finish up we remove the necessity of using the "Say It!" button to submit new chat messages.

Refreshing at Intervals

Adding periodical refreshes is quite a simple addition. We already know that the user can refresh the chat messages by clicking the "Say It!" button without entering a message to send. This button implements an onclick event which calls the javascript sendMessage() function.

To create our periodical refresh, we'll use Prototype's PeriodicalUpdater object. You can find the documentation for this object at: http://www.sergiopereira.com/articles/prototype.js.html#Reference.PeriodicalExecuter.

The javascript is relatively simple:

var periodicalExecuter = new PeriodicalExecuter(sendMessage, 30);

I'm afraid that's as complicated as it gets ;). The new instance of the PeriodicalExecuter class will call the sendMessage() function every 30 seconds. Our sendMessage() function will then perform its assigned tasks as described earlier - which includes updating the current list of chat messages via the handleRefresh() handler function.

Improved interval refreshing: Although not documented here, the downloadable source code in chat.js contains additional code to ensure interval refreshes do not also attempt message submissions (i.e. while user is typing).

User Feedback

One other touch is adding some visible feedback whenever the chat application is performing an AJAX request. The simplest feedback is to display a "Loading..." message between the time a new request is started and the time it successfully completes.

A span element is already present in the HTML for the chat application for this purpose. To display the "Loading..." message, we will use two additional classes. The first is the Prototype Ajax.Responders class documented at: http://www.sergiopereira.com/articles/prototype.js.html#Ajax.Responders

The second is the Scriptaculous Effects class documented at: http://wiki.script.aculo.us/scriptaculous/tags/effects.

Ajax.Responders is a class which allows developers call object methods and functions based on the occurance of Ajax events. For example, most of our current javascript functions utilizing the Prototype Ajax.Request class have an onComplete event to bind callback functions to. In a similar fashion, the Ajax.Responders class allows us to bind functions to similar events but this time for all such Ajax events regardless of how or when they are called.

Since our user feedback message should be displayed for all Ajax requests in progress, we can prevent adding it to all our individual Ajax.Request calls and just use a single Ajax.Responders register() call. This avoids a lot of potential javascript code duplication on our parts.

The javascript...

Ajax.Responders.register(
{
onCreate: function()
{
if($('loading') && Ajax.activeRequestCount>0)
{
Effect.Appear('loading',{duration: .2, queue: 'end'});
}
},

onComplete: function()
{
if($('loading') && Ajax.activeRequestCount==0)
{
Effect.Fade('loading',{duration: .2, queue: 'end'});
}
}
}
);

In the javascript above we've defined two function prototypes, one for each event we're interested in: onCreate and onComplete. On creation of a new request, the first function prototype will check that an element with id "loading" exists and that an Ajax request is active. Once this has been confirmed, it uses the Scriptaculous Effects class to make the "Loading..." message appear.

Because Effect.Appear only alters an element's style attribute, we need to make sure the "loading" span element is not initially displayed upon loading the page by setting its style attribute to "display:none;". We cannot put this style in our CSS external file - it must be added to a style attribute for the Effects class to manipulate.

On completion of the request, the second function prototype is called. This causes the message to fade into invisibility once more. If you add the new javascript into the chat.js file in our ./javascript directory you can reload the chat application and see the effect this has. Every time the user submits a new chat message, changes their screen name, or does nothing and waits for the periodical refresh we set up using the Prototype PeriodicalExecuter class, the "Loading..." message will appear and then fade once the current request successfully completes.

Adding a Keypress Event

We have one final usability improvement to add. In time, the user will inevitably get tired of typing a message and then using the mouse to click the "Say It!" button. An acceptable convention in most chat applications and instant messengers is to submit new messages when the user presses the Return key.

We can easily emulate this behavior using a Prototype Event.

window.onload = function()
{
Event.observe(
'textmessage',
'keypress',
function(event)
{
if(event.keyCode == Event.KEY_RETURN)
{
sendMessage();
}
}
)
};

Because we can't add a new Event like onclick, onkeypress to an element until the entire HTML for the page has loaded, we put our Prototype Event.observe() call into a function prototype which is only called when the page has loaded.

The Event observer itself is simple enough. We are observing the element with id "textmessage" (i.e. our chat message input field) for all keypress events. The function handler continually check each keypress until a Return press is detected. Once the user has pressed Return, the Event calls sendMessage() which submits the new chat message, and eventually updates the chat message list.

Conclusion

This concludes the tutorial :).

Hopefully it has proven to be of some benefit to you, the reader. Over the course of building our new chat application we have encountered the Zend Framework and delved into several of its classes. We have met Prototype and how it simplifies using Ajax, as well as helps us with non-AJAX specific tasks like interval function calls and event handlers. We introduced the PHP5 SimpleXML extension when using XML as a storage medium for our lightweight application. Although we only touched it very briefly we also used Scriptaculous' Effect class.

In meeting these many libraries, we've bound them all into a relatively simple application demonstrating how each can be used in combination with our own self sourced code. The final code, which you can download from chat.tar.gz or chat.zip, should be easy to follow - most of its size comes from the comments :).

A final note. There are any number of improvements that could be made to the current source code. The XML storage solution could be replaced with a database if necessary. Screen names could be replaced with proper user accounts. Private messaging could be implemented and icons could be added to spruce up the UI. These were all out of the scope of the tutorial but are easily added with a little work.