+ Svar til tråden
Viser resultater 1 til 3 av 3

Tråd: Gjestebok (4språk og flere funksjoner)

  1. Ble medlem
    Sep 2009
    Sted
    Stavanger
    Innlegg
    85

    Gjestebok (4språk og flere funksjoner)

    Hei,

    Satt på flyet til New York og hadde ikke så mye bedre og ta meg til. Utviklet derfor en gjestebok som kan brukes av de fleste. Den kan også brukes som et "Kommentar" script om det er ønskelig.

    Funksjoner,
    - 4 Språk (Norsk, Engelsk, Dansk og Svensk)
    - Slette poster
    - Smilyes (Dette kan du slå av og på)
    - Post aktivering (Sjekk mailen din hvis du vil aktivere posten) NB: ønsker du dette må du legge til mail-sender selv da jeg ikke hadde tilgang på PhpMailer. Dette er selvfølgelig en funksjon du kan slå av og på.

    Install,
    1) Det kreves at du har en database for dette.
    2) Du må lage en tabell som støtter funksjonene,
    PHP Code:
    CREATE TABLE IF NOT EXISTS `post` (
      `
    idint(9NOT NULL AUTO_INCREMENT,
      `
    nametext NOT NULL,
      `
    websitetext NOT NULL,
      `
    messagetext NOT NULL,
      `
    mailtext NOT NULL,
      `
    iptext NOT NULL,
      `
    timetext NOT NULL,
      `
    datetext NOT NULL,
      `
    activatedint(11NOT NULL,
      `
    activate_urlvarchar(250NOT NULL,
      
    PRIMARY KEY (`id`)
    ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=
    4) Du må endre sql/config.php fila etter dine behov (passord osv)
    5) Admin brukernavn etc kan du endre (og finner du) ved admin/index.php
    6) Andre innstillinger finner du i admin/options.php

    Litt av scriptet (index.php),
    PHP Code:
    <?php

    /**
     * @author Ronnie Aarebrot
     * @copyright 2009
     * @website http://Ronnieblogg.com
     */

    // Include SQL Config
    include_once("sql/config.php");

    // Preset variabels
    $submit     mysql_real_escape_string(strtolower($_POST['submit']));
    $name         mysql_real_escape_string(strtolower($_POST['firstname']));
    $website     mysql_real_escape_string(strtolower($_POST['website']));
    $message     mysql_real_escape_string(strtolower($_POST['message']));
    $mail        mysql_real_escape_string(strtolower($_POST['mail']));
    $userIP        $_SERVER['REMOTE_ADDR'];
    $time        time();

    // Include options
    include_once("admin/options.php");

    // Select language
    include_once("language/language.php");

    // Check VAR Errors
    if ($post_activate == '1' OR $post_activate == '0') {

    } else {
        echo 
    $error_activate_var;
        exit();
    }

    if (
    $post_smilyes == '1' OR $post_smilyes == '0') {

    } else {
        echo 
    $error_smiley_var;
        exit();
    }

    // Activate a Post
    $activate_number $_GET['activate'];
    $sql mysql_query("SELECT * FROM post WHERE activate_url = '$activate_number'");
    if(!empty(
    $activate_number)) {
        if(
    mysql_num_rows($sql) < 1) {
            echo 
    $error_activate_fail;
        } else {
            
    mysql_query("UPDATE post SET activated = '0' WHERE activate_url = '$activate_number'");
            
    mysql_query("UPDATE post SET activate_url = '' WHERE activate_url = '$activate_number'");
            echo 
    $error_activate_success;
        }    
    }

    // If the submit has beem submited
    if($submit == TRUE) {
        
    // Check Errors
        
    if($name == FALSE) { $error[] = $error_name_false; }
        if(
    strlen($name) < $strlen_name_min) { $error[] = $error_name_strlen_min; }
        if(
    strlen($name) > $strlen_name_max) { $error[] = $error_name_strlen_max; }
        if(
    $message == FALSE) { $error[] = $error_message_false; }
        if(
    strlen($message) < $strlen_message_min) { $error[] = $error_message_strlen_min; }
        if(
    strlen($message) > $strlen_message_max) { $error[] = $error_message_strlen_max; }
        if(
    strlen($website) < $strlen_website_min) { $error[] = $error_website_strlen_min; }
        if(
    strlen($website) > $strlen_website_max) { $error[] = $error_website_strlen_max; }
        if(!
    preg_match("/^([a-zA-Z0-9])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/"$mail)) { $error[] = $error_mail_valid; }
        if(
    strlen($mail) < $strlen_mail_min) { $error[] = $error_mail_strlen_min; }
        if(
    strlen($mail) > $strlen_mail_max) { $error[] = $error_mail_strlen_max; }
        
        
    // Post errors or insert into MySQL
        
    if (isset($error)) {
            
    $i 0;
            echo 
    $title_error_message "<br />";
            foreach(
    $error as $error_message) {
                
    $i++;
                echo 
    "<b>" $i "</b>" ") " $error_message;
                echo 
    "<br />";
            }
        } else {
            if(
    $post_activate == 1) {
                
    $activate_url sha1($time rand(1,90000));
                
    $sql mysql_query("INSERT INTO post (name, website, message, mail, time, date, activated, activate_url, ip) VALUES 
                    ('$name', '$website', '$message', '$mail', '$time', '$date', '$post_activate', '$activate_url', '$userIP')"
    )
                    or die(
    mysql_error());
                echo 
    $success_post_thanks " " ucfirst($name) . ".<br />" $activate_post_mail ".";
            } else {
                
    $sql mysql_query("INSERT INTO post (name, website, message, mail, time, date, ip) VALUES 
                    ('$name', '$website', '$message', '$mail', '$time', '$date', '$userIP')"
    )
                    or die(
    mysql_error());
                echo 
    $success_post_thanks " " ucfirst($name) . ".";
            }
        }
    }

    // Show all user posts
    if ($submit == FALSE) {
        
    $sql mysql_query("SELECT * FROM post ORDER BY id DESC");
        include_once(
    "html/guestbook.php");
        if(
    mysql_num_rows($sql) < 1) {
            echo 
    $error_noPosts "<br />";
        } else {
            while(
    $row mysql_fetch_array($sql)) {
                if(
    $row['activated'] == "1") {
                    
                } else {
                    if(
    $post_smilyes == "1") {
                        
    // If smilyes are activated and found
                        
    $row['message'] = str_replace(":)"'<img src="img/smiley/001_smile.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":p"'<img src="img/smiley/001_tongue.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":wub:"'<img src="img/smiley/001_wub.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":s"'<img src="img/smiley/001_unsure.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":("'<img src="img/smiley/001_huh.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":oo:"'<img src="img/smiley/blink.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":closeeyes:"'<img src="img/smiley/closedeyes.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":w00t:"'<img src="img/smiley/w00t.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":'("'<img src="img/smiley/crying.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":$"'<img src="img/smiley/blushing.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":d"'<img src="img/smiley/biggrin.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace("lol"'<img src="img/smiley/laugh.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":|"'<img src="img/smiley/mellow.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":o"'<img src="img/smiley/ohmy.gif" alt="">'$row['message']);
                        
    $row['message'] = str_replace(":@"'<img src="img/smiley/cursing.gif" alt="">'$row['message']);
                    }
                    
    // Countinue the output
                    
    echo "<b>" ucfirst($row['name']) . "</b> " $row['date'] . "<br />";
                    echo 
    ucfirst($row['message']) . "<br /><br />";    
                }
            }
        }
    }

    ?>
    noe av språkene,
    PHP Code:
    <?php

    /**
     * @author Ronnie Aarebrot
     * @copyright 2009
     * @website http://Ronnieblogg.com
     */

    $title_error_message        "Du må fikse følgende feil, ";
    $error_name_false             "Du må skrive inn navnet ditt.";
    $error_name_strlen_min         "Navnet ditt var for kort, minimum " $strlen_name_min " bokstaver.";
    $error_name_strlen_max         "Navnet ditt var for langt, max " $strlen_name_max " bokstaver.";
    $error_message_false         "Du må skrive inn en melding.";
    $error_message_strlen_min     "Meldingen din var for kort, minimum " $strlen_message_min " bokstaver.";
    $error_message_strlen_max     "Meldingen din var for lang, max " $strlen_message_max " bokstaver.";
    $error_website_strlen_min     "Websiden din var for kort, minimum " $strlen_website_min " bokstaver.";
    $error_website_strlen_max     "Websiden din var for lang, max " $strlen_website_max " bokstaver.";
    $error_mail_valid            "Mailen din var ikke gyldig.";
    $error_mail_strlen_min        "Mailen din var for kort, minimum " $strlen_mail_min " bokstaver.";
    $error_mail_strlen_max        "Mailen din var for lang, max " $strlen_mail_max " bokstaver.";
    $success_post_thanks        "Takk for ditt innlegg.";
    $error_noPosts                "Det er ingen innlegg her enda.";
    $error_activate_var            "Obs, variabelsen \$post_activate må være satt til 1 eller 0";
    $error_smiley_var            "Obs, variabelsen \$error_smiley_var må være satt til 1 eller 0";
    $error_activate_fail        "Denne koden finnes ikke i vår database.";
    $error_activate_success        "Gratulerer, ditt innlegg er nå aktivert.";
    $activate_post_mail            "For at ditt innlegg skal vises må du aktivere innlegget. Sjekk din e-post!";
    $error_login_username        "Brukernavnet var feil.";
    $error_login_password        "Passordet var feil.";
    $lang_login_username        "Brukernavn";
    $lang_login_password        "Passord";
    $lang_admin_delete            "Slett.";
    $lang_admin_delete_ok        "Innlegget er nå slettet.";

    // HTML Language
    $langFirsname                "Navn";
    $langWebsite                "Webside";
    $langMail                    "E-Post";

    // Date (Norwegian)
    $english_day date("l");

    switch(
    $english_day) {
        case 
    "Monday";
        
    $norwegian_day "Mandag";
        break;
        case 
    "Tuesday";
        
    $norwegian_day "Tirsdag";
        break;
        case 
    "Wednesday";
        
    $norwegian_day "Onsdag";
        break;
        case 
    "Thursday";
        
    $norwegian_day "Torsdag";
        break;
        case 
    "Friday";
        
    $norwegian_day "Fredag";
        break;
        case 
    "Saturday";
        
    $norwegian_day "Lørdag";
        break;
        case 
    "Sunday";
        
    $norwegian_day "Søndag";
        break;
    }

    $date $norwegian_day " " date(" - d / m / Y");

    ?>
    Hvis du prøver dette, gi meg en tilbakemelding på hva du syntes. Feil o.l. rettes om du rapporterer det.

    Last ned Gjestebok_av_Ronnie_Aarebrot.rar.

    Enjoy!
    http://Kreativtstudio.no (Web&Design, Programmering - Blogg) - Anbefalt for deg som lurer på noe: How to ask questions the smart way

  2. Ble medlem
    Sep 2009
    Innlegg
    51

    Knall at du legger ut slikt Kan være kjekt!

  3. Ble medlem
    Sep 2009
    Sted
    Stavanger
    Innlegg
    85

    Takker, olephb
    http://Kreativtstudio.no (Web&Design, Programmering - Blogg) - Anbefalt for deg som lurer på noe: How to ask questions the smart way

+ Svar til tråden

Regler for innlegg

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts