1) { //mysql_query("delete"); //mysql_query("insert"); logToFile("log", "Multiple entries found."); } $response_xml = xmlrpc_encode(array( 'success' => True, 'errorMessage' => "", 'data' => $data )); print $response_xml; } else { logToFile("log", "Registering Region: Request denied! Invalid key."); print "Access Denied."; } } //Handles registration of each parcel. xmlrpc_server_register_method($xmlrpc_server, "RegisterNewParcel", NewParcel); function NewParcel($method_name, $params, $app_data) { global $REGISTRATION_SERVER_KEY; $req = $params[0]; logToFile("log", "Registering New Parcel:" . $req['uuid'] . " on server " . $req['sim'] . " size: " . $req['size'] . " prims: " . $req['prims'] ); if($req['key'] == $REGISTRATION_SERVER_KEY) { $exists = mysql_result(mysql_query("select count(land.uuid) as land_count from land where land.uuid = '". $req['uuid'] ."';"), 0, "land_count"); if($exists == 0) { mysql_query("insert into land(uuid, localID, region, name, size, prims, owner, claimed) values('" . $req['uuid'] . "', ". $req['localID'] .", '" . $req['sim'] ."', \"" . $req['name'] . "\", ". $req['size'] .", ". $req['prims'] .", '". $req['owner'] ."', ". $req['claimed'] .");"); logToFile("log", "Parcel registration success. - Record inserted."); } if($exists == 1) { mysql_query("update land set uuid = '". $req['uuid'] ."', localID = ". $req['localID'] .", region = '". $req['sim'] ."', name = \"". $req['name'] ."\", size = ". $req['size'] .", prims = ". $req['size'] .", owner = '". $req['owner'] ."', claimed = ". $req['claimed'] ." where uuid = '". $req['uuid'] ."';"); logToFile("log", "Parcel registration success. - Record updated."); } if($exists > 1) { //mysql_query("delete"); //mysql_query("insert"); logToFile("log", "Parcel reg: Multiple entries found."); } $response_xml = xmlrpc_encode(array( 'success' => True, 'errorMessage' => "", 'data' => $data )); print $response_xml; } else { logToFile("log", "Registering Parcel: Request denied! Invalid key."); print "Access Denied."; } } //Handles removal of parcels xmlrpc_server_register_method($xmlrpc_server, "DeleteParcel", DeleteParcel); function DeleteParcel($method_name, $params, $app_data) { global $REGISTRATION_SERVER_KEY; $req = $params[0]; logToFile("log", "Deleting parcel:" . $req['uuid']); if($req['key'] == $REGISTRATION_SERVER_KEY) { mysql_query("delete from land where uuid = '" . $req['uuid'] . "';"); $response_xml = xmlrpc_encode(array( 'success' => True, 'errorMessage' => "", 'data' => $data )); print $response_xml; } else { logToFile("log", "Delete Parcel: Request denied! Invalid key."); print "Access Denied."; } } $request_xml = $HTTP_RAW_POST_DATA; xmlrpc_server_call_method($xmlrpc_server, $request_xml, ''); xmlrpc_server_destroy($xmlrpc_server); ?>