Foros del Web » Programando para Internet » Javascript »

array

Estas en el tema de array en el foro de Javascript en Foros del Web. Buenos dias a todos!!!1 hola amigos, les cuentos un poquito, eh hecho como una planilla con javascript con la funcion createElement y ahora quiero pasar ...
  #1 (permalink)  
Antiguo 15/10/2009, 08:47
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
array

Buenos dias a todos!!!1

hola amigos, les cuentos un poquito, eh hecho como una planilla con javascript con la funcion createElement y ahora quiero pasar todo los datos y recibirlo en variables de php para poder insertarlo en mi base de datos, se que se debe hacer con array pero no se bien como, alguien me puede ayudar???? desde ya muchas gracias
  #2 (permalink)  
Antiguo 15/10/2009, 08:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: array

Usa var_dump($_POST) para que veas la estructura de como llegan los datos a PHP y en base a eso haces el proceso de tu script para sacarlo.

Saludos.
  #3 (permalink)  
Antiguo 15/10/2009, 09:03
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Disculpa Gatov, de casualidad un ejemplo como para entenderlo mejor o es mucho pedir, gracias
  #4 (permalink)  
Antiguo 15/10/2009, 09:04
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Pero haz lo que te dijo, sobre var_dump($_POST).
Código PHP:
Ver original
  1. <?php
  2. var_dump($_POST);
  3. ?>
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 15/10/2009, 09:14
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Bien lo hice, y me dice todo lo que me trae o se al estructura, pero solo me trae la primera fila, me parece que el error es al crear el array en javascript, mira y si puedes corrigeme, mira donde tengo que crear el array?? muchas gracias por la ayuda
<head>
<script>
var fecha = document.createElement('INPUT'); creo el input
fecha.value = document.all.txtfec.value; tomo el valor del input ya creado anteriormente
div.appendChild(fecha);
</script>
</head>
<body>
<table border="1" cellpadding="0" cellspacing="0" style="font-size:12px" >
<tr>
<td><input name="txtfec" type="text" size="2" maxlength="10"></td>
  #6 (permalink)  
Antiguo 15/10/2009, 09:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Pero este caso ya no tiene que ver con PHP, sino javascript. Lo primero que veo en el codigo es que mencionas una variable div que no la tienes declarada anteriormente.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 15/10/2009, 09:25
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Esta declarada, lo que pasa es que puse una parte de codigo para que no sea tan largo , eso funciona todo, el problema es que no se como crear un array, por que lo que veo en var_dump, son los datos que tengo en los input dentro del body , pero lo que datos que estan en los input creado en jscrip no aparecen, se me entiende o queres que ponga todo el codigo, no es dificil de leerlo
  #8 (permalink)  
Antiguo 15/10/2009, 09:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Para poder indicarte se necesita ver el codigo, pero por favor escribelo entre [ PHP ] [ /PHP ] (sin los espacios)
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #9 (permalink)  
Antiguo 15/10/2009, 09:35
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Código PHP:
<html>
<
head>
<
script type="text/javascript">
  var 
i=1;
function 
fEscribeDir()
{
addFormField(document.formu1,'text',+i);
//document.formu1.numficheros.value=i;
i=i+1;
}
     
function 
addFormField (formfieldTypefieldNamefieldValue)
{
if (
document.getElementById)
{
    var 
cant document.all.cantidad.value;
for (
m=1<cant ;++m)
{

var 
fecha document.createElement('INPUT');
var 
codigo document.createElement('INPUT');
var 
detalle document.createElement('INPUT');
var 
t32 document.createElement('INPUT');
var 
t34 document.createElement('INPUT');
var 
t35 document.createElement('INPUT');
var 
t36 document.createElement('INPUT');
var 
t37 document.createElement('INPUT');
var 
t38 document.createElement('INPUT');
var 
t39 document.createElement('INPUT');
var 
t40 document.createElement('INPUT');
var 
t42 document.createElement('INPUT');
var 
t44 document.createElement('INPUT');
var 
t46 document.createElement('INPUT');
var 
t48 document.createElement('INPUT');
var 
t50 document.createElement('INPUT');
var 
t52 document.createElement('INPUT');
var 
t54 document.createElement('INPUT');
var 
t56 document.createElement('INPUT');
var 
cant_pan document.createElement('INPUT');
var 
cos_u document.createElement('INPUT');
var 
cos_cur document.createElement('INPUT');
var 
por_u document.createElement('INPUT');
var 
cant_cur document.createElement('INPUT');
var 
vta_u document.createElement('INPUT');
var 
vta_cur document.createElement('INPUT');
var 
div document.createElement('DIV');

fecha.value document.all.txtfec.value;


div.appendChild(fecha);
div.appendChild(codigo);
div.appendChild(detalle);
div.appendChild(t32);
div.appendChild(t34);
div.appendChild(t35);
div.appendChild(t36);
div.appendChild(t37);
div.appendChild(t38);
div.appendChild(t39);
div.appendChild(t40);
div.appendChild(t42);
div.appendChild(t44);
div.appendChild(t46);
div.appendChild(t48);
div.appendChild(t50);
div.appendChild(t52);
div.appendChild(t54);
div.appendChild(t56);
div.appendChild(cant_pan);
div.appendChild(cos_u);
div.appendChild(cos_cur);
div.appendChild(por_u);
div.appendChild(cant_cur);
div.appendChild(vta_u);
div.appendChild(vta_cur);
    
document.getElementById('ficheros').appendChild(div);
}
}
}
</script>
</head>
<body>
<form name="datos" action="alta_stock.php" method="POST"> 
    <h1>ALTA DE STOCK</h1>    
    <table border="1" width="1" >
        <tr>
            <td align="center"><b>Fecha</b></td>
            <td align="center"><b>Codigo</b></td>
            <td align="center"><b>Detalle</b></td>
            <td align="center"><b>32</b></td>
            <td align="center"><b>34</b></td>
            <td align="center"><b>35</b></td>
            <td align="center"><b>36</b></td>
            <td align="center"><b>37</b></td>
            <td align="center"><b>38</b></td>
            <td align="center"><b>39</b></td>
            <td align="center"><b>40</b></td><br>
            <td align="center"><b>41</b></td>
            <td align="center"><b>42</b></td>
            <td align="center"><b>44</b></td>
            <td align="center"><b>46</b></td>
            <td align="center"><b>48</b></td>
            <td align="center"><b>50</b></td>
            <td align="center"><b>52</b></td>
            <td align="center"><b>54</b></td>
            <td align="center"><b>56</b></td>
            <td align="center"><b>Cant Pant.</b></td>
            <td align="center"><b>$ costo U.</b></td>
            <td align="center"><b>$ costo Cur</b></td>
            <td align="center"><b>% U. </b></td>
            <td align="center"><b>% Cur. </b></td>
            <td align="center"><b>Cant Cur</b></td>
            <td align="center"><b>$ vta U.</b></td>
            <td align="center"><b>$ vta Cur</b></td>
        </tr>
        </table>
<div id="ficheros" >        
<table border="1" cellpadding="0" cellspacing="0" style="font-size:12px" >
        <tr>
            <td><input name="txtfec" type="text" size="2" maxlength="10"></td>
            <td><input name="txtcod" type="text" size="2" maxlength="6"></td>
            <td><input name="txtcant" type="text" size="2" maxlength="4" ></td>
            <td><input name="txtdeta" type="text" size="2" maxlength="50"></td>
            <td><input name="txttalle32" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle34" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle35" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle36" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle37" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle38" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle39" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle40" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle42" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle44" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle46" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle48" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle50" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle52" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle54" type="text" size="2" maxlength="2"></td>
            <td><input name="txttalle56" type="text" size="2" maxlength="2"></td>
            <td><input name="txtcanpan" type="text" size="2" maxlength="2"></td>
            <td><input name="nose" type="text" size="2" maxlength="2"></td>
            <td><input name="txtporcu" type="text" size="2" maxlength="2"></td>
            <td><input name="txtporccur" type="text" size="2" maxlength="2"></td>
            <td><input name="cantidad"  type="text" size="2" maxlength="2"   ></td>
            <td><input name="txtprecio_u" type="text" size="2" maxlength="5" "></td>
            <td><input name="txtprecio_t" size="2" id="txtprecio_t" type="" disabled="disabled" > </td>
            <td><input  name="crear" type="button" onclick="javascript: fEscribeDir();"></td>
            
        </tr>
    </table>
</div>    
<table>
        <tr>
            <input type="submit" value="Enviar" id="cmdenviar" name="cmdenviar" onclick="crearCampos(this.value);"   tabindex="18">
        </tr>
    </table>
</form>
</body>
</html> 
  #10 (permalink)  
Antiguo 15/10/2009, 09:45
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Y que te trae var_dump($_POST) postea lo que te sale
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #11 (permalink)  
Antiguo 15/10/2009, 09:51
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Código PHP:
array(27) { ["txtfec"]=> string(1"3" ["txtcod"]=> string(0"" ["txtcant"]=> string(0"" ["txtdeta"]=> string(0"" ["txttalle32"]=> string(0"" ["txttalle34"]=> string(0"" ["txttalle35"]=> string(0"" ["txttalle36"]=> string(0"" ["txttalle37"]=> string(0"" ["txttalle38"]=> string(0"" ["txttalle39"]=> string(0"" ["txttalle40"]=> string(0"" ["txttalle42"]=> string(0"" ["txttalle44"]=> string(0"" ["txttalle46"]=> string(0"" ["txttalle48"]=> string(0"" ["txttalle50"]=> string(0"" ["txttalle52"]=> string(0"" ["txttalle54"]=> string(0"" ["txttalle56"]=> string(0"" ["txtcanpan"]=> string(0"" ["nose"]=> string(0"" ["txtporcu"]=> string(0"" ["txtporccur"]=> string(0"" ["cantidad"]=> string(1"3" ["txtprecio_u"]=> string(0"" ["cmdenviar"]=> string(6"Enviar" 
  #12 (permalink)  
Antiguo 15/10/2009, 09:55
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Como te indique, tu problema corresponde al javascript. Te faltan varias cosas, vas a tener que esperar que un moderador te traslade, para que esa area te pueda ayudar
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #13 (permalink)  
Antiguo 15/10/2009, 09:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

Bueno muchas gracias, como tengo que hacer para que me trasladen???
  #14 (permalink)  
Antiguo 15/10/2009, 10:38
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: array

una cosa, y ¿no te serviría? con poner el mismo nombre a cada input y asi tener el arrray sin necesidad del javascript
ejemplo:
Código html:
Ver original
  1. <td><input name="texto[]" type="text" size="2" maxlength="10"></td>
  2. <td><input name="texto[]" type="text" size="2" maxlength="6"></td>
y luego en php recorres $_POST['texto'] con un foreach (puedes usar el nombre que quieras, esto solo es un ejemplo).

saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #15 (permalink)  
Antiguo 15/10/2009, 10:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: array

Mensaje trasladado desde PHP a Javascript
  #16 (permalink)  
Antiguo 15/10/2009, 10:43
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

hola eits, si eso es lo que quiero hacer,pero del otro lado solo me recupera uno nada mas, por ejemplo yo creo 3 filas y le coloco como atributo el mismo nombre de del input, pero cuando lo paso para recuperar en php solo me muestra uno solo
  #17 (permalink)  
Antiguo 15/10/2009, 10:45
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

mira esto es lo que me da el var_dump($_post) - recien me lo enseñan a esto

Código PHP:
array(27) { ["txtfec"]=> array(3) { [0]=> string(1"3" [1]=> string(1"3" [2]=> string(1"3" } ["txtcod"]=> string(0"" ["txtcant"]=> string(0"" ["txtdeta"]=> string(0"" ["txttalle32"]=> string(0"" ["txttalle34"]=> string(0"" ["txttalle35"]=> string(0"" ["txttalle36"]=> string(0"" ["txttalle37"]=> string(0"" ["txttalle38"]=> string(0"" ["txttalle39"]=> string(0"" ["txttalle40"]=> string(0"" ["txttalle42"]=> string(0"" ["txttalle44"]=> string(0"" ["txttalle46"]=> string(0"" ["txttalle48"]=> string(0"" ["txttalle50"]=> string(0"" ["txttalle52"]=> string(0"" ["txttalle54"]=> string(0"" ["txttalle56"]=> string(0"" ["txtcanpan"]=> string(0"" ["nose"]=> string(0"" ["txtporcu"]=> string(0"" ["txtporccur"]=> string(0"" ["cantidad"]=> string(1"3" ["txtprecio_u"]=> string(0"" ["cmdenviar"]=> string(6"Enviar" faultCode1faultStringNotice:Array to string conversion in C:Archivos de programaApache GroupApache2htdocsfiniskoalta_stock.php on line 17Array 
  #18 (permalink)  
Antiguo 15/10/2009, 12:00
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

como hao para colocarle un separador a la cadena string, o ya lo trae predefinido? y si lo trae predefinido cual es?? desde ya muchas gracias
  #19 (permalink)  
Antiguo 15/10/2009, 12:08
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

Bueno dentro de lo que declaras en javascript tienes que declarar tambien el name. Lo que haces es colocar el nombre como array.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #20 (permalink)  
Antiguo 15/10/2009, 12:19
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

mira, a ver por que me estoy enredando solo y los estoy enredando a usted,
primero se entiendo lo que quiero yo hacer, por las dudas que no se entienda lo explico.

lo que yo pase hace rato en el codigo es una series de campos, donde yo coloca la cantidad de filas que quiero que me aparezcan una vez que yo coloco eso las filas se generan, hasta ahi todo ok, el problema es que quiero pasar todo los datos de todas las filas a las variables de php, lo cual el unico valor que me pasa es el que esta en el body, por que lo otro que se genero con el javascript no aparecen, que es lo que estoy haciendo mal???, gracias por el tiempo que dedicas
  #21 (permalink)  
Antiguo 15/10/2009, 12:29
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 5 meses
Puntos: 20
Respuesta: array

mira Abimaelrc, creo que ya lo tengo, por que coloco el var_dump($_post) y me los muestra, pero cuando quiero leerlo en php me sale este error

notice: faultCode1faultStringNotice:Array to string conversion in
como hago para saber cual es el separador que tiene o como tengo que convertirlo a un string??
  #22 (permalink)  
Antiguo 16/10/2009, 08:39
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: array

¿Pero de donde sale faultCode1 faultStringNotice?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:52.