<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Coyote Lab &#187; PHP</title>
	<atom:link href="http://coyotelab.org/blog/category/php/feed" rel="self" type="application/rss+xml" />
	<link>http://coyotelab.org/blog</link>
	<description></description>
	<lastBuildDate>Thu, 19 Aug 2010 06:21:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to use twitter API to display tweets and retweets</title>
		<link>http://coyotelab.org/blog/php/how-to-use-twitter-api-to-display-tweets-and-retweets</link>
		<comments>http://coyotelab.org/blog/php/how-to-use-twitter-api-to-display-tweets-and-retweets#comments</comments>
		<pubDate>Thu, 19 Aug 2010 05:56:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://coyotelab.org/blog/?p=220</guid>
		<description><![CDATA[A common problem occurs when you retweet; it does not post to your website or blog. The tweet that you retweeted appears in your profile on twitter.com but it does not get picked up in the twitter widget you have on your blog or website. This is not a bug in your widget. Twitter counts [...]]]></description>
			<content:encoded><![CDATA[<p>A common problem occurs when you retweet; it does not post to your website or blog.<span id="more-220"></span> The tweet that you retweeted appears in your profile on twitter.com but it does not get picked up in the twitter widget you have on your blog or website. This is not a bug in your widget. Twitter counts retweets as not your own tweets so this is counted in tweet counts but it will not show up in your timeline.</p>
<p>files in use: twitter-api.php, style.css, feed.php</p>
<h3>Step 1: twitter-api.php</h3>
<pre>
<code>&lt;?php

$login = "TwitterAccountUsername:TwitterAccountPassword"; //username:password

$tweets = "http://twitter.com/statuses/user_timeline.xml?count=1"; //path to tweets xml files ? number of feed to display

$tw = curl_init();
curl_setopt($tw, CURLOPT_URL, $tweets);
curl_setopt($tw, CURLOPT_USERPWD, $login);
curl_setopt($tw, CURLOPT_RETURNTRANSFER, TRUE);

$twi = curl_exec($tw);
$tweeters = new SimpleXMLElement($twi);
$latesttweets = count($tweeters);

if ($latesttweets&lt;=0) { // if our last is equal or smaller than zero it is a re-tweet then let's display the re-tweet
	$tweets = "http://api.twitter.com/1/statuses/retweeted_by_me.xml?count=1"; // path to re-tweets xmlfile ? number of feed to display

	$tw = curl_init();
	curl_setopt($tw, CURLOPT_URL, $tweets);
	curl_setopt($tw, CURLOPT_USERPWD, $login);
	curl_setopt($tw, CURLOPT_RETURNTRANSFER, TRUE);

	$twi = curl_exec($tw);
	$tweeters = new SimpleXMLElement($twi);
	$latesttweets = count($tweeters);

	//echo retweet data

	foreach ($tweeters-&gt;status as $twit1) {

	//This finds any links in $description
	$data1 = date("F j, Y G:i",strtotime($twit1-&gt;created_at));
	$description = $twit1-&gt;text;
	$description = preg_replace("#(^|[\n ])@([^ "\t\n\r&lt;]*)#ise", "'\\1<a href="http://www.twitter.com/\\2" >@\\2</a>'", $description);
	$description = preg_replace("#(^|[\n ])([\w]+?://[\w]+[^ "\n\r\t&lt;]*)#ise", "'\\1<a href="\\2" >\\2</a>'", $description);
	$description = preg_replace("#(^|[\n ])((www|ftp)\.[^ "\t\n\r&lt;]*)#ise", "'\\1<a href="http://\\2" >\\2</a>'", $description);
	echo "&lt;div class='user'&gt;\n";
	echo "&lt;div class='location'&gt;", $twit1-&gt;user-&gt;url,"&lt;/div&gt;";
	echo "&lt;div class='date'&gt;".$data1."&lt;/div&gt;";
	echo "&lt;div class='text'&gt;".$description."&lt;/div&gt;";
	echo "&lt;/div&gt;";
	}

} else {

	//echo tweet data

	foreach ($tweeters-&gt;status as $twit1) {

	//This finds any links in $description
	$data1 = date("F j, Y G:i",strtotime($twit1-&gt;created_at));
	$description = $twit1-&gt;text;
	$description = preg_replace("#(^|[\n ])@([^ "\t\n\r&lt;]*)#ise", "'\\1<a href="http://www.twitter.com/\\2" >@\\2</a>'", $description);
	$description = preg_replace("#(^|[\n ])([\w]+?://[\w]+[^ "\n\r\t&lt;]*)#ise", "'\\1<a href="\\2" >\\2</a>'", $description);
	$description = preg_replace("#(^|[\n ])((www|ftp)\.[^ "\t\n\r&lt;]*)#ise", "'\\1<a href="http://\\2" >\\2</a>'", $description);
	echo "&lt;div class='user'&gt;\n";
	echo "&lt;div class='location'&gt;", $twit1-&gt;user-&gt;url,"&lt;/div&gt;";
	echo "&lt;div class='date'&gt;".$data1."&lt;/div&gt;";
	echo "&lt;div class='text'&gt;".$description."&lt;/div&gt;";
	echo "&lt;/div&gt;";
	}	

}

curl_close($tw);

?&gt;</code>
</pre>
<h3>Step 2: twitter-api.php</h3>
<pre>
<code>body  		{font-family:Helvetica,Arial,sans-serif; font-size:12px;}
a 		{color:#0054FF;}
a:hover 	{text-decoration:none;}
.date		{font-size:10px; color:#888; padding:0 0 8px 0;}
.text 		{color:#555;}</code>
</pre>
<h3>Step 3: feed.php</h3>
<pre>
<code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;

&lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"&gt;
&lt;head&gt;
	&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"/&gt;
	&lt;title&gt;Tweet API | Re-Tweet API &lt;/title&gt;
	&lt;link href="style.css" rel="stylesheet" type="text/css" /&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;div id="container"&gt;
		&lt;?php include ('twitter-api.php'); ?&gt;
	&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</code>
</pre>
<h3>Displaying tweets</h3>
<p>if your last post is a tweet (tweet count is equal or greater than zero), tweet will be displayed on your website or blog.</p>
<p><img src="http://coyotelab.org/blog/wp-content/uploads/2010/08/tweet.jpg" alt="tweet"/></p>
<h3>Displaying re-tweets</h3>
<p>if your last post is a re-tweet (tweet count is equal or smaller than zero), re-tweet will be displayed on your website or blog.</p>
<p><img src="http://coyotelab.org/blog/wp-content/uploads/2010/08/re-tweet.jpg" alt="re-tweet" /></p>
<p><a href="http://coyotelab.org/projects/tweet-retweet-api.zip">Click here to download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://coyotelab.org/blog/php/how-to-use-twitter-api-to-display-tweets-and-retweets/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Upload CSV and Insert into Database Using PHP/MYSQL</title>
		<link>http://coyotelab.org/blog/php/upload-csv-and-insert-into-database-using-phpmysql</link>
		<comments>http://coyotelab.org/blog/php/upload-csv-and-insert-into-database-using-phpmysql#comments</comments>
		<pubDate>Wed, 18 Nov 2009 19:39:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://coyotelab.org/blog/?p=109</guid>
		<description><![CDATA[This script can be use to update data in database from local CSV file on user(admin) computer
Step 1 &#8211; Data Base Connection
At first we need to connect to database&#8230;
File Name: connection.php

&#60;?php
$db = mysql_connect("Database", "username", "password") or die("Could not connect.");

if(!$db) 

	die("no db");

if(!mysql_select_db("Databasename",$db))

 	die("No database selected.");
?&#62;

Step 2 &#8211; upload page
Making connection to data base by calling the [...]]]></description>
			<content:encoded><![CDATA[<p>This script can be use to update data in database from local CSV file on user(admin) computer<span id="more-109"></span></p>
<h3>Step 1 &#8211; Data Base Connection</h3>
<p>At first we need to connect to database&#8230;<br />
<strong>File Name:</strong> connection.php</p>
<pre>
<code>&lt;?php
$db = mysql_connect("Database", "username", "password") or die("Could not connect.");

if(!$db) 

	die("no db");

if(!mysql_select_db("Databasename",$db))

 	die("No database selected.");
?&gt;</code>
</pre>
<h3>Step 2 &#8211; upload page</h3>
<p>Making connection to data base by calling the connection.php, clean the table of its old data, insert new uploaded data into table&#8230;<br />
<strong>File Name:</strong> upload.php</p>
<pre>
<code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /&gt;
&lt;title&gt;Upload page&lt;/title&gt;
&lt;style type="text/css"&gt;
body {
	background: #E3F4FC;
	font: normal 14px/30px Helvetica, Arial, sans-serif;
	color: #2b2b2b;
}
a {
	color:#898989;
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
}
a:hover {
	color:#CC0033;
}

h1 {
	font: bold 14px Helvetica, Arial, sans-serif;
	color: #CC0033;
}
h2 {
	font: bold 14px Helvetica, Arial, sans-serif;
	color: #898989;
}
#container {
	background: #CCC;
	margin: 100px auto;
	width: 945px;
}
#form 			{padding: 20px 150px;}
#form input     {margin-bottom: 20px;}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id="container"&gt;
&lt;div id="form"&gt;

&lt;?php

include "connection.php"; //Connect to Database

$deleterecords = "TRUNCATE TABLE tablename"; //empty the table of its current records
mysql_query($deleterecords);

//Upload File
if (isset($_POST['submit'])) {
	if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
		echo "&lt;h1&gt;" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "&lt;/h1&gt;";
		echo "&lt;h2&gt;Displaying contents:&lt;/h2&gt;";
		readfile($_FILES['filename']['tmp_name']);
	}

	//Import uploaded file to Database
	$handle = fopen($_FILES['filename']['tmp_name'], "r");

	while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
		$import="INSERT into tablename(item1,item2,item3,item4,item5) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]')";

		mysql_query($import) or die(mysql_error());
	}

	fclose($handle);

	print "Import done";

	//view upload form
}else {

	print "Upload new csv by browsing to file and clicking on Upload&lt;br /&gt;\n";

	print "&lt;form enctype='multipart/form-data' action='upload.php' method='post'&gt;";

	print "File name to import:&lt;br /&gt;\n";

	print "&lt;input size='50' type='file' name='filename'&gt;&lt;br /&gt;\n";

	print "&lt;input type='submit' name='submit' value='Upload'&gt;&lt;/form&gt;";

}

?&gt;

&lt;/div&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</code>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://coyotelab.org/blog/php/upload-csv-and-insert-into-database-using-phpmysql/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
