View Single Post
  #25  
Old 03-26-2010, 02:20 AM
mapleblade mapleblade is offline
Epicness sausage
 
Join Date: May 2009
Posts: 180
Gender: Male
Credits: 19,871
mapleblade
Default RE: Adoptable shop new version! [UPDATED!]

No, if your register, you gain 1000coins[hr]
Here ya go:
PHP Code:
// **********************************************************************
// Basic Configuration Info
// **********************************************************************

include("inc/functions.php");
include(
"inc/config.php");
include(
"lang/lang.php");

$themeurl grabanysetting("themeurl");

// **********************************************************************
// Define our top links by calling getlinks()
// **********************************************************************

$links getlinks();

// **********************************************************************
// Define our ads by calling getads()
// **********************************************************************

$ads getads("register");

// **********************************************************************
// Grab any dynamic article content from the content table
// **********************************************************************

$pagecontent getsitecontent("index");
$article_title $pagecontent[title];
$article_content $pagecontent[content];
$article_content nl2br($article_content);

// **********************************************************************
// Grab any settings that we will need for the current page from the DB
// **********************************************************************

$browsertitle grabanysetting("browsertitle");
$sitename grabanysetting("sitename");
$slogan grabanysetting("slogan");

// **********************************************************************
// Check and see if the user is logged in to the site
// **********************************************************************

$loginstatus logincheck();
$isloggedin $loginstatus[loginstatus];
$loggedinname $loginstatus[username];

// **********************************************************************
// End Prepwork - Output the page to the user
// **********************************************************************

if($isloggedin == "yes"){

$article_title "You already have an account";
$article_content "You already have an account, thus there is no need for you to register a new one.";

}
else{

//Grab the post data from the form

$username $_POST["username"];
$pass1 $_POST["pass1"];
$pass2 $_POST["pass2"];
$email $_POST["email"];
$tos $_POST["tos"];
$hidden $_POST["hidden"];

//Protect the database
$username preg_replace("/[^a-zA-Z0-9\040.]/"""$username);
$username secure($username);
$pass1 secure($pass1);
$pass2 secure($pass2);
$email preg_replace("/[^a-zA-Z0-9@._-]/"""$email);
$email secure($email);
$tos preg_replace("/[^a-zA-Z0-9s]/"""$tos);
$hidden preg_replace("/[^a-zA-Z0-9s]/"""$hidden);

    if(
$hidden != "goregister"){

    
//The form was not submitted, so we are showing the signup page...

    
$article_title $regnew;
    
$article_content $regnewexplain."<br><form name='form1' method='post' action='register.php'>
      <p>Username: <input name='username' type='text' id='username' maxlength='20'></p>
      <p>Your username may be up to 20 characters long and may only contain letters, numbers and spaces. </p>
      <p>Password: <input name='pass1' type='password' id='pass1' maxlength='20'></p>
      <p>Your password may be up to 20 characters long and may contain letters, numbers, spaces and special characters. The use of a special character, such as * or ! is recommended for increased security. </p>
      <p>Confirm Password: <input name='pass2' type='password' id='pass2' maxlength='20'></p>
      <p>Email Address: <input name='email' type='text' id='email'></p>
      <p><input name='tos' type='checkbox' id='tos' value='yes'> I agree to the <a href='tos.php' target='_blank'>Terms of Service</a>. 
      <input name='hidden' type='hidden' id='hidden' value='goregister'></p>
      <p><input type='submit' name='Submit' value='Register'>
      </p></form>"
;


    }
    else{

    
//We are attempting to register the user...

    //First MD5 hash the passwords:

    
$pass1 md5($pass1);
    
$pass2 md5($pass2);

    
//Next check that the username does not already exist...

    
$flag 0;
    
$query "SELECT * FROM ".$prefix."users WHERE username = '$username'";
    
$result = @mysql_query($query);
    
$num = @mysql_numrows($result);

    if(
$num 0){
    
$flag 1;
    }

    
//Now we verify that the email address is a valid email address...
    
$emailisvalid "no";


    if(
eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$"$email)) {
    
    
$emailisvalid "yes";
    
    }
    
    
//First check that something required was not left blank...

    
if($username == "" or $pass1 == "" or $pass2 == "" or $email == ""){
    
$article_title "Error";
    
$article_content $regblank;
    }
    else if(
$pass1 != $pass2){
    
    
//Passwords do not match

    
$article_title "Your passwords do not match";
    
$article_content $passnomatch;

    }
    else if(
$tos != "yes"){

    
//User did not agree to TOS
    
$article_title "Terms of Service Error";
    
$article_content $notos;

    }
    else if(
$flag 0){

    
//Username already exists
    
$article_title "Your username already exists";
    
$article_content $userexists;    

    }
    else if(
$emailisvalid != "yes"){

    
//Email address is not valid or is a fake

    
$article_title "Email address is not valid";
    
$article_content $emailinvalid;

    }
    else{

    
//All checks are done, actually create the user's account on the database

    
$date date('Y-m-d');

        
mysql_query("INSERT INTO ".$prefix."users VALUES ('', '$username', '$pass1','$email','3','1', '$date', '0','','','','','','0','')"); 

    
//Now that we have created the user, let's log them in...

    
$status dologin($username$pass1);

    if(
$status != "success"){
    
    
$article_title "Something is Wrong!";
    
$article_content "Something is very, very wrong.  Please contact Elesis about this error.";

    }
    else{

    
//We are registered and logged in...

    
$article_title $titleregsuccess;
    
$article_content $regsuccess."".$username."".$regsuccess2;

    
//Reflect our changes in the sidebar... 
    
$sidebar "<b><u>Welcome ".$username."</u></b>:<br><a href='account.php'>Go to My Account</a><br><a href='adopt.php'>Adopt Some Pets</a>";

    }


    }
    


    }

}

// **********************************************************************
// Begin Template Definition
// **********************************************************************

//Define our current theme
$file $themeurl;

// Do the template changes and echo the ready template
$template file_get_contents($file);

$template replace(':ARTICLETITLE:',$article_title,$template);
$template replace(':ARTICLECONTENT:',$article_content,$template);
$template replace(':ARTICLEDATE:',$article_date,$template);

$template replace(':BROWSERTITLE:',$browsertitle,$template);
$template replace(':SITENAME:',$sitename,$template);

//Define our links
$template replace(':LINKSBAR:',$links,$template);

//Get the content for the side bar...

if($sidebar == ""){

$sidebar getsidebar();
}

$template replace(':SIDEFEED:',$sidebar,$template);

//Get the ad content...
$template replace(':ADS:',$ads,$template);

//Get the slogan info
$template replace(':SLOGAN:',$slogan,$template);


echo 
$template;

// **********************************************************************
// End Template Definition
// **********************************************************************



?> 
[hr]
At my mysql, i set the dealfault 1000 so in the begining you have 1000coins.[hr]
Oh, there was someting wrong in doadopt.php[hr]
This fixes the unlimited adoptions problem :D
Doadopt.php
PHP Code:
<?php

// **********************************************************************
// Rusnak PHP Adoptables Script
// Copyright 2009 Brandon Rusnak
// For help and support: http://www.rusnakweb.com/forum/
//
// Redistribution prohibited without written permission
// **********************************************************************

// Wake the sleeping giant

// **********************************************************************
// Basic Configuration Info
// **********************************************************************

include("inc/functions.php");
include(
"inc/config.php");
include(
"lang/lang.php");

$themeurl grabanysetting("themeurl");

// **********************************************************************
// Define our top links by calling getlinks()
// **********************************************************************

$links getlinks();

// **********************************************************************
// Define our ads by calling getads()
// **********************************************************************

$ads getads("any");

// **********************************************************************
// Grab any dynamic article content from the content table
// **********************************************************************

$pagecontent getsitecontent("index");
$article_title $pagecontent[title];
$article_content $pagecontent[content];
$article_content nl2br($article_content);

// **********************************************************************
// Grab any settings that we will need for the current page from the DB
// **********************************************************************

$browsertitle grabanysetting("browsertitle");
$sitename grabanysetting("sitename");
$slogan grabanysetting("slogan");

// **********************************************************************
// Check and see if the user is logged in to the site
// **********************************************************************

$loginstatus logincheck();
$isloggedin $loginstatus[loginstatus];
$loggedinname $loginstatus[username];

// **********************************************************************
// End Prepwork - Output the page to the user
// This file actually processes the adoption of a pet...
// **********************************************************************

$id $_GET["id"];
$id preg_replace("/[^a-zA-Z0-9s]/"""$id);
$id secure($id);

$promocode $_GET["promocode"];
$promocode preg_replace("/[^a-zA-Z0-9\\040.]/"""$promocode);
$promocode secure($promocode);

$name $_GET["name"];
$name preg_replace("/[^a-zA-Z0-9\\040.]/"""$name);
$name secure($name);

if(
$isloggedin == "yes"){


// I guess the first thing to do is see if we have a valid adoptable ID submitted...

if($id == "" or !is_numeric($id)){

$article_title $err_idnoexist;
$article_content $err_idnoexist_text;

}
else{


// The adoptable ID appears to be valid, so we need to double check that it is valid by pulling up the adoptable in the DB

$query "SELECT * FROM ".$prefix."adoptables WHERE id='$id'";
$result mysql_query($query);
$num mysql_numrows($result);

$query2 "SELECT * FROM ".$prefix."users WHERE username='$loginstatus[username]'";
$result2 mysql_query($query2);
$num2 mysql_numrows($result2);

//Loop out code
$i=0;
while (
$i 1) {

$aid=@mysql_result($result,$i,"id"); //The adoptable's ID
$type=@mysql_result($result,$i,"type");
$description=@mysql_result($result,$i,"description");
$eggimage=@mysql_result($result,$i,"eggimage");
$price=@mysql_result($result,$i,"price");
$coins=@mysql_result($result2,$i,"coins");
$i++;
}


if(
$id == $aid){

// The ID submitted matches an existing adoptable type

$canadopt canadopt($aid"adopting"$promocode);

// If we can adopt this creature, do the adoption
// Otherwise we show an error...

if($canadopt == "yes"){


// **********************************************************************
// BEGIN the actual adoption process
// **********************************************************************

// First we see if we have a custom name.
// If not, we use the default name

if($name == ""){
$name $type;
}

// Now we determine if we are using alternate images or not

$alts getaltstatus($id00);

// Now we actually process the adoption and add it to the database...
// We need a unique code for the adoptable so we can show it to the user when we're done here...

$code rand(120000);

$newcoins $coins $price;
if(
".$coins." ".$price."){
$query2 "UPDATE ".$prefix."users SET coins='".$newcoins."' WHERE username='".$loginstatus[username]."'";
    
mysql_query($query2);

mysql_query("INSERT INTO ".$prefix."owned_adoptables VALUES ('', '$type', '$name','$loggedinname','0','0', '$code', '','$alts','notfortrade','no')");



// Adoption complete, show the user a confirmation screen...
// We need to show the adoptable info from the database...


$query "SELECT * FROM ".$prefix."owned_adoptables WHERE code='$code' and owner='$loggedinname'";
$result mysql_query($query);
$num mysql_numrows($result);

//Loop out code
$i=0;
while (
$i 1) {
 
$id=@mysql_result($result,$i,"aid"); 


$i++;
}



$article_title $name." adopted successfully";
$article_content "<img src='".$eggimage."'><br>".$congrats1." ".$name.".  You can now manage ".$name." on the 
<a href='myadopts.php'>My Adopts</a> page.<br><br><b><a href='myadopts.php?act=manage&id="
.$id."'>Click Here to Manage ".$name."</a><br>
<a href='myadopts.php?act=bbcode&id="
.$id."'>Click Here to get BBCodes / HTML Codes for ".$name."</a></b><br><br>
Be sure and <a href='levelup.php?id="
.$id.">feed</a> ".$name." with clicks so that they grow! ";
}else{
$article_title "Error";
$article_content "You dont have enough coins for this adoptable.";
}


// **********************************************************************
// END the actual adoption process
// **********************************************************************


}

else{

$article_title $accden;
$article_content $adoptnoper;

}


// End the if for if $id == $aid
else{

// Adoptable does not exist, show an error.

$article_title $err_idnoexist;
$article_content $err_idnoexist_text;

// End the else for if $id == $aid


// End the valid ID input else test statement (bulk of code goes above here)



// End the log in check IF
else{

// Guests cannot adopt pets, so why bother...
$article_title $guesttitleerror;
$article_content $guesterror;

// End the log in check ELSE 



// **********************************************************************
// Begin Template Definition
// **********************************************************************

//Define our current theme
$file $themeurl;

// Do the template changes and echo the ready template
$template file_get_contents($file);

$template replace(':ARTICLETITLE:',$article_title,$template);
$template replace(':ARTICLECONTENT:',$article_content,$template);
$template replace(':ARTICLEDATE:',$article_date,$template);

$template replace(':BROWSERTITLE:',$browsertitle,$template);
$template replace(':SITENAME:',$sitename,$template);

//Define our links
$template replace(':LINKSBAR:',$links,$template);

//Get the content for the side bar...

$sidebar getsidebar();
$template replace(':SIDEFEED:',$sidebar,$template);

//Get the ad content...
$template replace(':ADS:',$ads,$template);

//Get the slogan info
$template replace(':SLOGAN:',$slogan,$template);


echo 
$template;

// **********************************************************************
// End Template Definition
// **********************************************************************



?>
[hr]
ill update the .zip