Foros del Web » Programando para Internet » PHP »

Guardar datos de array Javascript a PHP

Estas en el tema de Guardar datos de array Javascript a PHP en el foro de PHP en Foros del Web. Hola, tengo un problema tratando de recoger datos de un array en Javascript. Tengo este codigo en php (que a su vez incluye algo de ...
  #1 (permalink)  
Antiguo 26/02/2008, 13:39
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Guardar datos de array Javascript a PHP

Hola, tengo un problema tratando de recoger datos de un array en Javascript.

Tengo este codigo en php (que a su vez incluye algo de javascript para evitar que se pueda seleccionar una carta(imagen) varias veces mandando un mensaje)

Ahora no sé como hacer que las cartas seleccionadas vayan a parar a un array PHP.

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>test</title>
<script>
Array.prototype.in_array=function(){
    for(var j in this){
        if(this[j]==arguments[0]){
            return true;
        }
    }
    return false;    
}
var vec=[];
function guardarYComprobar(elem){
if(vec.in_array(elem)){
alert('nop');
}else{
vec.push(elem)
}
}
</script>
</head>

<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>

<td><img src="./images/cards/back.jpg" name="card7" width="80" height="130" onClick="document.card7.src='./images/cards/<? echo $VarArray[6]; ?>.gif';guardarYComprobar(this.src)"></td>
<td><img src="./images/cards/back.jpg" name="card8" width="80" height="130" onClick="document.card8.src='./images/cards/<? echo $VarArray[7]; ?>.gif';guardarYComprobar(this.src)"></td>
<td><img src="./images/cards/back.jpg" name="card9" width="80" height="130" onClick="document.card9.src='./images/cards/<? echo $VarArray[8]; ?>.gif';guardarYComprobar(this.src)"></td>
<td><img src="./images/cards/back.jpg" name="card10" width="80" height="130" onClick="document.card10.src='./images/cards/<? echo $VarArray[9]; ?>.gif';guardarYComprobar(this.src)"></td>
<td><img src="./images/cards/back.jpg" name="card11" width="80" height="130" onClick="document.card11.src='./images/cards/<? echo $VarArray[10]; ?>.gif';guardarYComprobar(this.src)"></td>
<td><img src="./images/cards/back.jpg" name="card12" width="80" height="130" onClick="document.card12.src='./images/cards/<? echo $VarArray[11]; ?>.gif';guardarYComprobar(this.src)"></td>

</table>
</body>
</html>
¿Cómo podría hacer en PHP que las cartas seleccionadas vayan a un array PHP pero también sin repetirse?

Saludos y gracias por adelantado.
  #2 (permalink)  
Antiguo 26/02/2008, 13:43
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
Re: Guardar datos de array Javascript a PHP

Guardalas en un campo oculto de un formulario, y después las rescatas en PHP, puedes guardarlas por ID, por ejemplo y así en PHP rescatas el ID separado por comas, y le aplicas un explode.

Saludos.
  #3 (permalink)  
Antiguo 26/02/2008, 14:16
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Guardar datos de array Javascript a PHP

Hola GatorV, gracias por tu pronta respuesta.

Respecto al funcionamiento del explode sí sé más o menos como funciona y almacenaría los datos en el array tal como necesito, pero no entendí eso de guardarlas en un formulario oculto. ¿Te refieres desde código javascript?

Y eso de guardarlas por ID.. ¿cómo sería más o menos? (nunca escuché eso de guardar algo por ID, supongo que será porque soy algo nuevo en PHP)
  #4 (permalink)  
Antiguo 26/02/2008, 15:31
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
Re: Guardar datos de array Javascript a PHP

Me referia a ponerlo en un formulario en un campo oculto:
[HTML]
<form action="tuarchivo.php" method="post">
<input type="hidden" name="arreglo" value="" />
</form>
[/HMTL]

Luego desde JavaScript conviertes tu arreglo a una lista separada por comas, y la pones en el campo oculto, luego lo envías a la pagina PHP y ahí lo decodificas.

Saludos.
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:15.