🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: chile.comp.programacion
Article #3336

Re: php variables dianmicas

#3336
From: Rickoj
Date: Mon, 21 Mar 2005 04:47
153 lines
6701 bytes
En las news:Xns96203994C554jmsnews@200.27.221.71, a Jos� Miguel Santib��ez
se le ocurrio
tipear:
> En el cap�tulo anterior (news:d1l07t$aiv$1@news1.nivel5.cl), "Rick_oj"
> <rick_oj@[sin-esto]tutopia.com> dijo:
>
>> En las news:Xns961FBD204747Fjmsnews@200.27.221.71, a Jos� Miguel
>> Santib��ez se le ocurrio
>> tipear:
>>> En el cap�tulo anterior (news:d1kjcf$7ef$1@news1.nivel5.cl),
>>> "Rick_oj" <rick_oj@[sin-esto]tutopia.com> dijo:
>>>
>>>> tengo una duda de una pagina estoy recogiendo X valor, y a la pagina
>>>> que llega crea X campos de texto, luego envia a otra pagina los
>>>> valores, pero no se como  crear X variables, es decir si de un campo
>>>> de texto de un formulario recibo un 2, en la pagina siguiente se
>>>> crearan 2*2 campos, luego deseo crear 2*2 variables de forma
>>>> dinamica, pero no se me ocurre como, me dijeron algo con arreglos
>>>> pero no se si se pueda usar arreglos en algo asi
>>>>
>>>> tengo algo asi
>>>>
>>>> <?$total=$_POST['numero'];? //este lo recibo de una pagina 1
>>>>
>>>> //esta es la pagina 2
>>>> <form name="formulario" method="post" action="pagina3.php">
>>>>   <?
>>>> for($i=1 ; $i<$total+1 ; $i++)
>>>> {
>>>>>
>>>>       <input type="text" name="campo<? echo"$i" ?>">
>>>>      <input type="text" name="valor<? echo"$i" ?>">
>>>>     <?
>>>> }
>>>>>
>>>>
>>>> //pagina 3
>>>> entonces en esta pagina tendria $variable1=$_POST['campo1'];
>>>> $variable2=$_POST['campo2']; $variable3=$_POST['valor1'];
>>>> $variable4=$_POST['valor2'];
>>>> como podria hacer esto? espero que se entienda
>>>>
>>>>
>>>>
>>>>
>>>
>>> Como una vez hice algo parecido, te transcribo parte del c�digo:
>>>
>>> p1.html
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>> <html><body>
>>>  <form action=p2.php>
>>>    Ingrese nombre Tabla:
>>>    <input type=text name=tabla>
>>>    Ingrese n�mero de campos:
>>>    <input type=text name=cantidad>
>>>    <input type=submit value=ingresar>
>>>  </form>
>>> </body></html>
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>>
>>> p2.php
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>> <html><body>
>>>  <form action=p3.php>
>>>    <? $tabla = $_REQUEST["tabla"];
>>>       $cantidad = $_REQUEST["cantidad"];
>>>       echo "<input type=hidden name=tabla value=$tabla>\n";
>>>       echo "<input type=hidden name=cantidad value=$cantidad>\n";
>>>       for ($i = 0; $i < $cantidad; $i++) {
>>>         echo "<input type=text name=campo$i><p>\n";
>>>         // este debiera ser un campo de tipo select
>>>         echo "<input type=text name=tipo$i><p>\n";
>>>         echo "<input type=text name=largo$i><p>\n";
>>>       }
>>>>
>>>    <input type=submit value=Continuar>
>>>  </form>
>>> </body></html>
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>>
>>> p3.php
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>> <html><body>
>>>   <h1>Los valores son:</h1>
>>>    <? $tabla = $_REQUEST["tabla"];
>>>       $cantidad = $_REQUEST["cantidad"];
>>>       // $sql = "CREATE TABLE $tabla ("
>>>       for ($i = 0; $i < $cantidad; $i++) {
>>>         // if ($i) $sql .= ',';
>>>         // $sql .= $_REQUEST["campo$i"] . " " .
>>>         // $_REQUEST["tipo$i"];
>>>         // if (strlen($_REQUEST["largo$i"])
>>>         //   $sql .= "(" . $_REQUEST["largo$i"] . ")";
>>>         echo "Campo: " . $_REQUEST["campo$i"];
>>>         echo "Tipo: " . $_REQUEST["tipo$i"];
>>>         echo "Largo: " . $_REQUEST["largo$i"] . "<p>\n";
>>>       }
>>>       // $sql .= ')';
>>>>
>>> </body></html>
>>> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ---
>>>
>>> Espero que te ayude m�s que el muy cr�ptico mensaje de ayer...
>>>
>>> si descomentas las l�nas del $sql, debiera tener parte del c�digo de
>>> creaci�n de una tabla, aunque de memoria no estoy del todo seguro...
>>
>> algo asi es lo que quiero hacer, para el caso de crear la variables
>> dinamicamente deberia usar arreglo algo asi como esto?
>>
>>        for ($i = 0; $i < $cantidad; $i++) {
>>          $variable1[$i]=$_REQUEST["campo$i"];
>>          $variable2[$i]=$_REQUEST["tipo$i"];
>>          $variable3[$i]=$_REQUEST["largo$i"];
>>        }
>>
>
> para que necesitas pasar del $_REQUEST al $variables?
> digo, quiz� sea m�s simple manejarlas directamente...

por que las variables se juntaran con otras de otro lado y despues se
enviaran todas juntas, tambien podria pasar las otras a esta pagina pero me
es mas facil y mas util tenerlas en variables para lo que me sigue mas
adelante
>
> En todo caso, si lo que dices debiera funcionar... te va a crear tres
> arreglos, uno para el nombre, otro para el tipo y el tercero para el
largo,
> y en cada posici�n quedar�n los datos relacionados...

si me funciono, tal cual como dices
>
> En todo caso, si vas a usar arreglos, en vez de eso, yo sugerir�a:
>
>         for ($i = 0; $i < $cantidad; $i++) {
>           $variable[$i][0] = $_REQUEST["campo$i"];
>           $variable[$i][1] = $_REQUEST["tipo$i"];
>           $variable[$i][2] = $_REQUEST["largo$i"];
>         }
>
> IMHO, esa es mejor estructura de datos que la anterior...
> o a�n m�s elegante:
>
>         for ($i = 0; $i < $cantidad; $i++) {
>           $variable[$i]["campo"] = $_REQUEST["campo$i"];
>           $variable[$i]["tipo"]  = $_REQUEST["tipo$i"];
>           $variable[$i]["largo"] = $_REQUEST["largo$i"];
>         }

vale gracias ni idea de manejos de arreglos en php, nunca antes los habia
usado
gracias por la ayuda
Technical Details
Message-ID: <d1ljmo$gqn$1@news1.nivel5.cl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mail
References: <d1kjcf$7ef$1@news1.nivel5.cl> <Xns961FBD204747Fjmsnews@200.27.221.71> <d1l07t$aiv$1@news1.nivel5.cl> <Xns96203994C554jmsnews@200.27.221.71>

Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,217afd57e2caed0a
X-Google-Attributes: gid1593cb,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mail
From: "Rick_oj" <rick_oj@[sin-esto]tutopia.com>
Newsgroups: chile.comp.programacion
Subject: Re: php variables dianmicas
Date: Mon, 21 Mar 2005 00:47:03 -0400
Organization: Varios
Lines: 155
Message-ID: <d1ljmo$gqn$1@news1.nivel5.cl>
References: <d1kjcf$7ef$1@news1.nivel5.cl> <Xns961FBD204747Fjmsnews@200.27.221.71> <d1l07t$aiv$1@news1.nivel5.cl> <Xns96203994C554jmsnews@200.27.221.71>
NNTP-Posting-Host: pc-154-157-104-200.cm.vtr.net
X-Trace: news1.nivel5.cl 1111380504 17239 200.104.157.154 (21 Mar 2005 04:48:24 GMT)
X-Complaints-To: news@news1.nivel5.cl
NNTP-Posting-Date: Mon, 21 Mar 2005 04:48:24 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1478
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1478