| 
		
			| mapleblade | 03-26-2010 02:20 AM |  
 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($id, 0, 0);
 
 // 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(1, 20000);
 
 $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 |