Jump to content


Photo

Concatenar Variáveis Php


  • Faça o login para participar
6 replies to this topic

#1 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 04/11/2007, 15:46

Olá pessoaL!

Estou com um problema na seguinte sintaxe:

$"nomcao$id1" = $_POST["nomcao.$id1"];

Preciso que a variável seja nomcao mais o valor da variável $id1, ou seja, se $id1=1, variável = $nomcao1

Já tentei de todas as formas possiveis, mas não consegui.

Se alguém tiver alguma idéia me fale.

Grata.

#2 Inu

Inu

    Veterano

  • Usuários
  • 1138 posts
  • Sexo:Masculino
  • Localidade:Canela, Rio Grande do Sul, Brasil

Posted 04/11/2007, 16:02

Err.
if($id1 = 1){
$variavel = $variavelfinal;
} else {
$variavel = $variavelinicial;
}
Se não for isso, se explique melhor, porque está difícil de comprender direito o que tu quer.
E concatenar variáveis seria nada mais, nada menos do que fazer isso:
$variavel = $variavel1." oi ".$variavel2;
$variavel = $variavel1.$variavel2;

Edição feita por: Inu, 04/11/2007, 16:06.


#3 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 04/11/2007, 16:08

Err.

if($id1 = 1){
$variavel = $variavelfinal;
} else {
$variavel = $variavelinicial;
}
Se não for isso, se explique melhor, porque está difícil de comprender direito o que tu quer.


Seguinte, tenho o código :

while($id1!=0){
$"nasc$id1" = $_POST["nasc.$id1"];
$"peso$id1" = $_POST["peso.$id1"];
$"sexo$id1" = $_POST["pet.$id1"];
$"pet$id1" = $_POST["pet.$id1"];
$"racao$id1" = $_POST["racao.$id1"];
$"anual$id1" = $_POST["anual.$id1"];
$"raiva$id1" = $_POST["raiva.$id1"];
$"giardia$id1" = $_POST["giardia.$id1"];
$"gripe$id1" = $_POST["gripe.$id1"];
$"verm$id1" = $_POST["verm.$id1"];
$id1--;
}

Do jeito que está está dando o erro: unexpected T_CONSTANT_ENCAPSED_STRING, expecting T_VARIABLE .

Preciso que o nome da variavel junte-se com o numero da variável id.
Por exemplo: Se $id1=1 variável vai ter o nome $nasc1, $peso1 , $sexo1, etc.

Valew

Edição feita por: cris_gavioli, 04/11/2007, 16:15.


#4 Inu

Inu

    Veterano

  • Usuários
  • 1138 posts
  • Sexo:Masculino
  • Localidade:Canela, Rio Grande do Sul, Brasil

Posted 04/11/2007, 16:20

Agora que eu entendi o que tu queria, editei lá em cima...
$variavel1 = $variavel2.$variavel3;
Isso do número/nome da variável, acho que com um loop(se for vários números e tu não saber quais/quantos tem) dá para fazer isso. Agora se tu saber quais/quantos, basta um if().

#5 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 04/11/2007, 16:28

Esse tipo de cocatenação não existe é totalmente exdruxula e anti-semantica ...
O único jeito de juntar as variaeis desse jeito é usando a função "eval()" que emula códigos PHP ...

<?php
$id1 = "1";
eval("\$nome$id1 = $_POST["nasc" . $id1];");
eval("\$peso$id1 = $_POST["peso" . $id1];");

echo $nome1;
echo $peso1;
?>

A maneira mais correta de se fazer isso ao meu modo de intender é com Arrays associar o número em questão a variavel desejada ... tipo assim:

<?php

$nasc[$id1] = $_POST["nasc" . $id1];
$peso[$id1] = $_POST["peso" . $id1];

?>


#6 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 04/11/2007, 17:26

Hummm...Eu já havia feito isso, mas o problema é quenão está pegando o valor da variável, dai achei que tinha algo errado ai...

Valew então...vou tentar descobrir ql é o problema..

Poxa, não tinha visto sua resposta antes...

Fiz aqui eu deu certo com array...

Brigadão pela ajuda... :rolleyes:

Esse tipo de cocatenação não existe é totalmente exdruxula e anti-semantica ...
O único jeito de juntar as variaeis desse jeito é usando a função "eval()" que emula códigos PHP ...

<?php
$id1 = "1";
eval("\$nome$id1 = $_POST["nasc" . $id1];");
eval("\$peso$id1 = $_POST["peso" . $id1];");

echo $nome1;
echo $peso1;
?>

A maneira mais correta de se fazer isso ao meu modo de intender é com Arrays associar o número em questão a variavel desejada ... tipo assim:

<?php

$nasc[$id1] = $_POST["nasc" . $id1];
$peso[$id1] = $_POST["peso" . $id1];

?>



#7 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 04/11/2007, 22:42

É preciso utilizar variáveis variáveis.

Exemplo:

${"nasc{$id1}"} = $_POST["nasc{$id1}"];
Na real, fica bem estranho. Ficaria melhor utilizando matrizes (arrays multidimensionais). ;)

[]’s :DAté mais




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq