Class that connects to a SMTP mail server to send messages. It features:
- Relaying message delivery to a programmer defined SMTP server.
- Connect to the SMTP server via a SOCKS 4 or 5 server, or an HTTP proxy
- Programmer defined server address, server port, connection timeout, origin host address.
- Support for authentication methods PLAIN and LOGIN.
- Support for POP3 based authentication before delivery.
- Direct delivery to one or more recipients with e-mail addresses with the same domain, so you do not need to relay on a own or your ISP SMTP server.
- Setting sender and recipient address as a separate step from the sending the headers and the body of the message.
- Returns message delivery success.
- Detects extensions supported by the SMTP server.
- Takes advantage of the SMTP PIPELINING extension to buffer SMTP commands, therefore minimizing SMTP dialogue between the class and the server in order to provide a much faster queueing of messages to be delivered to a large amount of recipients ( bulk mail ).
* Note: this class is better used in conjunction with the class "MIME E-mail message composing and sending class". See in the Email group.
Class that implements requests to Web resources using the HTTP protocol.
It features:
- May submit HTTP requests with any method, to any page, to any server, connecting to any port.
- Provides support to setup connection and request arguments from a given URL.
- May submit requests via a proxy server with support for authentication if necessary.
- May establish connections via a SOCKS server.
- Supports HTTP direct access or proxy based authentication mechanisms via SASL class library like HTTP Basic, HTTP Digest or NTLM (Windows or Samba).
- Support secure connections (https) via Curl library with SSL support, or at least PHP 4.3.0 with OpenSSL support, or via a non-SSL HTTP proxy server.
- Supports accessing secure pages using SSL certificates and private keys using Curl library
- Supports user defined request headers.
- Supports POST requests with a user defined array of form values.
- Supports POST requests with a user defined request bodies for instance for making requests to SOAP services.
- Supports streaming requests that require uploading large amounts of data of undefined length in small chunks to avoid exceeding PHP memory limits
- Supports requests to sites hosting virtual Web servers.
- Retrieves the HTTP response headers and body data separately.
- Support HTTP 1.1 chunked content encoding
- Supports session and persistent cookies.
- Provides optional handling of redirected pages.
- Supports defining connection and data transfer timeout values.
- Can output connection debug information in plain text or formatted as HTML.
- An add-on class is provided to login to Yahoo sites and perform actions on the behalf of the logged users like exporting the user address book or sending invitation to a group.
This class implements an HTTP server written in pure PHP.
It starts a daemon that listen for connections and handles HTTP GET and HEAD requests.
The class can start children processes to handle multiple requests in parallel.
The requests may serve static files inside the document root directory. The class supports checking for modified files and return the appropriate responses for unchanged files.
A http client class which Supports :
* HTTP Proxy with Basic Authentication
* multipart/form-data AND application/x-www-form-urlencoded
* GET, HEAD and POST methods
* HTTP cookies
* Chunked Transfer-Encoding
* HTTP 1.0 and 1.1 protocols
* Keep-Alive Connections
* Basic WWW-Authentication
PLEASE NOTE: As of November 16, 2009 this project's main home has been moved to http://code.google.com/p/php-form-builder-class/. Please check this site for all updates and new features as they will no longer be posted on phpclasses.org.
This class can be used to generate HTML and Javascript for displaying forms.
This project promotes rapid development of forms through an object-oriented PHP structure, eliminates the grunt/repetitive work of writing the html and javascript validation when building forms, reduces human error by using a consistent/tested utility, and incorporate complex elements such as ajax, jquery, google maps, tooltips, captcha, and html web editors quickly and with little effort.
There are 15 example files that provide multiple implementations of the class and will give you a head start in your development. Also, there are currently 3 YouTube videos that provide a more in-depth look various pieces of the project.
This class is meant to pass multiple values between pages using encrypted cookies.
It can:
- Create a cookie object in memory
- Load the values of a cookie sent back by the browser into the cookie object in memory
- Assign multiple values to the cookie object in memory. Multiple cookie values are sent to the browser at once with names with array syntax.
- Cookie values can be removed from the cookie object in memory and from the browser
- Encryption with Blowfish-CBC algorithm can be used to encrypt all the cookie values sent to the browser. A secret server side encryption key can be used for different cookies objects.
- Assigning values to the cookie object in memory can be done just by creating up a new object property and assign a value to it, taking advantage of PHP5 dynamic object variable assignment __get and __set methods
This class can be used to get and set information about the current user HTTP request details to help protecting against unintended accesses. It can:
- Determine the user machine real IP address even when it is behind a proxy.
- Check whether the user IP address is the same as the Web server IP address
- Determine whether the user is behind a proxy
- Set, remove and check a response cookie that determines whether the current user is banned from accessing the site
- Retrieve the request referrer page domain
- Retrieve the request query parameters
- Get the cookie request data