Hey Tony, Few comments.
> + maintainer_rating text, > + maintainer_release text, Why text, why not a varchar of 100 characters. It doesn't matter that much but it just optimizes our code a bit. > - $versionName = addslashes($_REQUEST['versionName']); > - $description = addslashes($_REQUEST['description']); > - $webPage = addslashes($_REQUEST['webPage']); > + $versionName = addslashes($_REQUEST['versionName']); > + $keywords = $_REQUEST['keywords']; > + $description = addslashes($_REQUEST['description']); > + $webPage = addslashes($_REQUEST['webPage']); > + $maintainer_rating = $_REQUEST['maintainer_rating']; > + $maintainer_release = $_REQUEST['maintainer_release']; > //did anything change? > if ($VersionChanged) > { > $query = "UPDATE appVersion SET versionName = > '".$versionName."', ". > "keywords = '".$_REQUEST['keywords']."', ". > "description = '".$description."', ". > - "webPage = '".$webPage."'". > + "webPage = '".$webPage."',". > + "maintainer_rating = '".$maintainer_rating."',". > + "maintainer_release = '".$maintainer_release."'". > " WHERE appId = ".$_REQUEST['appId']." and versionId = > ".$_REQUEST['versionId']; > if (mysql_query($query)) > { This is far from sql injection safe. Anyone can enter anything into $_REQUEST['mantainer_release'] or $_REQUEST['mantainer_rating'] and change any field from the appVersion table. It isn't a real problem in this case because they can already change most fields as maintainer. But they can for example change the versionId to make an app-version belong to any application. To prevent this we should make our queries with the compile_*_string functions from include/db.php. That function is doing addslashes. And generates an as safe as possible query string. Usage can be seen in admin/editAppFamily.php. Also query_appdb should be used instead of mysql_query(). And appId and versionId should always be check with is_numeric(). Right now without giving out details it's possible to change any application as long as you are maintainer of one application. Will you fix it or shall I? Paul