$bancoDeDados = array("Red", "Blue", "Green", "Yellow", "Brown");
$valoreGravados = array("Red" => array(
"color" => "Red",
"qtd" => "2"),
"Blue" => array(
"qtd" => "Blue"),
"Green" => array(
"qtd" => "3")
);
function in_multi_array($needle, $haystack)
{
foreach($haystack as $pos => $val)
{
if (is_array($val))
{
if (in_multi_array($needle, $val))
return 1;
} else
if ($val == $needle)
return 1;
}
}
foreach ($bancoDeDados as $teste) {
if (in_multi_array($teste, $valoreGravados))
echo "". $valoreGravados[$teste]['qtd'] ."<br>";
else
echo "FALSE <br>\n";
}O que eu preciso:
No meu sistema, eu terei alguns campos do tipo checkbox, para marcar por exemplo os produtos, porém junto dos produtos, eu preciso colocar a quantidade de cada produto. Desta forma, eu terei um campo de input do tipo text para escrever a quantidade e terei o checkbox para marcar se o produto foi vendido ou não.
Bom, somente com os checkbox é tranquilo, basta fazer produto[] como nome e posso unir todos os valores e criar um array comum, porém o que eu preciso é que os que foram selecionados possam ser mostrados como checked caso precise alterar algo depois. Eu queria fazer um array bi-dimensional da seguinte forma:
Nome do produto -> categoria -> quantidade
Por exemplo: O item é o carro Gol, o qual será o nome de um array, e dentro do array gol, terei a categoria que ele se encontra por exemplo vermelho e a quantidade, 2.
Fazer este array manualmente é sem problemas, porém eu não estou conseguindo fazer de forma dinâmica puxando os valores do banco de dados, pois tenho tudo cadastrado, seria apenas mostrar para o usuário selecionar.
Basicamente, como criar este array direto do banco de dados?
$valoreGravados = array("Red" => array(
"color" => "Red",
"qtd" => "2"),
"Blue" => array(
"color" => "Blue",
"qtd" => "1"),
"Green" => array(
"color" => "Green",
"qtd" => "3")
);Localizei o seguinte código na internet porém não consegui adaptar o mesmo para o que eu preciso:
$sql = mysql_query("SELECT id, nome FROM cliente");
while( $rs = mysql_fetch_assoc($sql) )
{
$sql2 = mysql_query("SELECT id_compra, id_cliente, compra FROM compras WHERE id_cliente=" . $rs['id']);
$compras = array();
while( $rs2 = mysql_fetch_assoc($sql2) )
{
$compras[] = $rs2;
}
$rs['compras'] = $compras;
$result[] = $rs;
}
print_r($result);Grato, tenho uma certa urgência, procurei muito sobre criar arrays mas não achei nada como sendo com mais de 1 valor ou array dentro de array, apenas este acima.











