<?php
/**
 * THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (http://www.eclipse.org/legal/epl-v10.html). 
 * ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
 * 
 */
	header("Content-type: text/plain");

	require_once("/home/data/httpd/eclipse-php-classes/system/dbconnection_bugs_ro.class.php");

	$dbc = new DBConnectionBugs();
	$dbh = $dbc->connect();
	
	$sql = "SELECT max(userid) AS userid FROM profiles";
    $result = mysql_query($sql,$dbh);
    if($myrow = mysql_fetch_assoc($result)) {
    	echo $myrow['userid'] . "\n";
    }
    $dbc->disconnect();
?>