Content Management Code
  Home arrow Content Management Code arrow Guestbook
Codewalker Forums 
  Tutorials  
Database Articles  
Miscellaneous  
Navigation Usability  
PEAR Articles  
Programming Basics  
Server Administration  
XML Tutorials  
  Reviews  
Database Book Reviews  
Linux Book Reviews  
Miscellaneous Reviews  
PHP Book Reviews  
PHP Software Reviews  
Server Admin Reviews  
SQL Tool Reviews  
  Code Gallery  
Content Management Code  
Contest Code  
Counters Code  
Database Code  
Date Time Code  
Discussion Board Code  
Email Code  
File Manipulation Code  
GUI Code  
Link Farm Code  
Miscellaneous Code  
Search Code  
Site Navigation Code  
User Management Code  
Mobile Linux 
App Generation ROI 
IBM® developerWorks 
Download TestComplete 
Forums Sitemap 
Weekly Newsletter 
 
Developer Updates  
Free Website Content 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
CONTENT MANAGEMENT CODE

Guestbook
By: Codewalkers
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 3 stars3 stars3 stars3 stars3 stars / 11
    2002-01-18

    Table of Contents:

    Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    ADVERTISEMENT


    This is a guestbook script, that stores all records in a MYSQL database. Displays records by pages. Highly configurable interface. For more information contact me at: nerd@kic.kmtn.ru See demo of the script at: http://php.inc.ru

    By : lyonchik

    <?
    /********************************************************************************
    Guestbook by lyonchik: nerd@kic.kmtn.ru
    Contact me to report bugs, give your comments or
    to develop your own personalized Web applications.

    This is a simple guestbook. It consists only of one file.
    All you need to do is create a MYSQL database table and set the variables below
    to conform to your settings and that's it.
    The sample query to create a table should be:

    "CREATE TABLE guestbook (id int(5) NOT NULL auto_increment, name varchar(20),
    email varchar(20), message text, date datetime, PRIMARY KEY (id))"

    And the guestbook is ready to go. Enjoy!

    You can freely distribute this code. For any suggestions and comments write to:
    'nerd@kic.kmtn.ru'. Feel free to email me URLs where this guestbook works,
    I would love to hear that my work is appreciated.
    *********************************************************************************/

    // Define MYSQL server information
    $server = 'localhost'; // MYSQL server;
    $user = ''; // User to connect to MYSQL server;
    $password = ''; // Password;
    $database = 'database name'; // The name of the database;
    $table = 'guestbook'; // The name of your database table;

    // Define page layout variables
    $guestbook_name = "My guestbook page"; // Guestbook page name;
    $titlecolor = 'black'; // Title font color;
    $tablewidth = "90%"; // Table width in pixels or percentage;
    $bgcolor = '#AAAAAA'; // Table background color value (name of hex equivalent);
    $bordercolor = '#000000'; // Table border color value (name of hex equivalent);
    $bordersize = 5; // Table border size;
    $cellspacing = 0; // Table cellspacing value;
    $cellpadding = 5; // Table cellpadding value;
    $messagecellcolor = '#BBAAAA'; // message cell color;
    $namecolor = '#0000EE'; // name font color;
    $messagecolor = '#000099'; // message font color;
    $mainfont = '#000033'; // main text font color;
    $maxshow = 10; // Number of messages to display per page;
    ?>
    <HTML>
    <META http-equiv=Content-Type content="text/html; charset=windows-1251">
    <HEAD>
    <TITLE>
    <?
    echo $guestbook_name;
    ?>
    </TITLE>
    <script language="javascript">
    function checkForm()
    {
    if ((document.forms.myGB.name.value == '') || (document.forms.myGB.message.value == ''))
    {
    alert('Fill in required fields!');
    }
    else {
    document.forms.myGB.submit();
    }
    }
    </script>
    </HEAD>
    <?


    echo "<BODY bgcolor=" . $bgcolor . ">";
    echo "<div align=center><h1><font color=" . $titlecolor . ">" . $guestbook_name . "</font></h1>";




    if (isset($message))
    {
    if ($email == "")
    {
    $email = "no_email";
    }
    mysql_connect ($server, $user, $password) or die ("Can't connect!");
    mysql_select_db ($database) or die ("Can't open database!");
    $sql = "INSERT INTO $table (name, email, message, date) VALUES ('$name', '$email', '$message', NOW())";
    $result = mysql_db_query($database, $sql);
    if ($result)
    echo "<meta http-equiv='Refresh' content='0; URL=" . $PHP_SELF . "'>";
    else
    echo "Error! Check the form!";
    mysql_close();
    }


    if (!isset($show))
    {
    $show = 0;
    }
    mysql_connect($server, $user, $password) or die ("Can't connect!");
    mysql_select_db($database) or die ("Can't open database!");
    $sql = "SELECT * FROM $table ORDER BY id DESC";
    $result = mysql_db_query($database, $sql);
    if ($result)
    {
    $count = mysql_num_rows($result);

    $sqlshow = "SELECT * FROM $table ORDER BY id DESC LIMIT $show, $maxshow";
    $result = mysql_db_query($database, $sqlshow);
    ?>
    <table width=<? echo $tablewidth ?> cellspacing=<? echo $cellspacing ?> cellpadding=<? echo $cellpadding ?> border=<? echo $bordersize ?> bordercolor=<? echo $bordercolor ?>>
    <?
    while (($myrow = mysql_fetch_array($result)))
    {
    echo "<tr><td colspan=2 valign=top bgcolor=" . $messagecellcolor . "><font color=" . $messagecolor . ">Sent by <b>" . htmlspecialchars($myrow["name"]) . "</b><i>, " . $myrow["date"] . "</i><br>Email: <a href=mailto:" . htmlspecialchars($myrow["email"]) . ">" . htmlspecialchars($myrow["email"]) . "</a><br><br>" . htmlspecialchars($myrow["message"]) . "</font></td></tr>";
    }
    ?>
    </table>
    <?
    }
    else
    echo "Error!";
    mysql_close();

    echo "<font color=" . $mainfont . ">";
    echo "<br>";
    $pages = $count / $maxshow;
    if ($pages < 1)
    {
    $pages = 1;
    }
    if ($pages / (int) $pages <> 1)
    {
    $pages = (int) $pages + 1;
    }
    else
    {
    $pages = $pages;
    }
    $pagenow = ($show/$maxshow + 1);
    echo "Page " . $pagenow . " of " . $pages . "<br>";
    $next = $show + $maxshow;
    $previous = $show - $maxshow;
    if ($pages <> 1)
    {
    if ($previous < 0)
    {
    echo "<a href=" . $PHP_SELF . "?show=" . "$next" . ">";
    echo "<acronym title='Next " . $maxshow . " records'>>>></acronym></a> ||";
    }
    elseif ($next >= $count)
    {
    echo "<a href=" . $PHP_SELF . "?show=" . "$previous" . ">";
    echo "<acronym title='Previous " . $maxshow . " records'><<<</acronym></a> ||";
    }
    else
    {
    echo "<a href=" . $PHP_SELF . "?show=" . "$previous" . ">";
    echo "<acronym title='Previous " . $maxshow . " records'><<<</acronym></a>";
    echo " | ";
    echo "<a href=" . $PHP_SELF . "?show=" . "$next" . ">";
    echo "<acronym title='Next " . $maxshow . " records'>>>></acronym></a> ||";
    }
    }
    echo " Pages: ";
    $i = 0;
    while ($i < $pages)
    {
    $ri = $i + 1;
    $showpage = $i * $maxshow;
    echo "<a href=" . $PHP_SELF . "?show=" . $showpage . ">" . $ri . "</a> ";
    $i++;
    }
    ?>

    <p>
    (*) Required fields
    <form name='myGB' action=<? echo $PHP_SELF ?> method='post'>
    * Name:<br><input type='text' name='name' maxlength=20><br>
    Email:<br><input type='text' name='email' maxlength=20><br>
    * Message:<br><textarea name='message' rows=5 cols=30></textarea><br>
    <a href="javascript:checkForm()">Send</a>
    </form>
    </font>
    </div>
    </BODY>
    </HTML>
    DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

    More Content Management Code Articles
    More By Codewalkers

     

    IBM® developerWorks developerWorks - FREE Tools!


    NEW! Best Practices: The Integrated Project and Portfolio Management Platform.

    Hear how IBM Rational Project and Portfolio Management integrated solutions help teams put the right tools and processes in place to maximize the effectiveness and efficiency of project teams and ensure that the business vision is being executed correctly. Learn how to automate and integrate requirements prioritization, top-down project planning, communications and controls, and methodology deployment to keep your scope, costs, and schedules under control. Tackle with an end-to-end approach the management of scope and scope changes, usage of methodology to control and empower project teams, and optimization of resources to align activity costs with the overall project plan.
    FREE! Go There Now!


    NEW! Download IBM WebSphere Portal V6.1 beta code

    Download the IBM WebSphere Portal V6.1 beta code and learn more about the rich features and enhancements in IBM WebSphere Portal V6.1. WebSphere Portal provides a composite application or business mashup framework and the advanced tooling needed to build flexible, SOA-based solutions, and scalability to meet the needs of any size organization.
    FREE! Go There Now!


    NEW! Evaluate IBM Lotus Sametime Standard V8.0

    Visit IBM developerWorks to download a free trial of the latest release of IBM Lotus Sametime Standard V8.0. Lotus Sametime Standard V8.0 is a platform for unified communications and collaboration that combines security features with an extensible, open solution including integrated Voice over IP, geographic location awareness, mobile clients, and a robust Business Partner community offering telephony and video integration.
    FREE! Go There Now!


    NEW! IBM Rational Systems Development e-Kit

    As systems increase in complexity, communication between systems and software teams becomes more and more difficult. Now, there’s a way to improve product quality and communication.<br />Read the “Model Driven Systems Development” white paper to see how. Also included in this kit are more educational white papers, customer examples, tutorials, informative Webcasts, and best practices for designing, building and managing systems.<br />
    FREE! Go There Now!


    NEW! Improve your build process with IBM Rational Build Forge, Part 2: Automate builds for a real-world Tomcat project

    Learn how Rational Build Forge can extend a simple compile and package build process by adding customization and deployment capability. Go from a manual method to automating: checking for code changes; getting the latest source; compiling and packaging; customizing; copying to and restarting a deployment server; and sending e-mail notification that a new version is available.
    FREE! Go There Now!


    NEW! Krugle, developerWorks, and code search

    Ken Krugler, co-founder of code search company Krugle, and Laura Merling, vice president of Marketing and Business Development for Krugle, join to talk about the ins and outs of code search and what it means as a new feature for developerWorks users.
    FREE! Go There Now!


    NEW! Rational Talks to You: Manage RUP-based CMMI initiatives

    Join this Rational Talks to You teleconference on December 4 at 1:00 pm ET to discuss how Rational Method Composer can help meet your compliance objectives. Get your questions answered!
    FREE! Go There Now!


    NEW! Software Change and Configuration Management Solution Guidelines

    This whitepaper provides areas to consider when evaluating any software configuration management solution. It addresses how the IBM solutions (Rational ClearCase and Rational ClearQuest) meet the needs and requirements of both project leaders and developers to provide successful Software Change and Configuration Management.
    FREE! Go There Now!


    NEW! Try the IBM SOA Sandbox for Process

    Visit IBM developerWorks to try the IBM SOA Sandbox for process. The SOA Sandbox for process focuses on providing a trial environment with the necessary tooling and components required to gain a better understanding of business processes and how to best improve existing business processes to derive value quickly.
    FREE! Go There Now!


    NEW! Webcast: Striking the right balance between manual and automated testing

    Join this webcast to learn how IBM Rational's Functional Testing solution enables you to implement automation your way, at your pace, with your existing staff. In this webcast, you’ll learn how you can eliminate redundancy of manual test scripts, reduce errors, and increase test coverage through test automation. After this presentation you will understand how IBM Rational Functional Testing solution can streamline your manual testing and make test automation easily attainable.
    FREE! Go There Now!



    All FREE IBM® developerWorks Tools!

    CONTENT MANAGEMENT CODE ARTICLES

    - V2 CMS - Content Management System
    - VSNS Lemon
    - Country List For Forms Using SQL
    - eggblog
    - Table generation class
    - STP Simple Template Parser
    - class Vision_To_Form_Elements
    - Cascade Drop Down
    - Cura - CMS
    - Syntax Desktop
    - 216 color table
    - Simple Mini Poll class library (SimPoll)
    - Regex Generator
    - Siteseed
    - Company WebSite Builder PRO





    © 2003-2010 by Developer Shed. All rights reserved. DS Cluster 8 Hosted by Hostway
    For more Enterprise Application Development news, visit eWeek