Marketing Idea's, shortcuts Trial and error custom scripts

Discussion in 'General Marketing' started by jz1977, Oct 31, 2009.

  1. #1
    Hello, I saw someone else started a marketing log of their process and personally I would like to share some good and bad results.

    Through out this log my goal is to give users new marketing ideas and php, perl, custom scripts developed to achieve success on a low budget.

    Let me start out with letting others know my brain is marketing center. It's all being thought about.

    If you plan on promoting 1000 or less products then you must stop reading here. The goal for this project is having one domain, two servers, grid hosting, load balancing fail over dns service.

    The greatest part about the internet is it's wanting to be bigger. The goal in mind should be to have as many stores as possible, trying to keep the code clean, and letting your sites be the hookers.

    Pimping products on a block of two servers using one website is your job title.

    How can we get this done?
    Dedication, Lots of time on your hands, and.. this log script.

    get two cheap servers from serverbeach (linux)
    get a domain, load balancing dns from dnsmadeeasy.com
    Signup on datafeedfile.com
    and get signed up as an affiliate on linkshare, cj, shareasale, ebay, amazon are just a few.

    You will need to understand basic linux, php programing, some perl, how caching works, you will need an amazon e2 simple storage account.

    If you host on mysql. try doing remote requests from a godaddy grid account. 25 databases per account should be a good start. keep in mind all databases should be smaller than 200 megabytes.
    A good datafeed script is affilistore.com

    The hardest part about using datafeeds are maintaining the mysql resources.
    Do one datafeed 48,000 products OR LESS per affilistore install. If you are smart in php you can tweak the code to use one code set and the other installs are ran off the same files, just using different configuration files.

    Now that you have an idea on how to set things up. lets do.
    create a folder on your linux web server called shop,
    inside this shop folder, create another one called 2,
    inside this folder create a folder called 2Tshirts.

    create your config file and move your browser to /shop/2/2Tshirts/

    create your database on the godaddy grid hosting mysql server.

    upload your datafeed in admin, and here you have your first shop.

    The caching issue. When you enable a standard caching system, something to keep in mind is how to store these cache files. Godaddy has a TOS limit of 1024 files per folder to keep seek levels down. By understanding this rule can save yourself headaches when dealing with lots of files inside on folder.
    There is a free script called smart_cache.. This will solve most of your caching issues. It uses php and it's recommended you use this on all your dynamic sites, regardless if the script your using already have a caching mechanism. Most likely it's not build on a hash cache directory mechanism.

    So far so good. One way to promote your site is through search engines. This can be a long waiting process.
    Another option is using my custom script. This script can post your entire page to social networking sites from a single page load. blogging was never so simple using this brilliant idea.

    I would like to stop here to split up posting. and move on the next. any comments and suggestions are welcome.
     
    jz1977, Oct 31, 2009 IP
  2. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #2
    Some of these ideas have come with long hours of trial and error. I've always been hesitant on posting my custom code online because it could be used against me. Life is too short and it might save some trouble if i give them a part of my thoughts.

    Since I am fairly new to these forums as posting goes, rather than giving my ideas away, i want to talk more on this project.

    One of my biggest issues was loosing my work from either a server fail or just being stupid and not saving my work.
    After a few 10s thousand dollars being thrown at redundant hosting, it was making me nervous to be spending so much while getting too little.

    At one point an average hosting on three dedicated servers were $2000 dollars, and it was getting hard to look in the mirror realizing the money is just being thrown away. Another problem with my projects is I know too much. When attending college one of the professors asked the class who know allot about computer repair vs. someone who doesn't know anything. Some raised their hands as being experts. Those people never finished due to knowing too much.

    Making money in my idea is making success. Many already celebrated my success. Others can only dream on it.

    This project or any project one tries to develop is project until it makes money. This is why my volunteer work to this project has it's ups and downs.

    Affiliate marketing is about sharing the money you make.
    People like myself fight are hard working, there are many on this forum.

    Sometimes, blogging or writing even using all the tools at my fingertips seems like yesterdays attempt.
    For any reason, or guessing my view at life is simple. Money makes the world go round, and when you don't have money, your world stops.

    Anyway, Google is a notorious search engine with secrets.
    Google doesn't share these secrets and their business model is always changing. Unless you live inside google plex, riding the organic search is rocky.

    Most of the sites I've own are large, complex and break.
    I won't tell you the names of them because i feel this log is a log, and not a directory.

    My role is to speak on various techniques to use.

    One project was having noticing how many people used social bookmarking.
    It was one of those moments of opportunity, so i grabbed it fast as i could.
    Ping.fm is a gateway answer to posting your thoughts many networks including twitter, facebook, and other places like blogger, typepad.
    Around 40 places ping.fm can help be a source of advertisement. Its a fast place to get backlinks too.

    My most recent script was to send ping.fm a datafeedfile shopping page.
    It was a break through because i saw how powerful this can be. Ping.fm allows you to send 3 posts per min, but the average post times vary.

    When you do this make sure the short urls are turned off / disabled. This is a great way to get your links out there.

    Be a grey hat. Don't be white, Don't be Black, Be grey because its the shade that makes sense.

    Some of my old work got me banned on some search engines. We learn from our mistakes, and sometimes we don't see them as mistakes. In affiliate marketing, I've learned it's so easy to get bullied, at the same time, if doing your stuff correctly those same bullies are the thief's.
    Stop here and split this post.
     
    jz1977, Oct 31, 2009 IP
  3. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Ever wake up, eat a bowl of cereal, sit down and work all day on your dreams until you sleep? Dreams is having faith in yourself, and having enough self esteem not to listen when others are telling you have none. Life to many go through the same emotions when creating new ideas. competing against others who seem to have so much more knowledge than you do.
    It's a delusion of thoughts ready to be built.
    ping.fm was a great project and it made me smile when i saw 190 dollars in 15 minutes from clickbank. The feeling of success did not last long when ping.fm said my 700 accounts were using too much of their resources. Time and hours spent made creating those application and developer keys. Luckly, since my knuckles hurt from punching the monitor out of pure frustration, my dedication showed me that i could create a script to make my life easier. After all computers are here to take my commands, not me take commands. Where did we loose sight of this? Probably at the moment computers were used as an alternative to friends, wives, family and sometimes at the expense of our own health.
    So yeah, Many of the great strategies we all come up with to compete with each other usually get shut down with a push of a buttom. Ping.fm pushed a button and shut my social networking ad business down. Flick... no more money... OUCH! screams to myself this time feeling like complete idiot for spending that much time into something that was out of my control. However, later on this knowledge on building such applications were used on submitting webpages to ping.fm just by visiting the page. Letting the money / computer work for you should be the goal of everyone. I mean why would i want to go through all that heart ache at making 190. Yes, the moment was nice while it lasted. but i learned a lot from it.
     
    jz1977, Oct 31, 2009 IP
  4. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Clickbank is a great network and at times life is good, other times, well life could be better. Sunday are usually a good day for sales. It must be from all those people who are shopping online, where they can't or don't have the time. One of lessons I feel you must learn is don't make the scene worse once you spilled the coffee. Humans are based on emotions while our self defense kicks into overdrive hoping to recover from damages. Ebay networks are one of those "kicks self" moments. Ebay networks have three versions of TOS, all on which you must understand. I feel one of my biggest faults at marketing is trying new idea's with an unknown outcome. DO NOT try this ebay networks. because if you don't already know, once they kick you out of their publishing club their is no going back. So I can not express enough not to screw around with ebay since it is a high profit area, even for affiliates.
    The reason I got banned from ebay was cookie stuffing. If i have read the TOS, one would have known not to cookie stuff.
    Cookie stuffing is when you make a page, screw with the code a bit, and you get caught. I thought getting a blue room on paltalk was a great idea. because with a blue room you can advertise with a 468x60 banner inside your own chat room.
    The banner at the bottom refreshes every 10 seconds little did i know this would come back and haunt me.
    When someone would come to the chat room, banner loads up, cookie saves, they go buy something from ebay, or popup. BAMM. money!... please do not do this.. it would be a mistake on your end.. Once again i had that button pushed. Its not a great feeling. but guess what.. I did not have a blue room on paltalk anymore. Lesson Learned
     
    jz1977, Oct 31, 2009 IP
  5. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #5
    Show and tell time. This method allows you to send your page to ping.fm. I use this method and it's getting results.

    This little darling is the heart of my newest creation. Do a search on google for "wrapper.class.php" With quotes. We use quotes when searching for the exact phrase.
    To make things a challenge. I am not going to give you the code to make this happen. What would be the fun in that?

    Rather I will help you figure it out.

    
    // "ping.fm Page Buffer" by Jeff Zakovec
    require 'wrapper.class.php';
    $dev_api = ''; // place your ping.fm dev key here.
    $user_api = ''; //place your ping.fm app key here.
    try {
    $wrapper = new PingFM_Wrapper;
    $wrapper->dev_api = $dev_api;
    $wrapper->user_api = $user_api;
    if ( $wrapper->act('post', array('post_method' => 'blog', 'title' => $datatitle, 'body' => $tidypage)));
    }
    catch ( exception $e ) {
    echo $e->getMessage();
    echo $pingfmresult;
    }
    
    PHP:
    Can anyone tell me how to get $datatitle and $tidypage?

    This is actually school. I think the biggest mistake on sharing code is sharing it to someone who doesn't know what it means or how to work it.

    I am willing to share my thoughts and idea's, just not give them away.

    I will give you a hint on how how to finish it. If your on a cms like drupal or a script that already has the title and body done for you then your set. just replace those variables, enter in your key information and bam.

    What if you DO NOT have a cms, and dealing with content like a php include?

    datafeedfile.com uses php includes to share their tools to make life easier.
    Most of the time, if you don't change the result of php include, google wont waste their time indexing another product comparison site that is identical to the other 4 million. What gives your shopping center a unique feeling about it? Many site owners want email addresses, and what ever is in your sock drawer. Lets not worry about attracting people with email flyers or the latests sock ideas.

    Bypass this type of marketing, because everyone is doing it. what else could you go on with a pre designed site?

    I want to show you something.
    
    include 'config.php';
    
    $id = $_GET['id'];
    
    $result = mysql_query("SELECT * FROM products WHERE id = '$id'")or die(mysql_error());
    
    $row = mysql_fetch_array( $result );
    
    $result = mysql_query("UPDATE products SET count = ".$row['count']." + 1 WHERE id='".$row['id']."'") 
    or die(mysql_error());  
    
    $link = 'http://*****.'.$row['id'].'.hop.clickbank.net';
    
    if($cloak == 'true'){
    
    ?>
    
    
    <?php 
    /**
     * get_redirect_url()
     * Gets the address that the provided URL redirects to,
     * or FALSE if there's no redirect. 
     *
     * @param string $link
     * @return string
     */
    function get_redirect_url($link){
    	$redirect_url = null; 
     
    	$link_parts = @parse_url($link);
    	if (!$link_parts) return false;
    	if (!isset($link_parts['host'])) return false; //can't process relative URLs
    	if (!isset($link_parts['path'])) $link_parts['path'] = '/';
     
    	$sock = fsockopen($link_parts['host'], (isset($link_parts['port']) ? (int)$link_parts['port'] : 80), $errno, $errstr, 30);
    	if (!$sock) return false;
     
    	$request = "HEAD " . $link_parts['path'] . (isset($link_parts['query']) ? '?'.$link_parts['query'] : '') . " HTTP/1.1\r\n"; 
    	$request .= 'Host: ' . $link_parts['host'] . "\r\n"; 
    	$request .= "Connection: Close\r\n\r\n"; 
    	fwrite($sock, $request);
    	$response = '';
    	while(!feof($sock)) $response .= fread($sock, 8192);
    	fclose($sock);
     
    	if (preg_match('/^Location: (.+?)$/m', $response, $matches)){
    		if ( substr($matches[1], 0, 1) == "/" )
    			return $link_parts['scheme'] . "://" . $link_parts['host'] . trim($matches[1]);
    		else
    			return trim($matches[1]);
     
    	} else {
    		return false;
    	}
     
    }
     
    /**
     * get_all_redirects()
     * Follows and collects all redirects, in order, for the given URL. 
     *
     * @param string $link
     * @return array
     */
    function get_all_redirects($link){
    	$redirects = array();
    	while ($newurl = get_redirect_url($link)){
    		if (in_array($newurl, $redirects)){
    			break;
    		}
    		$redirects[] = $newurl;
    		$link = $newurl;
    	}
    	return $redirects;
    }
     
    /**
     * get_final_url()
     * Gets the address that the URL ultimately leads to. 
     * Returns $link itself if it isn't a redirect.
     *
     * @param string $link
     * @return string
     */
    function get_final_url($link){
    	$redirects = str_replace('?hop=****', '/', get_all_redirects($link));
    	if (count($redirects)>0){
    		return array_pop($redirects);
    	} else {
    		return $link;
    	}
    }
    $selfyes = (('on' == @$_SERVER['HTTPS']) ? 'https://' : 'http://')
      . (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME'])
      . $_SERVER['REQUEST_URI'];
    $selfno = $selfyes;
    $selfno = preg_replace('/\\?.*/s', '', $selfno);
    $data = file_get_contents(get_final_url($link));
    $final_url = substr(get_final_url($link), 0, strpos("get_final_url($link)?", "?"));
    $base_url = explode('/', $final_url);
    $base_url = (substr($final_url, 0, 7) == 'http://') ? $base_url[2] : $base_url[0];
    $link2 = 'http://1.'.$row['id'].'.pay.clickbank.net';
    $data = preg_replace('/<script[^>]*?>.*?<\/script>/si', '', $data); 
    $data = preg_replace('/<body[^>]*?>/', '<body>', $data); 
    $data = str_replace('<HTML>', '<html>', $data);
    $data = str_replace('</HTML>', '</html>', $data);
    $data = str_replace('<HEAD>', '<head>', $data);
    $data = str_replace('</HEAD>', '</head>', $data);
    $data = str_replace('<BODY>', '<body>', $data);
    $data = str_replace('</BODY>', '</body>', $data);
    $data = str_replace('<head>', '<head><base href="http://'.$base_url.'">', $data);
    $data = str_replace('</head>', '<script type=\'text/javascript\'>clicksor_layer_border_color = \'\';clicksor_layer_ad_bg = \'\'; clicksor_layer_ad_link_color = \'\';clicksor_layer_ad_text_color = \'\'; clicksor_text_link_bg = \'\';clicksor_text_link_color = \'#2443ff\'; clicksor_enable_text_link = true;</script><script type=\"text/javascript\" src=\"http://ads.clicksor.com/showAd.php?pid=*****</script><noscript><a href=\'http://www.yesads.com\'>online marketing</a></noscript></head>', $data);
    $data = str_replace('<body>', '<body><div><center><script src="http://hosting.conduit.com/DrawToolbar/?ct=*****&amp;cover=2&amp;culture=en&amp;exe=true"></script><br><font size="6"><a href="'.$link2.'">ORDER THIS ITEM NOW!</a></font></center></div><br>', $data);
    $data = str_replace('< html', '<!DOCTYPE html', $data);
    $data = preg_replace('/<a[^>]+href[^>]+>/', '<a+href="'.$link2.'">', $data);
    $data = str_replace('�', '', $data);
    $data = str_replace('</body>', '<p>Copyright 2009 *****.com All Rights Reserved</p><div><iframe src="'.$link.'" width="10" height="10" frameborder="0"></iframe><center><script src="http://hosting.conduit.com/DrawToolbar/?ct=******&amp;cover=2&amp;culture=en&amp;exe=true"></script><br><font size="6"><a href="'.$link2.'">ORDER THIS ITEM NOW!</a></font></center></div><script type="text/javascript">var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");document.write(unescape("%3Cscript src=\'" + gaJsHost + "google-analytics.com/ga.js\' type=\'text/javascript\'%3E%3C/script%3E"));</script><script type="text/javascript">try {var pageTracker = _gat._getTracker("UA-*****-33");pageTracker._trackPageview();} catch(err) {}</script></body>', $data);
    $html = $data;
    $config = array(
    			'clean'				=> yes,
    			'doctype'			=> transitional,
    			'enclose-block-text'	=> yes,
                'indent'      		=> true,
                'output-html'   	=> true,
    			'tidy-mark'			=> no,
    		//	'alt-text'			=> ,
    			'hide-comments'		=> yes,);
    // Tidy
    $tidy = new tidy();
    $tidy->parseString($html, $config, 'utf8');
    $tidy->cleanRepair();
    
    $ref = $_SERVER["HTTP_REFERER"];
    //echo $ref;
    if ( $selfyes == $selfno )
    {
    // $cachedir = './cached-offers/';
    //   check if there is a cached version
    // if ( file_exists( $cachedir.$row['id'] ) ) {
       //   if there is a cached version read content and display
    // readfile ( $cachedir.$row['id'] );
    // exit();
    // }
    $tidypage = tidy_get_output($tidy);
    ob_start();
    // require('/var/www/vhosts/****.com/httpdocs/cb/php_speedy/php_speedy.php');
    echo $tidypage;
    $bufferContent = ob_get_contents();
    ob_end_flush();
    // $compressor->finish();
    // $fp = fopen ( $cachedir.$row['id'], 'w' ) or die ( 'Error opening cache file' );
    // fwrite ( $fp , $bufferContent );
    // fclose( $fp );
    // Disply Page
    }
    else
    {
    // Fix Url and the Display Page
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: '.$selfno.'');
    exit;
    /*
    }
    function get_remotetitle($tidypage)
    {
            $dom = new DOMDocument();
    
            if($dom->loadHTMLFile($tidypage)) {
    
                $list = $dom->getElementsByTagName("title");
                if ($list->length > 0) {
                    return $list->item(0)->textContent;
                }
            }
    }
    $getpagetitle = get_remotetitle($tidypage);
    
    function get_remotebody($tidypage)
    {
            $dom = new DOMDocument();
    
            if($dom->loadHTMLFile($tidypage)) {
    
                $list = $dom->getElementsByTagName("body");
                if ($list->length > 0) {
                    return $list->item(0)->textContent;
                }
            }
    }
    $getpagebody = get_remotebody($tidypage);
    require 'wrapper.class.php';
    $pingfmtrack = "cb";
    $dev_api = '';
    $user_api = '';
    try {
    $wrapper = new PingFM_Wrapper;
    $wrapper->dev_api = $dev_api;
    $wrapper->user_api = $user_api;
    if ( $wrapper->act('post', array('post_method' => 'blog', 'title' => $getpagetitle, 'body' => $getpagebody)));
    }
    catch ( exception $e ) {
    echo $e->getMessage();
    echo $pingfmresult;
    }
    */
    ?>
    <?php
    }
    else{
    $link = 'http://'.$cb_user.'.'.$row['id'].'.hop.clickbank.net';
    }
    ?>
    
    PHP:
    I started with the last 6 lines, and came up with this entire file on trial and error.

    This is what i mean by grey hat. this file is used to pull the clickbank sales page to the server, clean the code, remove all scripts, remove all links and replace them with the order page.
    When i mean i am honest about my web design, I work hard to make it fair on all sides. Right now just recently i had a complaint, this ebook seller said i copies his page, removed all his links, replaced them with the sales page links.
    I thought i lost this case, but after looking at his sales page, no links, average sales pitch. the buy links.... were cookie stripping. He complained because he had to pay me for this sale i dove to him.
    clickbank is like this. unless you can protect yourself, clickbank is going to screw you over. so what if all clickbank affiliates used this? my guess is that clickbank sellers could not screw their affiliates out of hard earned commissions.!

    I was not born with these ideas.. they might not be right, nor wrong. but it stops the corruption in its tracks. I forget what clickbank script this is, but it's just a page where it redirects the visitor to the sellers page, where the commission stops.

    this is a current dispute, and do not recommend you using it. My purpose is to let you know. affiliates get burned, unless a creative idea can wing out the naughty sellers.

    I might stop for this evening.

    Thank you for letting me share my emotional moments being an affiliate marketer with trial and errors. Hope my logs help you any.
     
    jz1977, Oct 31, 2009 IP
  6. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #6
    good morning everyone!
    Just waking up next to my laptop watching tbs on a wall from a projector. Doing the morning routine, checking all my various accounts. Remembering passwords for everything was more of a challenge than it was worth. I hated creating new accounts because it seemed too much work remembering all those accounts. One of the greatest tools is called lastpass.com for helping with remembering account information. This tool will help you save time and if your memory is bad like mine, then its well worth the look.
     
    jz1977, Nov 1, 2009 IP
  7. jz1977

    jz1977 Peon

    Messages:
    16
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #7
    You must remember, I am poor. Poor people love great ideas. In this post, my goal is to help you setup two servers which mirror each other. They do not need to be the same in every aspect. also if you head over to serverbeach.com and pick yourself up the two cheapest linux servers. This is a great starting point. If you ever worked with shared hosting, one would know there are resource limits, a grid hosting account is like a shared hosting account, but multiple servers make up one server. if one server goes down, then your stuff is still there. grid hosting accounts lets your site grow on a limited shared server.

    Some sites need special modules installed, and renting a server allows those limits to vanish. Besides server limits, there are no limits to the customization one could make.

    A tool called syncftp. is a tool that runs on one server, it can sync the entire httpdocs folder with server number 2.

    dnsmadeeasy.com is a place that handles dns. A much more flexible and cheaper way of handing dns failover, and monitoring. You can set the dns up so it switches the request to server number 2 every 10 seconds. Now we just invented load balancing.
    Now our two cheap servers become a small cloud.
    One rule to ALWAYS follow is NEVER setup a database on these two servers.
    we are using the shared and grid hosting for that. godaddy allows external connections to their paid hosting accounts. 14 dollars will get you 25 accounts, 200 Megabytes per database. Split up your databases.

    I've ran many experiments on using large data sets. From my experience, even a beefy server has trouble with a 2 gig database. databases are resource hogs. this is why i use other peoples servers to host mysql. Their servers are configured in a way for speed.

    Plus 14 dollars is not too much to ask for mysql hosting.

    There you go, an introduction on how to set up your own server cloud on a low budget.
     
    jz1977, Nov 1, 2009 IP