Curl Cookies - Quick Tip

PHP Automation Coding 2 Comments »

I know I haven’t got around to writing script that uses cookies to login. However if you’re on that path and are interested in using cookies to do things like login and stay logged into a site there’s one troubling thing I had big issues with when I started.

To use a cookie we need to set it’s location and this is where I’ve had troubles. For some reason I’ve had problems using a cookie not set with the full path. So when you set your cookie location make sure you use the full path of your cookie location.

$cookie = “/home/user/tmp/cookie.txt”;
If you’re going to use multiple threads or want to code up a captcha solve you have to save the session so you probably want to do a
$cookie = “/home/user/tmp/cookie-”.rand(111,9999).”.txt”;

And that’s the quick tip. I beat my head against the wall with this one a bunch of times and the full path seemed to be the thing that solved the curl cookie issues I had. If you’re having problems with cookies give this a try.

Just quickly to use cookies you just use a couple of simple lines.

So the initial call you need to set a cookie like this

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie); // sets the cookie file location
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie); // this says to start a new cookie file.

And that’s it to set the cookie on login or whatever you might need to start a cookie for. Then all your calls after that would look like this.

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie); // sets the cookie file location
curl_setopt($ch, CURLOPT_COOKIE, $cookie); // use the cookie we have on file

And there you have it cookies are just that easy. I’ll get some example code up in the next day or so to show them in the wild.

Google enters Online Processing, Storage and Serving Space

General 4 Comments »

If you haven’t heard already Amazon has been doing this for a bit. Basically rather then buying a new server you can use a nice web based service to do things for you. Add all your stuff to their servers to run and it will act as a virtual server for you. Google is offering decent amount of bandwidth, storage and processing under their free plan. Read more about it here:

Google AppEngine


This is only in beta right now and only open to the first 10k people that signed up at 9pm PST. I tried at 10:30pm and it made it sound like I missed the boat and was added to a waiting list. But mind as well get on that list now if you’re interested.

PHP Platform I Write Code In

PHP Automation Coding 15 Comments »

As I’m sure you know PHP as with most languages you can code right in a text editor on your home computer. However this might not be the most effective use of your time. I get asked a lot, what I use to code in. Well after trying quite a few things the ZEND IDE is about the best thing I’ve found out there. Now I know there’s some of you that are going to whine that it’s a little overhead intensive and yes you’re right. Zend is by no means notepad. However it brings a lot of tools to the table that make it well worth that over head in my opinion.

  1. Built in sFTP, FTP drive mapping
  2. Stepped debugging
  3. Robust code completion library
  4. Version control and management

Now if you’re going to use Zend I invite you to go to tools/preferences first thing and uncheck “Use OS look and feel”. What this does is it makes Zend try and emulate what the rest of your computer looks like. For example if you’re running XP like me it gives it the XP look and feel. Honestly I hear a lot that Zend is super slow and people just can’t put up with it. Well this is what makes it slow, turn this off and the performance will improve 10 fold.

1. sFTP/FTP Drive Mapping
What got me started on writing this post is I was at nickycakes blog today and he was talking about drive mapping. I’m sure if you’re just starting or when you started with all this PHP and servers stuff one of the biggest pain in the butt’s was figuring out how this all worked. When I first started I used to run a copy of WAMP on my local machine and code everything locally. Then when I finished it and got it working I migrated it to the server. If you’ve ever done this you know the headache this can be. Windows has a totally different file structure. Permissions can be a pain in the ass and so on. Also once you have it on the server it’s going to require some debugging ( funny how software writing works that way ). So when I first started I’d download the file, edit it, upload it and test. As you can see doing this 100 times can be an arduous task.

Zend to the rescue. With zend you have a file manager in your left pane by default. In this pane all you have to do is left click then hit “add FTP server”. A window will pop up that will ask you the details of you FTP or sFTP connection. Then once you hit ok it’ll connect to the server and map a drive into Zend just like another hard drive on your local box. You can open, edit, close files all in real time which totally eliminates the upload/download task. This also allows you to build in real time on the server where the scripts are going to reside in the end. One thing to take note of. If you’re used to coding locally and uploading you always have a sort of backup of a working version online. Now that you’re controlling things in real-time you can easily write over something that works with something that doesn’t. Remember when you hit save the old file is gone.

2. Stepped Debugging
When I first shifted to PHP I came from a small background in Visual Basic and developing in Visual Studio. Well visual studio has very very robust debugging tools. For example if ( this is for php only coders ) you could hit run and it would go through your script step by step. Then as it’s going through you could mouse over each variable, object, array or whatever to see what was contained in it on that line. You can then make some tweaks and run that same line again and see if it fixed it. Something like this might be useful right? Well Zend has debugging built into it. And you can set it up so that it works direct on your server.

3. Robust Code Completion Library
This was HUGE when I was new and didn’t know many of the functions at all. Code completion allows you to start writing a function and it will bring up a list of functions to finish it. For example let say you’re looking for a string function to do something. Well you know that most of the string functions start with a “str” so you start typing that and it pops up the whole list of functions that start with “str” then you page down the list and find the one you’re looking for. When you type the complete function it shows you 1. a description of what the function does, 2. what the function takes as inputs and 3. what the functions generates as an output. This can be extremely helpful and save you a lot of time from going to php.net. Zend also has a powerful real-time syntactic code check. Just like when you’re working on a word document and it underlines grammar mistakes in real-time so does Zend with your syntax. It’s very useful to see if you missed a bracket here or there which you might spend a good amount of time debugging.

4. Version control management
If you’re working with a team on a single project and sharing files this can be really useful. Also is very helpful if you want to make backups along the way in an easy fashion. Zend supports both CVS and SVN. I’m not going to get into a lot chat about versioning. But just know it supports all the features of versioning natively.

5. I’m sure there’s other things I’m not thinking of right now.
If you’re reading this and use the Zend IDE feel free to add them in the comments.

That’s just a few reason to give Zend a shot. I can guarantee you with the tools it provides it will help you learn faster and speed your coding up. Don’t be lame and try it for a day or two. Really give it a shot as it’s a complex program that takes some getting used to. But will save you time and improve your coding once you d.

Pinging tool to let the world know your blog/site has been updated.

PHP Automation Coding 3 Comments »

Are you familiar with what pinging an aggregator is? If you’re looking for a way to let the world know that your blog or website has been updated there’s something you can do which is called pinging an aggregator ( I’m sure there’s some technical term for it but I don’t know or care what it is. ) which is a website that collects the latest updates on site by notification. Some examples of these places are weblogs.com, technorati, feed burner, etc. Back in the day (sounding like an old man) you could ping these places and the spiders would come running and index you instantly, this was back in 2006. They’re not nearly as effective now but definately still bring the spiders. I’ve been asked numerous times if I would post a script to post to these engines and honestly the easiest way to do it is go through something like pingomatic.com. Which submits the pings to all the engines for you. I may later make a script that uses the xml post to a list of aggregators seperately. But for now to keep it easy lets get started with a simple pinger for pingomatic. This is an EXTREMELY simple script that if you know how to use curl you could do very easily. However sometimes the hard part is finding out what to post where. Therefore I’m going to touch on using LiveHTTPHeaders to pull the string out.

If you don’t have LiveHTTPHeaders please go to http://livehttpheaders.mozdev.org/ and install it now. I’m also going to assume you’re using FireFox as any self respecting dev should be. The first thing once you have LHH installed is go to “Tools” in firefox and then down to “Live Http Headers” and open the headers window. Next go to http://www.pingomatic.com in firefox. You’ll probably see a bunch of stuff fly by on the window as that’s the headers being passed and received to get to that page. Now you’ll want to hit clear and clean that out so the box is blank for LHH. Next fill in your values on the form on pingomatic.com, once you’re done hit “send pings”. Again you’ll see some info in the headers box that looks like this.

http://pingomatic.com/ping/?title=Oooff.com&blogurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2F&rssurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2Ffeed&chk_weblogscom=on&chk_blogs=on&chk_technorati=on&chk_feedburner=on&chk_syndic8=on&chk_newsgator=on&chk_myyahoo=on&chk_pubsubcom=on&chk_blogdigger=on&chk_blogstreet=on&chk_moreover=on&chk_weblogalot=on&chk_icerocket=on&chk_newsisfree=on&chk_topicexchange=on

GET /ping/?title=Oooff.com&blogurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2F&rssurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2Ffeed&chk_weblogscom=on&chk_blogs=on&chk_technorati=on&chk_feedburner=on&chk_syndic8=on&chk_newsgator=on&chk_myyahoo=on&chk_pubsubcom=on&chk_blogdigger=on&chk_blogstreet=on&chk_moreover=on&chk_weblogalot=on&chk_icerocket=on&chk_newsisfree=on&chk_topicexchange=on HTTP/1.1
Host: pingomatic.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12
Accept: application/x-shockwave-flash,text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://pingomatic.com/
Cookie: blogurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2F; title=Oooff.com; pinged=a%3A13%3A%7Bi%3A0%3Bs%3A14%3A%22chk_weblogscom%22%3Bi%3A1%3Bs%3A9%3A%22chk_blogs%22%3Bi%3A2%3Bs%3A14%3A%22chk_technorati%22%3Bi%3A3%3Bs%3A11%3A%22chk_myyahoo%22%3Bi%3A4%3Bs%3A13%3A%22chk_pubsubcom%22%3Bi%3A5%3Bs%3A14%3A%22chk_blogstreet%22%3Bi%3A6%3Bs%3A14%3A%22chk_feedburner%22%3Bi%3A7%3Bs%3A11%3A%22chk_syndic8%22%3Bi%3A8%3Bs%3A13%3A%22chk_newsgator%22%3Bi%3A9%3Bs%3A14%3A%22chk_blogdigger%22%3Bi%3A10%3Bs%3A12%3A%22chk_moreover%22%3Bi%3A11%3Bs%3A14%3A%22chk_weblogalot%22%3Bi%3A12%3Bs%3A13%3A%22chk_icerocket%22%3B%7D

HTTP/1.x 200 OK
X-Powered-By: PHP/4.4.7
Set-Cookie: blogurl=http%3A%2F%2Foooff.com%2Fphp-affiliate-seo-blog%2F; expires=Mon, 07 Jul 2008 14:41:14 GMT; path=/; domain=.pingomatic.com
Set-Cookie: title=Oooff.com; expires=Mon, 07 Jul 2008 14:41:14 GMT; path=/; domain=.pingomatic.com
Set-Cookie: pinged=a%3A13%3A%7Bi%3A0%3Bs%3A14%3A%22chk_weblogscom%22%3Bi%3A1%3Bs%3A9%3A%22chk_blogs%22%3Bi%3A2%3Bs%3A14%3A%22chk_technorati%22%3Bi%3A3%3Bs%3A11%3A%22chk_myyahoo%22%3Bi%3A4%3Bs%3A13%3A%22chk_pubsubcom%22%3Bi%3A5%3Bs%3A14%3A%22chk_blogstreet%22%3Bi%3A6%3Bs%3A14%3A%22chk_feedburner%22%3Bi%3A7%3Bs%3A11%3A%22chk_syndic8%22%3Bi%3A8%3Bs%3A13%3A%22chk_newsgator%22%3Bi%3A9%3Bs%3A14%3A%22chk_blogdigger%22%3Bi%3A10%3Bs%3A12%3A%22chk_moreover%22%3Bi%3A11%3Bs%3A14%3A%22chk_weblogalot%22%3Bi%3A12%3Bs%3A13%3A%22chk_icerocket%22%3B%7D; expires=Mon, 07 Jul 2008 14:41:14 GMT; path=/; domain=.pingomatic.com
Content-Type: text/html
Content-Length: 2484
Date: Thu, 13 Mar 2008 20:54:40 GMT
Server: LiteSpeed
Connection: close
I’m not going to get into detail on what all that means because in this case we only care about one thing and that’s the very top line. They are using a GET string vs. a post as you can see all the data is be appended to the url. If you don’t know there are two ways to pass data in HTML that’s a GET or POST. GET is going to put all the data in the url. For example look at googles string when you do a search, that’s using GET style data passing. A POST pass is a little more complicated so we’ll save that for the next tutorial. There would be an additional line in the headers that would say post:. With a post we need to add a few more lines to the curl call but we’re not going to do that in this tutorial. Now that we have our url with the data in it lets talk about hwo we’re going to make that into a script to post to the ping.

What I decided to do to make it easier to read is break the string up as you can see we’re using the .= which just keeps appending the string. So you could do this in a single string inline but this is much easier to read. From here I’m going to go to commenting the code for each line.

<?php

// Here is where we're breaking up the url as mentioned above, you can easily see which engines we're pinging now as opposed to trying to find them in the long url
// this is the base url so we're starting our url with that
$url = "http://pingomatic.com/ping/?";
// you'll notice we're using a urlencode function here that makes the text you print url friendly and replaces the chars like spaces with their appropriate url friendly value.
$url .= "title=".urlencode("PHP Posting and Screen Scraping Tutorials");
$url .= "&blogurl=".urlencode("http://oooff.com/php-affiliate-seo-blog/");
$url .= "&rssurl=".("http://oooff.com/php-affiliate-seo-blog/feed");
//as far as I'm concerned leave all the ping places on, the more the better
$url .= "&chk_weblogscom=on";
$url .= "&chk_blogs=on";
$url .= "&chk_technorati=on";
$url .= "&chk_feedburner=on";
$url .= "&chk_syndic8=on";
$url .= "&chk_newsgator=on";
$url .= "&chk_myyahoo=on";
$url .= "&chk_pubsubcom=on";
$url .= "&chk_blogdigger=on";
$url .= "&chk_blogstreet=on";
$url .= "&chk_moreover=on";
$url .= "&chk_weblogalot=on";
$url .= "&chk_icerocket=on";
$url .= "&chk_newsisfree=on";
$url .= "&chk_topicexchange=on";

// now that we have our url composed our url we’re going to call it using curl
// initializes the curl object and sets the url we’re going to get
$ch = curl_init($url);
// tells curl it to follow any redirects
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
// returns the page fetched to a variable in this case $page
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// executes the curl object as we have things set
$page = curl_exec($ch);
// cleans up the curl object nicely
curl_close($ch);
//prints the page got to the screen to make sure it worked right.
echo $page;

?>

A challenge for you, take this script and make it load the data from a csv file which is in the format

title,url,feed
title,url,feed
Here’s a hint there’s another tutorial on this site you can copy that from.

Hope this helps some of you building a simple ping system for your sites and blogs. I might show you a tutorial on how to ping each individually but we’ll see how I feel. Now we wouldn’t want to over ping and abuse this now would we ;)

Enjoy!
Smaxor

Affiliate Summit West - Rant…

Affiliate News 6 Comments »

As normal I started to respond to a post on wickedfire about affiliate summit west and got into a rant so I decided to post it here.

First off as I mentioned in my previous post I really like conferences and of all the conferences I’ve been to I like affilaite summit the best. Shawn Collins puts on a great conference and they seem to be getting better all the time.

However this one was a little overwhelming seems as though it had grown to about triple the size of the one last year. However felt like it didn’t grow proportionately. What I mean and what got sooooooo annoying is there were like 50 affiliate networks there. And every single one would constantly try and pitch you with the same crap.

When are these guys going to get a clue and provide a unique value proposition. This is an industry where the good people are good marketers and sales people. There’s nothing that makes me sadder then being pitched the same pitch over and over again. “I’ve never been an affiliate and made good money at it but I’m going to help you make money”.

For example, I was in the elevator with some guy going to a club and he just wanted to hard close me on being an affiliate for his shitty network I’ve never heard of. And they all say the same shit “we have the best payouts”, “we have lots of unique offers”, oh and don’t forget this one

But honestly the affiliate network space is getting more and more crowded and for those of you networks that are reading this FIND A —> UNIQUE <— VALUE PROPOSITION. Because the pushy salesman tactics isn’t going to get you anywhere in my camp And I don’t speak for all affiliates of course but if you’re looking to pull the bigger affiliates into your network give them things, that are going to make them money. As far as I’m concerned every pitch I heard was the same, they say we have unique offers and the highest payouts….. but all I heard if we want your traffic so we can make money off you.

Of course I have my people I’ve worked with for a long time and I don’t plan on changing because I have a comfort level with them and know I’m going to get paid. However if it was me and I was pitching a network I’d come up with things to offer bigger affiliates and make it about them making money and not yourself.

What tools might an affiliate use that you could help supply?

  1. emails
  2. bid data and keywords
  3. subscriptions to bid management systems
  4. use of in house coders
  5. custom built landing pages
  6. access to large networks to use for linking or discounts to paid link systems ( for example if you own a paid link network in addition to an affiliate network then give affiliates discounts )

My point is get creative people. And honestly make it about the affiliates and not about you. I know this is sales 101 but it just irked me walking through hearing the same crap over and over. My guestimation was there was about 1/3 affiliates and 2/3 products, advertisers and networks. Which is great for me but walking through I started to skip the booths that were networks and go to the technology booths because I know the technology is what makes me money.

Well enough ranting, I’ll throw up another post about some of the good stuff that happened when I get the chance but this one got started first. :)

P.S. My pitch would be if I owned a network and someone walked up to my booth I’d say

“I have a way to make you more money, are you interested in talking a little?”
“what monthly budget, volume do you do now?”
“If I could supply you with a couple things that would increase that would you be interested in running traffic to my network?” OF COURSE. < Insert Unique Value Proposition Here >

Affiliate Summit West, For those of you planning on heading out I’ll see you there.

Affiliate News, Affiliate Marketing 5 Comments »

I Know I don’t usually post crap that’s not specifically coding related but I thought I’d reach out and see who of my readers is going to Affiliate Summit West? For those of you who don’t know ASW is a small to medium sized affiliate tradeshow that really caters to the smaller affiliate crowd. When I say “smaller affiliate crowd” I don’t mean income wise. The show is filled with the guys that aren’t giant corporations with 50, 100, 1000 employees. Most of the people you’ll find at this show run their own stuff or have a small team of people but are very close to the action. The only ones this doesn’t apply to are the vendors. I suppose after being around for a while there’s nothing that bothers me more then not being able to talk with the owner or one of the founders of a company. As I’m the owner and founder of my own company. Now I know organizations have to grow and most of the time that means loss of someone that knows everything that’s going on. It also means it’s a lot harder to get in contact with that person that does know what’s going on as they move higher up the food chain. If you’re interested in meeting some of the owners/ceo’s of the companies you promote first hand this is the place to do it. Introduce yourself, shake their hand and tell them how you can make them money. Really an opportunity you’ll never get dealing with an online form for signup and an affiliate manager. I don’t care what people say…. the people at the top do know more, get to them and meet as many as you can.

I’ve had the opportunity to attend both Afilliate Summits last year and AdTech SF. All were worth their weight in gold for helping our affiliate marketing company ( if you could call it that ) move along.. I’ve had some people ask me what was so great about it…. well in my experience it really wasn’t the speakers or the vendors but rather the people walking around that are affiliates just like all of us. If you, like me, don’t know a single sole off line that knows the first thing about “what” affiliate/internet marketing is then your’e not alone. Here’s an opportunity to get around some like minded soles looking to achieve a similar outcome as you. I don’t care what anyone says you’re much better off sharing information and working with other people. You can just get so much more accomplished so much faster when you have 2-3 people thinking about a problem rather then just yourself sitting there. I’m no brain but I think I’m a pretty smart and a creative guy however the people I work with come up with great ideas I never would of thought of and we all benefit. In all honesty it’s hard to know who is legit online and who isn’t. And one way to advance those relationships much faster is to go sit down with people and meet them in person. It’s much easier to get a guage on someone when you’re sitting having a drink with them rather then some forum posts.

Well I’ve said my piece. I hope to see everyone who reads my blog out in Vegas. I’m the 6′5 240lbs fellow with the blackhat on . See you there.

P.S. leave a post on here if you’re going to be there or email me and we’ll see if we can connect. I leave for Brazil tonight and am flying direct to vegas but will be occasionally checking my email while I’m down there. Have a great week. Smaxor

Directtrack PHP Class to pull your stats Automatically - Copeac, CPA Empire

Affiliate Marketing, PHP Automation Coding 4 Comments »

I’ve been having a few people ask me for my class to login and pull stats automatically from the different affiliate networks that run on Directtrack’s Affiliate Solution. In one of my previous posts there’s a section of the db called conversions. Well what that section is for is to put all your conversions in from Directtrack. If you go into your directtrack account and hit advanced stats you’re going to see all your subid’s you’ve passed for conversions. This class does that automatically. You’ll need to write a little script to implement the class. But it’ll save you a bunch of time on trying to figure out how to login, grab and parse your affiliate stats. To use this you’ll also need to setup a writable dir for you cookie files. Because when this script log’s in it needs to save a cookie so that it can tell copeac or cpa empire that you’re a verified user.

<?
class DirectTrack {

private $loggedin;
private $login;
private $password;
private $site;
private $cookiefile;
private $start_day;
private $start_month;
private $start_year;
private $end_day;
private $end_month;
private $end_year;

/**
* logs you into the dt system of your choice
*
* @param string $login - login for directtrack
* @param string $password - password for directtrack
* @param string $site - i.e. affiliates.copeac.com or monetizeit.net
* @param string $cookie - cookie location
*/
public function __construct($login,$password,$site,$cookie){

$this->loggedin = false;
$this->login = null;
$this->password  = null;
$this->site = null;
$$this->cookiefile = null;
$this->start_day = null;
$this->start_month = null;
$this->start_year = null;
$this->end_day = null;
$this->end_month = null;
$this->end_year = null;

$this->setLogin($login);
$this->setPassword($password);
$this->setSite($site);
$this->setCookieLocation($cookie);
$this->DTLogin();

}
/**
* deletes the cookie file on destroying the object remember to unset your object
*
*/
public function __destruct(){
unlink($this->cookiefile);
}

/**
* login setter, url encodes
*
* @param string $login
*/
public function setLogin($login){ $this->login = urlencode($login); }
/**
* password setter, url encodes
*
* @param string $password
*/
public function setPassword($password){ $this->password = urlencode($password);}
/**
* Directtrack site domain setter
*
* @param string $site - i.e. affiliates.copeac.com or monetizeit.net
*/
public function setSite($site){ $this->site = $site;}
/**
* setter for the cookie directory, randomizes the cookie as well incase multi threads are running
* Please make sure your directory is writable
*
* @param string $cookie
*/
public function setCookieLocation($cookie){
$this->cookiefile = $cookie.”/cookie”.rand(11111111,99999999).”.txt”;
}
/**
* getter for the currently generated cookie file location
*
* @return string
*/
public function getCookieLocation(){return $this->cookiefile;}
/**
* Checks the status of being logged In
*
* @return array - array(’msg’=> ”,’status’=>”) 0 logged out, 1 logged in.
*/
public function LoggedInStatus(){
if($this->loggedin){
return array(”msg”=>”Logged In!”,”status”=>1);
}else{
return array(”msg”=>”Not logged in!”,”status”=>0);
}
}
/**
* sets the start date for the report you’re looking for
*
* @param int $day
* @param int $month
* @param int $year
*/
public function setStartDate($day,$month,$year){
$this->start_day = $day;
$this->start_month = $month;
$this->start_year = $year;

}
/**
* sets the ending date for the report you’re looking for
*
* @param int $day
* @param int $month
* @param int $year
*/
public function setEndDate($day,$month,$year){
$this->end_day = $day;
$this->end_month = $month;
$this->end_year = $year;

}
/**
* Combo function which gets the advanced report from direct track that has all the
* specific sub-id data then parses it into a multi dimensional array
*
* @return array - array[line][fields]
*/
public function AdvancedStats(){

if(!$this->loggedin){
$this->DTLogin();
}

$stat_page = $this->DTfetchAdvancedStats();
return $this->csv2array($stat_page);

}
/**
* extends AdvnacedStats, and then inserts the data into the db
*
* @return array - advanced stats array incase you want it for something else
*/
public function AdvancedStats2DB(){
$stats = $this->AdvancedStats();
$this->DBconversionInsert($stats);
return $stats;

}
/**
* gets totals based on account for dates set
*
*/
public function Totals(){
$csv = $this->DTfetchTotals();
return $this->csv2array($csv);
}
/**
* NOT COMPLETE
* -Needs the regex to work properly
* -paging for sites that have multiple pages of results
*
* @return array
*/
public function AllOffers(){
$campaign_page = $this->DTfetchAllCamapigns();

$regex_sections = “/<\/a><\/td>.+?program_id=(\d*)&.+?\’>(.+?)<.+?top\’>\$*(.+?)/*<*.+?’>(.+?)<.+?’>(.+?)</s”;
preg_match_all($regex_sections,$campaign_page,$matches);

foreach($matches[0] as $section){
echo “<br><br>$section<br><br>”;
//get section name
$regex_section = “/Category: (.+?)</”;
preg_match($regex_section,$section,$match);
$section_name = “<b>”.$match[1].”</b>”;

$regex_offers = “/program_id=(\d*)&/s”;
preg_match_all($regex_offers,$section,$matches);
var_dump($matches);
exit;

$offers = array();
$sets = 0;
foreach ($matches as $data){

if($sets != 0){
$i = 0;
foreach ($data as $offer_data){

$offers[$i][] = $offer_data;
$i++;
}
}
$sets++;
exit;
}
array_unshift($offers,$section_name);
var_dump($offers);
}
return $offers;
exit;

}
//// Private //////

/**
* the function that logs into your directtrack account
*
* @return string - curl output
*/
private function DTLogin(){

$url = “https://$this->site/index.html”;
$post = “DL_AUTH_USERNAME=$this->login&DL_AUTH_PASSWORD=$this->password”;

$ch = new CurlPost($url,$post);
$ch->setCookie($this->cookiefile);
$ch->SSL();
$c_out = $ch->execute();
unset($ch);
if(1){ //parse for successful login
$this->loggedin = true;
}
return $c_out;
}
/**
* gets the advanced stats once logged in
*
* @return string - curl output - csv format
*/
private function DTfetchAdvancedStats(){

$url = “https://$this->site/partners/monthly_affiliate_stats.html?program_id=0&affiliate_stats_start_month=$this->start_month&affiliate_stats_start_day=$this->start_day&affiliate_stats_start_year=$this->start_year&affiliate_stats_end_month=$this->end_month&affiliate_stats_end_day=$this->end_day&affiliate_stats_end_year=$this->end_year&breakdown=cumulative&get_lead_info=Download+Optional+Info”;

$ch = new CurlGet($url);
$ch->useCookie($this->cookiefile);
$ch->SSL();
$curl_stats = $ch->execute();
unset($ch);
return $curl_stats;
}
/**
* breaks csv data into a multi-dim array with array[line][fields]
*
* @param string $curl_data - csv from advanced page
* @return array - multi-dim array[line][fields]
*/
private function csv2array($curl_data){

$return = array();
//lines to array
$stats = explode(”\n”,trim($curl_data));

foreach($stats as $line){
//fields to array
$fields = explode(”,”,trim($line));
$record = array();
foreach($fields as $field){
$record[] = trim($field);
}
$return[] = $record;
}
return $return;
}
/**
* takes the multi-dim array from DTparseAdvancedStats and inserts it into a db
*
* @param array $stats
*/
private function DBconversionInsert($stats){

$count = 0;
foreach($stats as $row){
if($count != 0){

//assignments
$click_id        = trim($row[2]);
$source         = $this->site;
$date             = $this->_ChangeDateFormat($row[0]);
$campaign        = addslashes(trim($row[1]));
$campaignID     = trim($row[3]);
$transactionID    = trim($row[4]);
$lineitemID        = trim($row[5]);
$commission     = $this->_CleanCommission($row[6]);

$sql = “INSERT INTO `conversions` (`click_id`,`source`,`date`,`campaign`,`campiagnID`,`transactionID`,`lineitemID`,`commission`) VALUES (’$click_id’,'$source’,'$date’,'$campaign’,'$campaignID’,'$transactionID’,'$lineitemID’,'$commission’)”;

//echo “$sql<br>”;
if(!strpos($click_id,”blogs”))
{
mysql_query($sql);
}
//if(mysql_error()){ echo mysql_error().”\n”; }

}
$count ++;
}
}
/**
* gets the totals for all sales by campaign
*
* @return string - curl output
*/
private function DTfetchTotals(){

$url = “https://$this->site/partners/monthly_affiliate_stats.html?program_id=0&affiliate_stats_start_month=$this->start_month&affiliate_stats_start_day=$this->start_day&affiliate_stats_start_year=$this->start_year&affiliate_stats_end_month=$this->end_month&affiliate_stats_end_day=$this->end_day&affiliate_stats_end_year=$this->end_year&breakdown=cumulative&get_csv=1″;

$ch = new CurlGet($url);
$ch->useCookie($this->cookiefile);
$ch->SSL();
$curl_stats = $ch->execute();
unset($ch);
return $curl_stats;
}
/**
* once logged in curl to get the campaigns
*
* @return string - curl page
*/
private function DTfetchAllCamapigns(){
$url = “https://$this->site/partners/search_program_categories.html”;

$ch = new CurlGet($url);
$ch->useCookie($this->cookiefile);
$ch->SSL();
$curl_stats = $ch->execute();
unset($ch);
return $curl_stats;
}

// private functions
private function _ChangeDateFormat($date)
{
$parts = explode(”/”,$date);
$date = $parts[2].”-”.$parts[1].”-”.$parts[0];
//echo $date.”<br>”;
return $date;
}
private function _CleanCommission($dollar)
{
return str_ireplace(”$”,”",$dollar);
}
}

// THIS IS HOW YOU USE THE CLASS

//$cookieDir = “cookies”;
//$dt = new DirectTrack(’my@email.com’,'password’,'copec.com’,$cookieDir);
//$dt->setStartDate(1,6,2007);
//$dt->setEndDate(18,6,2007);
//var_dump($dt->LoggedInStatus());
//echo $dt->getCookieLocation();
//var_dump($dt->AdvancedStats());
//var_dump($dt->Stats2DB());
//var_dump($dt->Totals());
//var_dump($dt->AllOffers());
//unset($dt);

?>

P.S. Sorry for the crappy display of the code. Unlike Uberaffiliate I don’t make money from my blog so it doesn’t get that much attention. :D

PepperJam Are you Sure this is how you want to talk to people?

Affiliate Marketing 17 Comments »

The other day someone told me about the new Pepperjam Affiliate network and being as I like to check out everything new in the industry I decided to sign up. They accepted me so I logged on and took a look.

First thing I noticed is it’s a based on acceptance by the advertiser network. So I did like I do with all those kinds of networks and applied for every single advertiser. I got a bunch of approvals right away and it seems like a lot of the advertisers are on auto approve. So cool I let it sit as I’ve had other things to do. When today I get this email from PepperJam.

“Dear <affiliate name>,
Blockbuster has opted to terminate you from their affiliate program. Please remove your links, as you will no longer be receiving a payout for leads or sales effective immediately. If you are interested in the reason, please contact the aforementioned advertiser. Thank you.

pepperjamNETWORK

Advertiser Support Team”

Now keep in mind I’ve never even sent 1 click to a single link on PepperJam as I just signed up. And already I’m getting canceled?

So my question is this as a network owner do you care about consistency? Say I had just spent 3 days setting up blockbuster campaigns to earn us ( pepperjam and I ) money and then got this email? Instability in advertisers is a good way to lose new affiliates don’t you think? Anyone else had a similar experience yet?

I emailed support and we’ll see how they respond. I’ll post the response when I get it.

As far as I’m concerned there’s a ton of unknown about pepperjam. Are they going to pay on time? How consistent are they? I know they’ve been selling seo services for a long time but that doesn’t mean they know how to work with affiliates. We’ll see how they handle all these situations.

Don’t Ever Forget Who You’re Selling to!

General 4 Comments »

Sometimes I find myself assuming people are smarter then they are. Then I come across things like this and it reminds me why someone will go to a totally unknown site on the internet and fill in their name, social security, bank account, etc like they would on a payday loans lead. People just never cease to amaze me.

Read the brilliant post about linux some cat made here!

P.S. Could be linkbait but who knows. Either way it gave me a good laugh.

How To Approach Making Money Online the Blackhat Way!

Affiliate Marketing, General 14 Comments »

If you haven’t guessed by now I’m not the kind of guy to give fish out, I’m a strong believer in the “Teach and man to fish” theory.

Not sure how this is going to work but I thought I was a great conversation on some of the basics of blackhat. Now this isn’t get rich quick stuff it’s more more focused on how to approach things and how to learn “how to do Blackhat” from a root base level. If you’re looking for the answers and a just do X, Y and Z and you’ll get rich this isn’t the post for you. Hell this isn’t the blog for you. Let me know what you think as this was about an hour conversation with some friends of mine on IRC.

All Names except mine have been changed to protect the innocent :P

************************************************

<Smaxor> ladies
* Joe has joined #cakes
<Joe> f*** 82 clicks yesterday not one f***IN conversion…f*** ppc i need to get into some blackhat sh**.
<Joe> nice shades
<Joe> yo man, point me in the right direction for getting sh**loads of traffic through BH techniques? im a coder too….
<Jerry> Joe, syndk8.net
<Joe> yeah i got that on my rss feed
<Joe> i guess right now, my main goal is to make some FAST cash to get me started, then i will start building up slower, but more reliable forms of profit
<Jerry> doesn’t work that way
<Jerry> you build slow so you can learn how to properly build fast
<Joe> there’s tons of methods damnit…blogging….arbitrage, i donno
<Jerry> well pick one and try it
<Joe> do autoblogs really work? i mean…most people only see $5 a week lmao
<Joe> or…most people i’ve talked to
<Jerry> if done properly they can make some money
<Joe> do you use wpomatic
<Jerry> no i write my own software always
<Joe> or autoblog
<Joe> oh ok
<Joe> think it’s better to slap adsense on them or some aff links
<Jerry> or both
<Joe> are directory submissions worth it
<Jerry> helps get indexed
<Joe> i heard about this SQUIRT sh**
<Smaxor> Eli’s a good guy
<Joe> yeah he’s very creative
<Joe> and a coder…f*** if i was creative, i’d have some dough because people on WF all the time say if you can code you should be makin some money
<Joe> so i must have somethin wrong with me goddamnit
<Smaxor> would you quit with the self hating
<Smaxor> that sh** gets old
<Joe> nah im not self hating
<Smaxor> <Joe> so i must have somethin wrong with me goddamnit
<Smaxor> that’s self hating
<Smaxor> now shouldn’t you be doing something to make some money
<Joe> yes i should
<Joe> don’t know exactly what though. f***.
<Joe> 82 mother f***in clicks yesterday not one conversion
<Smaxor> sounds like you suck at picking keywords
<Joe> this is why i need some f***in free BH traffic
<Joe> nah those same KW’s were converting well
<Smaxor> well what happened?
<Joe> maybe cuz it’s christmas time idk people are probably busy
<Smaxor> not to busy to click
<Smaxor> my conversions and traffic has gone up as we approached xmas
<Joe> maybe im just in a slump then, idk because it’s a free trial offer
<Joe> well they pay S + H
<Joe> Smaxor how did you learn BH
<Smaxor> I stopped talking on irc and reading forums and spent a few months doing nothing but watching the serps
<Smaxor> then reverse engineered what I saw on there
<Smaxor> that’s the only way to do blackhat
<Smaxor> reading forums and sh** isn’t going to get you anywhere as the really good stuff isn’t talked about
<Joe> and being creative, exploiting high-traffic sites
<Smaxor> nope
<Smaxor> none of that
<Smaxor> researching and seeing what other people are doing
<Smaxor> then copying it
<Joe> http://seoblackhat.com/
<Joe> $100 a month
<Smaxor> you’ll eventually learn your own ideas
<Joe> wonder if it’s worth it
<Smaxor> are you not f***ing listening to me
<Joe> im listening
<Smaxor> don’t ask a question then ask about something else
<Smaxor> no that’s a waste of “your” time ( not everyones just yours specifically )
<Joe> k
<Smaxor> if you want to learn blackhat do what I told you
<Joe> watch serps for months
<Joe> reverse engineer
<Smaxor> yep
<Smaxor> look at the high competition high payout niches
<Joe> education
<Smaxor> drugs, finance, ringtones
<Joe> my AM told me to try edu on ppc
<Joe> i bout slapped him
<Joe> only thing though, if i start getting BH traffic, im scared of getting banned from my aff networks
<Smaxor> quit being a pussy
<Joe> well i cant make money if i get banned from the aff networks :-\
<Jerry> there are tons of affiliate networks
<Jerry> most will warn you if you’re getting sh**ty traffic
<Joe> ok
<Smaxor> yeah blackhat traffic isn’t an issue usually unless you’re stupid about it
<Smaxor> and spamming links while you have the offer up
<Smaxor> and redirecting or some sh**
<Joe> hmm
<Carl> Smaxor - you should write a Blackhat Affiliate Playbook - similar to diorex’s, but with automation involved ;)
<Smaxor> yeah there’s just to much to know
<Smaxor> to be honest
<Smaxor> there’s no playbook really
<Smaxor> casue there’s a million things you can do
<Smaxor> suppose I could write a playbook on sh** like read the serps
<Smaxor> but stuff evolves pretty quickly
<Smaxor> and I don’t give out direct info that’s working
<Smaxor> if I can still really exploit it then not worth publishing
<Smaxor> my blogs just for fun and helping people out, not worth losing money because I’m blogging about some sh**
<Jerry> curl tutorials are all anyone should need
<Jerry> if you can’t make money by using curl to scrape other websites then you probably aren’t creative enough for that type of stuff
<Mike> what about php?
* Mike just ordered that php book last night.
<Jerry> sigh
<Smaxor> honestly when I need something new to automate all I do is go to the serps and find what’s working then make it
<Jerry> curl/php
<Smaxor> honestly it’s all right there
<Mike> ohhh
* Mike nods.
<Mike> my b :P
<Smaxor> php is just a tool
<Jerry> yeah same
<Joe> (12:33:12) ~ (@Jerry) if you can’t make money by using curl to scrape other websites then you probably aren’t creative enough for that type of stuff
<Joe> true dat :-\ i know how to use php and curl and sh**
<Joe> just not f***in creative enough to know what to do with my goddamn skills
<Smaxor> shut the f*** up Joe I’m tired of hearing your whining
<Joe> hey, im a newb :-P
<Joe> everyone was noob at some point
<Smaxor> Joe is a retard I told him go look at the serps but nooooooooo he just wants to whine
<Joe> im not whining homie
<Jerry> dude you are kinda whining, just go try some sh** and see what works, thats how everyone gets started
<Joe> and if i was a retard i wouldn’t even be in the business at age 16
<Joe> how could one profit off a script that creates a gmail or hotmail account
<Smaxor> dude
<Carl> you can sell it to me ;)
<Smaxor> shouldn’t you be looking at the serps?
<Carl> if its php
<Carl> not the esrun one
<Carl> mine was Joe
<Joe> the one i make would probably have manual captcha solving
<Joe> because idk too much about captcha crackers
<Joe> or captcha solvers
<Carl> thats a bummer
<Smaxor> yeah the script to create stuff like gmail accounts is easy
<Smaxor> the captcha stuff is hard
<Joe> yes.
<Joe> ah f***
<Carl> Smaxor - hes on the right path…serps show a lot of sh** feeding to blogspot, which involves a gmail account (kinda)
<Carl> seems like the best way to make throwaway sites
<Joe> blogger creator
<Smaxor> so then start coding
<Joe> well. see the sad thing is, i’d code it, sell it for not that much, then people i’d sell it to would probably make a lot more money off of MY code
<Jerry> great attitude
<Joe> how? IDK
<Joe> im just tellin it like it is.
<Smaxor> is that more whining I hear?
<Smaxor> nah you’re telling it how you see it
<Smaxor> that’s not “how it is”
<Joe> dude im not tryin to f***in whine im just speculating on what will happen because ive seen it happen
<Smaxor> so cause soemthing has happened with some dipsh** in the past means it’ll happen to you?
<Smaxor> seriously you should get a job at Mc Donalds
<Smaxor> I’m being honest
<Smaxor> that’s what you think of yourself
<Joe> thanks bro.
<Smaxor> only being honest
<Smaxor> you need to pull yourself together and be a man
<Smaxor> decide you’re going to make something specific work
<Smaxor> then not quit until you do
<Joe> been trying that for 6 months
<Smaxor> and stop talking all this sh** about well poor me I’d probably do blah blah blah
<Joe> every since I joined WF
<Smaxor> that’s cause you’re not focusing
<Smaxor> you’re wasting a bunch of f***ing time trying 10 different things and talking in forums and on IRC
<Joe> im just trying to think of ideas on how i can write code that will benefit me.
<Joe> not other people.
<Smaxor> dude what did I tell you to do?
<Joe> i know look at the f***ing serps i been doing that
<Smaxor> not enough
<Joe> even read the goddamn wiki
<Smaxor> have you spent 8 hours a day staring at them for a month
<Smaxor> looking at all the different serps
<Smaxor> looking for things that keep popping up
<Smaxor> then investigating those thing?
<Joe> wish i could spend that much time
<Smaxor> http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=MG5&q=buy+viagra&btnG=Search
<Joe> but i’ve got to go to f***ing goddamn school
<Smaxor> look at that serp result
<Smaxor> and tell me what you see
<Joe> alright
<Joe> i see a sh**load of sponsored results
<Smaxor> in the organics
<Joe> some blogs
<Smaxor> what about them
<Joe> medical sites
<Joe> holy sh**!
<Joe> look at the ps3forums result, click it
<Smaxor> what about it?
<Joe> dude is smart as f*** made a profile on buy viagra so it’d get indexed then i guess found an exploit to make the page redirect to his buy viagra pag
<Joe> e
<Joe> www.ps3forums.com/member.php?u=62801
<Mike`> lol
<Smaxor> hmm look at that 1 min later and all of a sudden you looked in the serps and found something
<Smaxor> shocker
<Mike`> that is pretty good
<Joe> yeah
<Smaxor> there’s more there
<Smaxor> a lot more
<Joe> vbulletin 3.6.8
<Smaxor> that you can find out from that one query
<Smaxor> there’s at least 3 strateies to be found from investigating those rankings
<Joe> dont see any public exploits for 3.6.8 so idk how the hell he did that redirect
<Joe> because vbulletin stops <script> tags
<Smaxor> so you don’t have to see exactlly how to do it
<Smaxor> who’s to say you couldn’t just use an image
<Smaxor> and a link
<Mike`> spam blog technorati
<Smaxor> with that rank
<Smaxor> yeah
<Smaxor> there’s another one
<Smaxor> if you look at that stuff enough they just jump out “Glaring spam”
<Joe> wonder how the f*** he got that rank
<Mike`> Viagra pharmacy which key above frank. So charge. Purchase cloud so heel. For heap in bandage. Here you search gesture that was fence often packet without bake or again spoon or loss, lash was title sometime brush.
<Mike`> lol
<Mike`> nice post :P
<Mike`> sounds like a translation went bad.
<Joe> yeah how the hell did a dude create a blogspot and get like third in the serps
<Joe> mofo is probably BANKIN
<Smaxor> maybe you should do some reasearch on it
<Smaxor> the answer is there
<Joe> only thing i see is keyword stuffing
<Smaxor> do you know anything about seo
<Joe> and general SEO - h1 tags, meta tags
<Smaxor> if not you need to spend some time understanding seo
<Joe> i know SEO
<Smaxor> then how do you rank for sh**?
<Joe> h1 tags, meta tags, keyword stuffing
<Joe> getting inbund links
<Smaxor> ok
<Joe> relevant inbound links
<Smaxor> well then it sounds liek that might be a good thing to look at right?
<Joe> getting links
<Smaxor> what links they might be getting?
<Joe> relevant ones
<Joe> that dude with the third serp
<Joe> on buy viagra
<Joe> he spams his site on government sites
<Joe> .gov sites
<Joe> looks like .gov site links are really important
<Joe> http://www.google.com/search?q=link:+meikoante.blogspot.com&hl=en&client=firefox-a&rls=org.mozilla:en-US:official&start=10&sa=N
<Smaxor> as I said, if you do what I say, looking in the serps, then you’ll learn if you’re looking for the answers anywhere but in the serps you’re wasting your time
<Joe> yes i think i have a very small idea what you mean, but when i look at the serps i dont know what im looking for.
<Joe> i just see results. results for my query
<Carl> what results ’shouldnt’ be there…in your eyes
<Carl> those are usually the ones you want to replicate
<Joe> ah
<Smaxor> well what’s our goal? to get to those positions right? so how about copy what they’re doing and you will probably end up at your goal
<Smaxor> it’s a fairly simple concept really
<Joe> Smaxor
<Joe> do you think landing pages are important
<Joe> or, do you think it’s cool to grab a domain and have it redirect to the merchant LP
<Joe> and then link spam the f*** out of the domain you bought
<Smaxor> I think it makes sense to copy what you see working if you wnat the same result
<Joe> k i gonna buy domain spam the domain and have it do a redirect
<Smaxor> is that what you see happening there?
<Joe> uh, im not sure
<Joe> how do domain redirects appear in serps
<Joe> does it just show the content of the redirected page
<Smaxor> well there’s a lot of ways and all the answers are in the same location
<Smaxor> become a detective
<Smaxor> and stop asking so many god damn questinos
<Jerry> haha that dude got #3 for buy viagra by parasite hosting on technorati
<Jerry> gg
<Smaxor> ;
<Smaxor> )
<Smaxor> like I said there’s a lot to learn just in that one query
<Joe> f***
<Joe> im still trying to figure out how that mother f***er got to google first page for buy viagra on a mother f***ing ps3forums
<Joe> http://209.85.165.104/search?q=cache:epJ4wsrrH5kJ:www.ps3forums.com/member.php%3Fu%3D62801+buy+viagra&hl=en&ct=clnk&cd=8&gl=us&client=firefox-a
<Joe> tis google cache
<Joe> look at that, his join date. one week ago, and he’s on the first page of google for the most saturated niche ever
<Joe> UN f***ING BELIEVABLE
<Smaxor> amazing what you find in the serps ain’t it
<Joe> yes.
<Joe> now i want to know how he did it
<Smaxor> no forums talk about that sh** do they
<Joe> not ps3 forums
<Joe> but still he got to first page!
<Jerry> he means no seo forums talk about how he did that
<Smaxor> I mean you wouldn’t find that sh** out unles you look at the serps
<Smaxor> no one is going to give you the answer on a seo forum how to do that kind of stuff
<Smaxor> you have to research it and test
<Joe> yeah i know i wouldn’t find it out unless i looked in the serps
<Joe> but the serps dont tell me how the f*** he did it :-\
<Smaxor> of course they do
<Smaxor> OF COURSE THEY DO
<Joe> i been thinking, and i seriously have no f***in clue, how the hell a dude can register on a ps3 forum, put a banner up in his sig, and get on the fron
<Joe> t page in one week
<Jerry> so figure it out =)
<Joe> there gotta be somethin im missin
<Jerry> the answer isn’t in this channel, that’s for sure
<Joe> indeed.
<Joe> but working alone is for idiots, thats why im in here. to talk to and learn from people who have more experience than me
<Jerry> theres a fine line between bouncing ideas off someone else and begging for help
<Jerry> if you haven’t tried to do it yet you have no idea if it works or not
<Jerry> just go try sh** dude
<Jerry> how many sites have you made to test any of this stuff today?
<Jerry> my guess is 0
<Smaxor> right however you have to have something to contribute to the conversation before you can even have a conversation
<Smaxor> otherwise you’re just leeching
<Joe> (15:05:45) ~ (@Jerry) how many sites have you made to test any of this stuff today?
<Joe> (15:05:49) ~ (@Jerry) my guess is 0
<Joe> i been building a blog.
<Smaxor> how do you consider doing one thing a test
<Smaxor> build 50 blogs, do them all differently and see what works the best
<Joe> because im sending traffic to it.
<Smaxor> all taken from ideas you see in the serps
<Joe> cant build 50 blogs in one day
<Joe> not real ones anyway
<Joe> maybe autoblogs
<Jerry> you can build more than you currently are if you aren’t chatting in here =)
<Smaxor> yuo can pretty easily build 10 blogs a day using stock templates
<Smaxor> and in 5 days you have 50
<Smaxor> now that’s all 100% manual
<Joe> yes.
<Joe> but a blog is nothing
<Joe> without posts
<Smaxor> right
<Joe> takes me a while to pump out a good, well thought out, decent post
<Smaxor> then post to them every 2 weeks
<Smaxor> so that’s 25 posts a week
<Smaxor> or about 3 posts a day
<Smaxor> if you can do more do more
<Joe> yes but the blog im building right now, is all built around one offer im promoting
<Joe> i donno how blogs do as LP’s
<Joe> so im gonna test it versus the merchant page.
<Smaxor> where did you see that idea working and copy it from?
<Joe> nowhere because im like one of 5 people who are promoting it
<Joe> not that many people are promoting it
<Smaxor> where did you see that strategy working specifically that you copied it from, not where did you see the offer
<Joe> nowhere, because not that many people are promoting it
<Joe> so im testing to see if it will work or not
<Smaxor> nevermind
<Smaxor> you don’t get it
<Smaxor> I’m done with you
<Joe> Smaxor i do get it, and im telling you there’s no one to f***in copy from because no one is f***in promoting it
<Joe> i’ve seen this strategy work in OTHER niches
<Joe> but not in this particular one. so im gonna see how it does because i’ve seen it work in other areas
<Smaxor> I didn’t say anything about the niche EVER
<Smaxor> as I never do
<Smaxor> because most of the time it’s not the “Niche” that makes money it’s the system that promotes it
<Joe> in this case, a blog
<Smaxor> once you have the right “System” you can stuff in any niche
<Joe> agreed.
<Joe> right now, the gist of what im doing, is testing: PPC - > Blog - > Merchant VS. PPC - > Redirect-2-Merchant
<Smaxor> so we return to where we started what blog that someone is advertising did you copy your system from?
<Joe> uh, when you told me to look at the serps for buy viagra
<Joe> the third result was a blog.
<Smaxor> I never look at the hard niches and see someone paying for PPC to a blog
<Smaxor> just doesn’t happen
<Smaxor> so sounds like a piss poor system to me
<Joe> but it’s not a hard niche
<Smaxor> the serps is blackhat
<Smaxor> you’re talking about PPC
<Smaxor> they’re 100% different
<Joe> well i wanna do both
<Smaxor> focus
<Joe> any traffic i can take i will get
<Smaxor> back to where we started
<Joe> i mean any traffic i can get i will take
<Joe> i’ve BEEN doing ppc but i also want to try other things, hence BH
<Smaxor> then you’ll fail at them all
<Smaxor> until you become a pro at one don’t do anything else
<Smaxor> or you’ll spin your wheels
<Joe> okay.
Let me know what you think.

Success,
Smaxor