...

View Full Version : How to get Array key name?



Arcticwarrio
07-26-2012, 02:08 PM
i'm building an insert query with the following:


if (isset($_GET['Perms'])){
$LineCount = count($_REQUEST['MenuID']);
$D1 = Q("DELETE FROM `user__permissions` WHERE `UserID` = '".$_GET['ID']."'");
$insert = "INSERT INTO `user__permissions` (`PMenuID`, `UserID`, `Permission`) VALUES ";
for ($i = 1; $i <= $LineCount; $i++) {
$insertline = "(".$_REQUEST['MenuID'].",".$_GET['ID'].", ".$_REQUEST['MenuID'][$i]." ), ";
$insert .= $insertline;
}
$insert = substr($insert, 0, -1);
echo $insert;
$A1 = Q($insert);
}

this builds:



INSERT INTO `user__permissions` (`PMenuID`, `UserID`, `Permission`) VALUES (1,1, 1 ),(2,1, 1 ),(3,1, 1 ),(4,1, 1 ),(5,1, 0 ),(6,1, 1 ),(7,1, 1 ),(8,1, 1 ),(9,1, 1 ),(10,1, 1 ),(11,1, 1 ),(12,1, 1 ),(13,1, 1 ),(14,1, 1 ),(15,1, 1 ),(16,1, 1 ),(17,1, 1 ),(18,1, 1 ),(19,1, 1 ),(20,1, 1 ),(21,1, 1 ),(22,1, 1 ),(23,1, 1 ),(24,1, 1 ),(25,1, 1 ),(26,1, 1 ),(27,1, 1 ),(28,1, 1 ),(29,1, 1 ),(30,1, 1 ),(31,1, 1 ),(32,1, 1 ),(33,1, 1 ),(34,1, 1 ),(35,1, 1 ),(36,1, 1 ),(37,1, 1 ),(38,1, 1 ),(39,1, 1 ),(40,1, 1 ),(41,1, 1 ),(42,1, 1 ),(43,1, 1 ),(44,1, 1 ),(45,1, 1 ),(46,1, 1 ),(47,1, 1 ),(48,1, 1 ),(49,1, 1 ),(50,1, 1 ),(51,1, 1 ),(52,1, 1 ),(53,1, 1 ),(54,1, 1 ),(55,1, 1 ),(56,1, 1 ),(57,1, 1 ),(58,1, 1 ),(59,1, 1 ),(60,1, 1 ),(61,1, 1 ),(62,1, 1 ),(63,1, 1 ),(64,1, 1 ),(65,1, 1 ),(66,1, 1 ),(67,1, 1 ),(68,1, 1 ),(69,1, 1 ),(70,1, 1 ),(71,1, 1 ),(72,1, 1 ),(73,1, 1 ),(74,1, 1 ),(75,1, 1 ),(76,1, 1 ),(77,1, 1 ),(78,1, 1 ),(79,1, 1 ),(80,1, 1 ),(81,1, 1 ),(82,1, 1 ),(83,1, 1 ),(84,1, 1 ),(85,1, 1 ),(86,1, 1 ),(87,1, 1 ),(88,1, 1 ),(89,1, 1 ),(90,1, 1 ),(91,1, 1 ),(92,1, 1 ),(93,1, 1 ),(94,1, 1 ),(95,1, 1 ),(96,1, 1 ),(97,1, 1 ),(98,1, 1 ),(99,1, 1 ),(100,1, 1 ),(101,1, 1 ),(102,1, 1 ),(103,1, 1 ),(104,1, 1 ),(105,1, 1 ),(106,1, 1 ),(107,1, 1 ),(108,1, 1 ),(109,1, 1 ),(110,1, 1 ),(111,1, 1 ),(112,1, 1 ),(113,1, 1 ),(114,1, 1 ),(115,1, 1 ),(116,1, 1 ),(117,1, 1 ),(118,1, 1 ),(119,1, 1 ),(120,1, 1 ),(121,1, 1 ),(122,1, 1 ),(123,1, 1 ),(124,1, 1 ),(125,1, 1 ),(126,1, 1 ),(127,1, 1 ),(128,1, 1 ),(129,1, 1 ),(130,1, 1 ),(131,1, 1 ),(132,1, 1 ),(133,1, 1 ),(134,1, 1 ),(135,1, 1 ),(136,1, 1 ),(137,1, 1 ),(138,1, 1 ),(139,1, 1 ),(140,1, 1 ),(141,1, 1 ),(142,1, 1 ),(143,1, 1 ),(144,1, 1 ),(145,1, 1 ),(146,1, 1 ),(147,1, 1 ),(148,1, 1 ),(149,1, 1 ),(150,1, 1 ),(151,1, 1 ),(152,1, 1 ),(153,1, 1 ),(154,1, 1 ),(155,1, 1 ),(156,1, 1 ),(157,1, 1 ),(158,1, 1 ),(159,1, 1 ),(160,1, 1 ),(161,1, 1 ),(162,1, 1 ),(163,1, 1 ),(164,1, 1 ),(165,1, 1 ),(166,1, 1 ),(167,1, 1 ),(168,1, 1 ),(169,1, 1 ),(170,1, 1 ),(171,1, 1 ),(172,1, 1 ),(173,1, 1 ),(174,1, 1 ),(175,1, 1 ),(176,1, 1 ),(177,1, 1 ),(178,1, 1 ),(179,1, 1 ),(180,1, 1 ),(181,1, 1 ),(182,1, 1 ),(183,1, 1 ),(184,1, 1 ),(185,1, 1 ),(186,1, 1 ),(187,1, 1 ),(188,1, 1 ),(189,1, 1 ),(190,1, 1 ),(191,1, 1 ),(192,1, 1 ),(193,1, 1 ),(194,1, 1 ),(195,1, 1 ),(196,1, 1 ),(197,1, 1 ),(198,1, 1 ),(199,1, 1 ),(200,1, 1 ),(201,1, 1 ),(202,1, 1 ),(203,1, 1 ),(204,1, 1 ),(205,1, 1 ),(206,1, 1 ),(207,1, 1 ),(208,1, 1 ),(209,1, 1 ),(210,1, 1 ),(211,1, 1 ),(212,1, 1 ),(213,1, 1 ),(214,1, 1 ),(215,1, 1 ),(216,1, 1 ),(217,1, 1 ),(218,1, 1 ),(219,1, 1 ),(220,1, 1 ),(221,1, 1 ),(222,1, 1 ),(223,1, 1 ),(224,1, 1 ),(225,1, 1 ),(226,1, 1 ),(227,1, 1 ),(228,1, 1 ),(229,1, 1 ),(230,1, 1 ),(231,1, 1 ),(232,1, 1 ),(233,1, 1 ),(234,1, 1 ),(235,1, 1 ),(236,1, ),(237,1, ),(238,1, )


the last few values are empty because the keys arn't 236,237,238 they are 90000,90001,90002

how do i get the next key name in an array?
from the form the input names are MenuID['.$M3['MenuID'].']
which creates the array MenuID[]

ie i need to replace the $i this part of the script:

$insertline = "(".$i.",".$_GET['ID'].", ".$_REQUEST['MenuID'][$i]." ),";

i googled a few things but not sure what im looking for

Thanks

Arcticwarrio
07-26-2012, 02:12 PM
its ok i found it

thanks for looking!


if (isset($_GET['Perms'])){
$D1 = Q("DELETE FROM `user__permissions` WHERE `UserID` = '".$_GET['ID']."'");
$insert = "INSERT INTO `user__permissions` (`PMenuID`, `UserID`, `Permission`) VALUES ";
foreach ($_REQUEST['MenuID'] as $key => $value) {
$insertline = "(".$key.",".$_GET['ID'].", ".$value." ),";
$insert .= $insertline;
}
$insert = substr($insert, 0, -1);
$A1 = Q($insert);
}



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum