Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Will Fernando

[Resolvido] adicionar valor array

Recommended Posts

opa galera ... assim como eu posso adicionar um novo valor a array por exemplo no indice 0 tem valor Bola ae eu adiciono o valor Quadrado e ele adiciona direto no proximo indice no caso o dois .. pegando e quardando ele devolta numa session ? alguma opiniao

 

valww galeraaa

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

$vetor[] = 'bola';

$vetor[] = 'outra coisa';

 

echo '<pre>';

var_dump($vetor);

$vetor[] = 'quadrado';

 

var_dump($vetor);

echo '</pre>';

?>

dê uma estudada nos tipos de variáveis do php..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou te dar uma dica, que pra mim é muito útil. Sempre que quiser saber o que uma função faz, entra no site do PHP assim.

 

br.php.net/nome_da_funcao

 

ex.:

 

br.php.net/var_dump

br.php.net/print_r

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sinceramente.. não entendi a dificuldade..

$i = count($vetor); /* guardando o número de elementos do array */
/* se o array tem 3 elementos, então a última posição, que foi 
  a que você inseriu, é o número de elementos menos 1
*/

$_SESSION['tal'] = $vetor[$i-1]; 

echo $_SESSION['tal'];
lógica ?

sim.. pode 'trocar' por print.. faça isso, ai você vai entender a diferença..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou te dar uma dica, que pra mim é muito útil. Sempre que quiser saber o que uma função faz, entra no site do PHP assim.

 

br.php.net/nome_da_funcao

 

ex.:

 

br.php.net/var_dump

br.php.net/print_r

 

Carlos Eduardo

 

era soh curiosidade mesmo ^^ gosto do print_r =] ... normalmente custumo a aconpanhar o php.net e pesquisar as funcoes la... igual agradeço a dica =]

 

valwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim sim .. mas a minha duvida seria na forma de montar tudo isso.. como eu vo pega da session atribui o valor a array e sobrescreve a session ? *do jeito que fiz ele deu erro ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

como eu vo pega da session atribui o valor a array e sobrescreve a session ? *do jeito que fiz ele deu erro ^^

Pode explicar melhor esse procedimento ? de uma forma mais clara ?

Qual erro deu ? 'deu errado', é diferente de: 'o php retornou um erro'.

http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php 

$_SESSION['test'] = array();

$nun = array_count_values($_SESSION['session']);

$indici = ($nun + 1);

$valor = array($indici) = 'Bola'; // <<< da pra ve de longe q tah errado =] .. mas n consegui pensa em otro jeito de monta isso

$_SESSION['test'] = $valor;

echo "<pre>";

print_r($_SESSION['test']);

echo "</pre>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Explica oque você quer com isso..

tá tentando montar um bidimensional mesmo ? ou não ?

<?php 
session_start();
$_SESSION['test'] = array();

$nun = count($_SESSION['test']);
$indice = ($nun + 1);
$valor= 'Bola';
$_SESSION['test'][$indice] = $valor;
echo "<pre>";
	 print_r($_SESSION['test']);
echo "</pre>";




/* bloco de código igual, só para add um novo item */
$nun = count($_SESSION['test']);
$indice = ($nun + 1);
$valor2 = 'Quadrado';
$_SESSION['test'][$indice] = $valor2;
echo "<pre>";
	 print_r($_SESSION['test']);
echo "</pre>";
?>
Tá ficando feio isso... =X

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pagina "testando.php"

<?php session_start(); ?>
<?php
$_SESSION['test'] = array();
$nun = count($_SESSION['test']);
$indice = ($nun + 1);
$valor= 'Bola';
$_SESSION['test'][$indice] = $valor;
echo "<pre>";
	 print_r($_SESSION['test']);
echo "</pre>";
 ?>

retorna

 

Array

(

[1] => Bola

)

entao vou para pagina testando2.php

 

<?php
<?php session_start(); ?>
$_SESSION['test'] = array();
$nun = count($_SESSION['test']);
$indice = ($nun + 1);
$valor= 'Banana';
$_SESSION['test'][$indice] = $valor;
echo "<pre>";
	 print_r($_SESSION['test']);
echo "</pre>";
 ?>
retorna

 

Array

(

[1] => Banana

)

eu qria que retorna-se

 

Array

(

[1] => Bola

[2] => Banana

)

entende ?

 

valw man

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 erros:

você não deve colocar um bloco php dentro de outro

e se você fizer:

$_SESSION['test'] = array();
em todas as páginas, você vai limpar o array...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer assim

$_SESSION['test'] = array('indice' => 'valor');// ou assim
$_SESSION['test'] = array('valor1','valor2','valor3');// vai pegar indice 0, 1, 2

Não sei se é isto que você quer.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

issu mesmo xara ! *meu nome tambem eh willian ... brigadao ae .. pro matias tambem... mass ... so uma ultima pergunta tem como eu limita tipo .. so mostra os 10 ultimos menbros da array ???

 

*OBS: o do bloco php d antes foi erro de ctrl+v mesmo xP

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá..

ordena o array de forma inversa(tem função pronta pra isso).

 

E faz um laço limitado à 10 pra mostrar os itens.. ou faz o laço direto do ultimo pro -10ésimo item..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá..

ordena o array de forma inversa(tem função pronta pra isso).

 

E faz um laço limitado à 10 pra mostrar os itens.. ou faz o laço direto do ultimo pro -10ésimo item..

Atenção a parte onde ele coloca ORDENA O ARRAY DE FORMA INVERSA. Função array_reverse.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

ataa agora intendi .. valw ae pela ajuda matias, renato e william .... pode bota resolvido ae no topico.. =]

 

script final *para qm tiver procurando uma solucao parecida ou igual

<?php
if(!isset($_SESSION['prod'])){
$_SESSION['prod'] = array();
$nun = count($_SESSION['prod']);
$indice = ($nun + 1);
$valor= 'Bola';
$_SESSION['prod'][$indice] = $valor;
echo "<pre>";
	 print_r($_SESSION['prod']);
echo "</pre>";
}
else {
$nun = count($_SESSION['prod']);
$indice = ($nun + 1);
$valor= 'Banana';
$_SESSION['prod'][$indice] = $valor;
//echo "<pre>";
$array = array_reverse($_SESSION['prod']);
for($x=0;$x<10;$x++){
echo $array[$x];
echo "<br />";
}
	// print_r($x);
//echo "</pre>";
} 
 ?>
</body>
</html>

 

valwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.