svn commit: r234 - trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php

uli at osgeo.org uli at osgeo.org
Thu May 11 04:13:40 EDT 2006


Author: uli
Date: 2006-05-11 08:13:40+0000
New Revision: 234

Modified:
   trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php   (contents, props changed)

Log:
db_prep_query included
verification of user permissions

Modified: trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php
Url: https://mapbender.osgeo.org/source/browse/mapbender/trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php?view=diff&rev=234&p1=trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php&p2=trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php&r1=233&r2=234
==============================================================================
--- trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php	(original)
+++ trunk/mapbender/http/php/mod_filteredGroup_filteredGui.php	2006-05-11 08:13:40+0000
@@ -1,6 +1,7 @@
 <?php
-# $Id: mod_filteredGroup_filteredGui.php,v 1.15 2006/03/09 10:42:29 uli_rothstein Exp $
-# $Header: /cvsroot/mapbender/mapbender/http/php/mod_filteredGroup_filteredGui.php,v 1.15 2006/03/09 10:42:29 uli_rothstein Exp $
+# $Id$
+# http://www.mapbender.org/index.php/Administration
+#
 # Copyright (C) 2002 CCGIS 
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,13 +18,12 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-session_start();
 import_request_variables("PG");
-require_once("../php/mb_validateSession.php");
 require_once("../../conf/mapbender.conf");
-$con = db_connect($DBSERVER,$OWNER,$PW);
+$con = db_connect(DBSERVER,OWNER,PW);
 db_select_db(DB,$con);
-$gui_id = $_SESSION["mb_user_gui"];
+require_once("../php/mb_validatePermission.php");
+$self = $PHP_SELF . "?".SID."&guiID=".$_REQUEST["guiID"]."&elementID=".$_REQUEST["elementID"];
 ?>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
@@ -37,8 +37,8 @@
 <script language="JavaScript">
 function validate(wert){
 	if(document.forms[0]["selected_group"].selectedIndex == -1){
-			document.getElementsByName("selected_group")[0].style.backgroundColor = '#ff0000';
-			return;
+		document.getElementsByName("selected_group")[0].style.backgroundColor = '#ff0000';
+		return;
 	}else{
 		if(wert == "remove"){
 			if(document.forms[0]["remove_gui[]"].selectedIndex == -1){
@@ -63,10 +63,6 @@
 </head>
 <body>
 <?php
-require_once("../../conf/mapbender.conf");
-$con = db_connect($DBSERVER,$OWNER,$PW);
-db_select_db(DB,$con);
-
 require_once("../php/mb_getGUIs.php");
 
 $fieldHeight = 20;
@@ -83,17 +79,21 @@
 $logged_user_id=$_SESSION["mb_user_id"];
 
 
-/*handle remove, update and insert**************************************************************************************/
+/*handle remove, update and insert*****************************************************************/
 if($insert){
 	if(count($selected_gui)>0){
 		for($i=0; $i<count($selected_gui); $i++){
 			$exists = false;
-			$sql_insert = "SELECT * from gui_mb_group where fkey_mb_group_id = '".$selected_group."' and fkey_gui_id = '".$selected_gui[$i]."'";
-			$res_insert = db_query($sql_insert);
+			$sql_insert = "SELECT * from gui_mb_group where fkey_mb_group_id = $1 and fkey_gui_id = $2 ";
+			$v = array($selected_group,$selected_gui[$i]);
+			$t = array('i','s');
+			$res_insert = db_prep_query($sql_insert,$v,$t);
 			while(db_fetch_row($res_insert)){$exists = true;}
 			if($exists == false){
-				$sql_insert = "INSERT INTO gui_mb_group(fkey_mb_group_id, fkey_gui_id) VALUES('$selected_group', '".$selected_gui[$i]."');";
-				$res_insert = db_query($sql_insert);
+				$sql_insert = "INSERT INTO gui_mb_group(fkey_mb_group_id, fkey_gui_id) VALUES($1, $2)";
+				$v = array($selected_group,$selected_gui[$i]);
+				$t = array('i','s');
+				$res_insert = db_prep_query($sql_insert,$v,$t);
 			}
 		}
 	}
@@ -101,40 +101,41 @@
 if($remove){
 	if(count($remove_gui)>0){
 		for($i=0; $i<count($remove_gui); $i++){
-			$sql_remove = "DELETE FROM gui_mb_group WHERE fkey_gui_id = '".$remove_gui[$i]."' and fkey_mb_group_id = '$selected_group'";
-			db_query($sql_remove);
+			$sql_remove = "DELETE FROM gui_mb_group WHERE fkey_gui_id = $1 and fkey_mb_group_id = $2";
+			$v = array($remove_gui[$i],$selected_group);
+			$t = array('s','i');
+			db_prep_query($sql_remove,$v,$t);
 		}
 	}
 }
 
-/*get allocated gui  ********************************************************************************************/
-#$sql_gui = "SELECT * FROM gui ORDER BY gui_name";
-
-#$sql_gui = "SELECT gui.gui_id, gui.gui_name, gui_mb_user.fkey_mb_user_id ";
-#$sql_gui .= "FROM gui INNER JOIN gui_mb_user ON gui.gui_id = gui_mb_user.fkey_gui_id ";
-#$sql_gui .= "WHERE gui_mb_user.fkey_mb_user_id='".$logged_user_id."'";
+/*get allocated gui  ******************************************************************************/
 
 $arrayGuis=mb_getGUIs($logged_user_id);
-
+$v = array();
+$t = array();
 $sql_gui = "SELECT * FROM gui WHERE gui_id IN (";
-
 for($i=0; $i<count($arrayGuis); $i++){
 	if($i>0){ $sql_gui .= ",";}
-	$sql_gui .= "'".$arrayGuis[$i]."'";
+	$sql_gui .= "$".($i+1);
+	array_push($v,$arrayGuis[$i]);
+	array_push($t,'s');
 }
 $sql_gui.= ") ORDER BY gui_name";
 
-$res_gui = db_query($sql_gui);
+$res_gui = db_prep_query($sql_gui,$v,$t);
 while($row = db_fetch_array($res_gui)){
 	$gui_id_array[$cnt_gui] = $row["gui_id"];
 	$gui_name[$cnt_gui] = $row["gui_name"];
 	$cnt_gui++;
 }
 
-/*get owner group **********************************************************************************************/
-#$sql_group = "SELECT * FROM mb_group ORDER BY mb_group_name";
-$sql_group = "SELECT * FROM mb_group WHERE mb_group_owner='".$logged_user_id."' ORDER BY mb_group_name";
-$res_group = db_query($sql_group);
+/*get owner group *********************************************************************************/
+
+$sql_group = "SELECT * FROM mb_group WHERE mb_group_owner = $1 ORDER BY mb_group_name";
+$v = array($logged_user_id);
+$t = array('i');
+$res_group = db_prep_query($sql_group,$v,$t);
 while($row = db_fetch_array($res_group)){
 	$group_id[$cnt_group] = $row["mb_group_id"];
 	$group_name[$cnt_group] = $row["mb_group_name"];
@@ -143,26 +144,37 @@
 
 /*get allocated gui from selected_group******************************************************************************/
 $arrayGuis=mb_getGUIs($logged_user_id);
-
+$v = array();
+$t = array();
 $sql_group_mb_gui = "SELECT gui.gui_id, gui.gui_name, gui_mb_group.fkey_mb_group_id FROM gui_mb_group ";
 $sql_group_mb_gui .= " JOIN gui ON gui_mb_group.fkey_gui_id = gui.gui_id ";
-$sql_group_mb_gui .= "WHERE gui_mb_group.fkey_mb_group_id=";
+$sql_group_mb_gui .= "WHERE gui_mb_group.fkey_mb_group_id = $1 ";
 if(!$selected_group){
-	if($group_id[0] > 0)
-		$sql_group_mb_gui .= "'".$group_id[0]."'";
-	else
-		$sql_group_mb_gui .= "NULL";
+	if($group_id[0] > 0){
+		array_push($v,$group_id[0]);
+		array_push($t,'i');
+	}
+	else{
+		array_push($v, "NULL");
+		array_push($t,'i');
+	}
+}
+else if($selected_group){
+	array_push($v,$selected_group);
+	array_push($t,'i');
 }
-if($selected_group){$sql_group_mb_gui .= $selected_group;}
-
 $sql_group_mb_gui .= " AND gui.gui_id IN (";
+$c = 2;
 for($i=0; $i<count($arrayGuis); $i++){
 	if($i>0){ $sql_group_mb_gui .= ",";}
-		$sql_group_mb_gui .= "'".$arrayGuis[$i]."'";
+	$sql_group_mb_gui .= "$".$c;
+	array_push($v,$arrayGuis[$i]);
+	array_push($t,'s');
+	$c++;
 }
 $sql_group_mb_gui .= ") ORDER BY gui.gui_name";
 
-$res_group_mb_gui = db_query($sql_group_mb_gui);
+$res_group_mb_gui = db_prep_query($sql_group_mb_gui,$v,$t);
 while($row = db_fetch_array($res_group_mb_gui)){
 	$gui_id_group[$cnt_gui_group] = $row["gui_id"];
 	$gui_name_group[$cnt_gui_group] =  $row["gui_name"];
@@ -170,9 +182,9 @@
 }
 
 /*INSERT HTML*/
-echo "<form name='form1' action='" . $PHP_SELF . "?".SID."&e_id_css=".$_REQUEST["e_id_css"]."' method='post'>";
+echo "<form name='form1' action='" . $self ."' method='post'>";
 
-/*insert all group in selectbox*************************************************************************************/
+/*insert all group in selectbox********************************************************************/
 echo "<div class='text1'>GROUP: </div>";
 echo "<select style='background:#ffffff' class='select1' name='selected_group' onChange='submit()' size='10'>";
 for($i=0; $i<$cnt_group; $i++){
@@ -184,7 +196,7 @@
 }
 echo "</select>";
 
-/*insert all gui in selectbox**************************************************************************/
+/*insert all gui in selectbox**********************************************************************/
 echo "<div class='text2'>GUI:</div>";
 echo "<select style='background:#ffffff' class='select2' multiple='multiple' name='selected_gui[]' size='$fieldHeight' >";
 for($i=0; $i<$cnt_gui; $i++){
@@ -192,7 +204,7 @@
 }
 echo "</select>";
 
-/*Button****************************************************************************************************/
+/*Button*******************************************************************************************/
 
 echo "<div class='button1'><input type='button'  value='==>' onClick='validate(\"insert\")'></div>";
 echo "<input type='hidden' name='insert'>";
@@ -200,7 +212,7 @@
 echo "<div class='button2'><input type='button' value='<==' onClick='validate(\"remove\")'></div>";
 echo "<input type='hidden' name='remove'>";
 
-/*insert group_gui_dependence in selectbox**************************************************/
+/*insert group_gui_dependence in selectbox*********************************************************/
 echo "<div class='text3'>SELECTED GUI:</div>";
 echo "<select style='background:#ffffff' class='select3' multiple='multiple' name='remove_gui[]' size='$fieldHeight' >";
 for($i=0; $i<$cnt_gui_group; $i++){




More information about the Mapbender_commits mailing list