or " so these are removed. This function was contributed by si */ $removal = array("<", ">", "\""); $additional = array("(", ")", ""); $clean = str_replace($removal, $additional, $stringer); return $clean; } /** * This function updates the status of a given twitter account. * $status is a string containing the new status. */ function update_status($status) { $username = "account2"; /* put your twitter username here */ $password = "password"; /* put your twitter password here */ $status = htmlentities(remove_gubins($status)); $curl_handle = curl_init('http://twitter.com/statuses/update.xml'); curl_setopt($curl_handle, CURLOPT_POST, 1); curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$status"); curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password"); $buffer = curl_exec($curl_handle); curl_close($curl_handle); } $user = "user@gmail.com"; /* your gmail username in the form user@gmail.com */ $pass = "gmail_password"; /* your gmail password */ $connection = imap_open("{imap.gmail.com:993/imap/ssl}INBOX", $user, $pass); $headers = imap_headers($connection); for($i = 1; $i < sizeof($headers)+1; $i++) { $mailHeader = imap_headerinfo($connection, $i); $from = $mailHeader->fromaddress; $subject = strip_tags($mailHeader->subject); $id = trim($mailHeader->message_id); list($from, $discard) = explode(' <', $from); /* remove the email address */ $from = remove_gubins($from); /* remove any < > " */ /* mysql database details: */ $dbhost = 'localhost'; $dbuser = 'db_username'; $dbpass = 'db_password'; $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql'); $dbname = 'Email'; /* the database name */ mysql_select_db($dbname); $query = "SELECT COUNT(*) AS blah FROM TwitterEmail WHERE email='$user' AND id='$id'"; $result = mysql_fetch_array(mysql_query($query)); if ($result['blah'] == 0) { /* if this email has not already been checked */ /* when first running this program, it's a good idea to comment out the above line so that all your current inbox is inserted into the database. */ $query = 'INSERT INTO TwitterEmail VALUES (\'' . $user . '\', \'' . $id . '\');'; mysql_query($query); $query = 'SELECT last_subject FROM TwitterSubject WHERE email =\'' . $user . '\';'; $result = mysql_fetch_array(mysql_query($query)); echo "Subject: $subject\n RESULT: " . $result['last_subject'] ."\n"; if ($subject == $result['last_subject']) { echo("Subject Matched\n"); $subject .= ' - '; } $subj = mysql_real_escape_string($subject); $query = "INSERT INTO TwitterSubject (email, last_subject) VALUES ('$user', '$subj')"; $query .="ON DUPLICATE KEY UPDATE last_subject='$subj';"; mysql_query($query); $status = 'FROM: ' . $from . ' SUBJECT: ' . $subject; echo $status . "\n"; update_status($status) or die ('Unable to update status'); } mysql_close($conn); } ?>