Jump to content

Como tornar duas variavéis numa só?


Peter
 Share

Recommended Posts

epa isto é complicado de explicar.

imaginem que eu recebo por post algo como:

id=1

tamanho1=Familiar

tamanho2=Pequena

tamanho3=Pequena

tamanho4=Pequena

eu estou a identificar o tamanho1,2,3,4 com algo deste genero

echo "<td><select id=tamanho name=\"tamanho".$r['id']."\"><option>Pequena</option><option>Média</option><option>Familiar</option></select></td>"

entao como eu faria para utilizar só o tamanho1 através do post? já exprimentei $_POST["tamanho".$r['id'].] e nao funciona. alguma ideia?

Link to comment
Share on other sites

Usas um array. Acho que é suficiente no HTML dares o seguinte nome (name) aos teus campos:

tamanho[]

depois no processamento do formulário tratas do array, a começar no índice 0, no teu caso, irá de 0 até 3.

<?php
for ($i = 0; $i < 4; $i++) {
  echo $_POST['tamanho'][$i]." é o tamanho da pizza ".$i."</br/>";
}
?>

Não testei o exemplo.

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

A tag HTML fica correctamente construída de acordo com a norma W3C?

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

se fica nao sei apesar do bruno dizer que sim. eu sei o que é a W3C mas nunca li nada da organização.

eu estou mesmo a iniciar me em programação por isso nao tenho grandes conhecimentos.

o meu objectivo era de fazer aquilo sem arrays mas sim daquela forma inicial porque eu vou buscar os items á base de dados e por isso nunca sei a quantidade de items. a variavel ID tem valor indeterminado percebem?

daí eu querer receber apenas o tamanho do ID em que carreguei. porque está a passar por post todos os ID's mas eu só quero um em especial.

era excelente conseguir fazer algo deste genero

 $_POST["tamanho.$r['id']"]
Link to comment
Share on other sites

Essa técnica devia funcionar, um ponto de falha tradicional é quando o HTML está errado e por isso o nome do objecto que chega ao PHP não é o que se está à espera.

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

Então está correcto.

Ora experimenta lá fazer

for ($id=1; $id < 4; $id++) {
echo $_POST["tamanho".$id];
}

(Código em cima do joelho, mas deve funcionar)

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

o meu objectivo era de fazer aquilo sem arrays mas sim daquela forma inicial porque eu vou buscar os items á base de dados e por isso nunca sei a quantidade de items. a variavel ID tem valor indeterminado percebem?

Não tinha reparado que querias fazer a distinção por id's de produtos. Nesse caso fica mais simples aplicares como o M6 sugeriu.

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.