yea i allready have all error reporting on...
and i tried to change my query to your suggestion but nope
that didnt help either...
ill show u the rest of my code if u want
Code: Select all
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
set_time_limit (0);
require_once "bluetoc/EventHandlers/ObjectBased.php";
require_once "bluetoc/TocProtocol.php";
require_once "bluetoc/AimClient.php";
require_once "bluetoc/MultiplexListener.php";
//database connection
$host = "localhost";
$user = "******";
$pswd = "*****";
$dbname = "*****";
$connect = mysql_connect($host, $user, $pswd)
or die("Could not connect: " . mysql_error());
$database = mysql_select_db("$dbname")
or die(MySQL_Error());
class offlineBuddyInfoBot extends AimClient
{
var $user;
function offlineBuddyInfoBot( $user, $pass )
{
$this->debug_mode = FALSE;
$this->aim_user = $user;
$this->aim_pass = $pass;
$this->user = $user;
$this->connect();
}
// Handle once we've signed on
function event_sign_on( $args )
{
echo "{$this->user}: Yay! I've signed in!\n";
$this->set_info( "<font face=Georgia>I am powered by BlueTOC (AIM connection class for PHP)</font>" );
}
// Handle when we get an instant message
function event_im( $args )
{
echo "{$this->user}: {$args['user']} IMed me!\n";
// Remember that AIM IMs usually have HTML
// so we must strip it so that we can
// easily parse it
$message = strip_tags( $args['message'] );
// Let's check if they're telling us to
// have another time bot sign on
// The following responds to anyone! If you were to
// restrict to only some screen names, you would do
// a check on $args['user']
if( preg_match( "`^signon ([A-Za-z0-9]+) (.*)$`", $message, $m ) )
{
global $listener;
echo "Signing on {$m[1]}\n";
$this->send_im( $args['user'], "<font face=Georgia>Trying to sign on <b>{$m[1]}</b></font>", FALSE );
$listener->add_client( new offlineBuddyInfoBot( $m[1], $m[2] ) );
return;
}
//exit prog command
if($message == "please shutdown"){exit;}
$checkmsg = array();
$checkmsg = explode(" ", $message);
$checkmsg[0] = strtolower($checkmsg[0]);
if($checkmsg[0] == "add")
{
//add user
$addmsgtosend = "<font face='Verdana' size=1 color='#006699'>Adding " . $checkmsg[1] . " to our database.</font>";
$this->send_im($args['user'], $addmsgtosend);
echo "before query";
$check_query = mysql_query("SELECT * FROM buddies WHERE name='{$checkmsg[1]}'") or die(mysql_error());
echo "after query";
$check_query_array = mysql_fetch_array($check_query) or die(mysql_error());/////heres where the error is!
echo "after array";
if($check_query_array['name'] == $checkmsg[1])
{
$msgtosend = "<font face='Verdana' size=1 color='#006699'>It appears that " . $checkmsg[1] . " is allready in our database.</font>";
$this->send_im($args['user'], $msgtosend);
}
else
{
$sql_insert = mysql_query("INSERT INTO buddies SET name='" . $checkmsg[1] . "'") or die(MySQL_Error());
if($sql_insert)
{
$this->send_im($args['user'], "<font face='Verdana' size=1 color='#006699'>" . $checkmsg[1] . " was successfully added to our database, you will be able to check " . $checkmsg[1] . "'s buddyinfo within fifteen minutes.</font>");
}
else
{
$dberrormsgtosend = "<font face='Verdana' size=1 color='#006699'>There is currently a problem with our database, please try again soon.</font>";
$this->send_im($args['user'], $dberrormsgtosend);
}
}
$msgtosend = "<font face='Verdana' size=1 color='#006699'>Thankyou for using OfflineBuddyInfo. Created and Copywritten by Ryan A Cheeseman. Contact - Dull1554@gmail.com</font>";
$this->send_im($args['user'], $msgtosend);
}
elseif($checkmsg[0] == "check")
{
#check user
$checkmsgtosend = "<font face='Verdana' size=1 color='#006699'>Checking " . $checkmsg[1] . ".</font>";//At this moment our interactive buddy info bot is offline. Check back soon to see if were fully functional!
$this->send_im($args['user'], $checkmsgtosend);
$this->get_info($checkmsg[1]);
}
else
{
#else In a properly formated message there should be no Puncuation.</font>";
$elsemsgtosend = "<font face='Verdana' size=1 color='#006699'>Thankyou for using OfflineBuddyInfo. Created and Copywritten by Ryan A Cheeseman. Contact - Dull1554@gmail.com</font>";
$this->send_im($args['user'], $elsemsgtosend);
$elsemsgtosend1 = "<font face='Verdana' size=1 color='#006699'>To add a Buddy to our database format your message like this, Add InsertBuddyNameHere.</font>";
$this->send_im($args['user'], $elsemsgtosend1);
$elsemsgtosend2 = "<font face='Verdana' size=1 color='#006699'>To Check a Buddy's Info while they are offline format your message like this, Check InsertBuddyNameHere.</font>";
$this->send_im($args['user'], $elsemsgtosend2);
}
}
function event_error( $args )
{
// These are a list of errors in English
// Most, if not all, errors will return an error number
// and not the error description
$connection_errors = array(
100 => 'Data unable to be sent',
200 => 'Flapon',
201 => 'Data not received from server after FLAPON packet',
202 => 'Invalid FLAP SIGNON response from the server',
203 => 'Invalid response from the server' );
$aim_errors = array (
0 => 'Success',
1 => 'AOLIM Error: Unknown Error',
2 => 'AOLIM Error: Incorrect Arguments',
3 => 'AOLIM Error: Exceeded Max Packet Length (1024)',
4 => 'AOLIM Error: Reading from server',
5 => 'AOLIM Error: Sending to server',
6 => 'AOLIM Error: Login timeout',
901 => 'General Error: %s not currently available',
902 => 'General Error: Warning of %s not currently available',
903 => 'General Error: A message has been dropped, you are exceeding the server speed limit',
950 => 'Chat Error: Chat in %s is unavailable',
960 => 'IM and Info Error: You are sending messages too fast to %s',
961 => 'IM and Info Error: You missed an IM from %s because it was too big',
962 => 'IM and Info Error: You missed an IM from %s because it was sent too fast',
970 => 'Dir Error: Failure',
971 => 'Dir Error: Too many matches',
972 => 'Dir Error: Need more qualifiers',
973 => 'Dir Error: Dir service temporarily unavailble',
974 => 'Dir Error: Email lookup restricted',
975 => 'Dir Error: Keyword ignored',
976 => 'Dir Error: No keywords',
977 => 'Dir Error: Language not supported',
978 => 'Dir Error: Country not supported',
979 => 'Dir Error: Failure unknown %s',
980 => 'Auth Error: Incorrect nickname or password',
981 => 'Auth Error: The service is temporarily unavailable',
982 => 'Auth Error: Your warning level is too high to sign on',
983 => 'Auth Error: You have been connecting and disconnecting too frequently. Wait 10 minutes and try again. If you continue to try, you will need to wait even longer.',
989 => 'Auth Error: An unknown signon error has occurred %s' );
// Let's see what kind of error we are faced with
switch( $args['type'] )
{
// Connection error
case ERROR_CONNECTION:
echo "* Connection error: {$connection_errors[$args['number']]} ({$args['number']})\n";
break;
// AIM is giving us an error
case ERROR_AIM:
echo "* AIM error: {$aim_errors[$args['number']]} ({$args['number']})\n";
break;
}
}
}
$listener = new MultiplexListener;
$listener->add_client( new offlineBuddyInfoBot( 'offlinebuddyinfo', '******' ) );
$listener->run();
?>