Foros del Web » Programando para Internet » PHP »

Cambiar valor mediante arreglo

Estas en el tema de Cambiar valor mediante arreglo en el foro de PHP en Foros del Web. Hola tengo una nueva duda con esto de los arreglos. bueno estoy recibiendo un valor que esta en clave y lo tengo que guardar en ...
  #1 (permalink)  
Antiguo 15/12/2009, 17:48
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Cambiar valor mediante arreglo

Hola tengo una nueva duda con esto de los arreglos.

bueno estoy recibiendo un valor que esta en clave y lo tengo que guardar en mysql pero ese valor lo tengo que cambiar a otro.


por ejemplo recibo el valor XOD

Código PHP:
$VALOR=trim($_POST["VALOR"]); 
Y estoy pensando en un arreglo mas o menos asi:

Código PHP:
$VALOR['XOD'] = "nuevo valor"
donde "nuevo valor" va a ser lo que yo guarde en la base de datos y no XOD que es el valor inicial.

como hago esta convercion? por que como lo quiero hacer no me funciona.

saludos.
  #2 (permalink)  
Antiguo 15/12/2009, 17:58
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Cambiar valor mediante arreglo

Prueba lo siguiente:

$VALOR[$_POST['valor']] = "nuevo valor";

Y si no te lo acepta prueba:

$indice = $_POST['valor'];
$valor[$indice] = "nuevo valor";
  #3 (permalink)  
Antiguo 15/12/2009, 18:12
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Hola gracias por tu respuesta, en el primer ejemplo supongo que $VALOR es la variable que asigno para recibir el valor y en [$_POST['valor']] valor vendria siendo XOD ¿no? bueno si es asi, no me funciono el primero y a tu segundo ejmplo o le entendi, indice que representaria?


por ejemplo yo hice lo siguiente con tu primer ejemplo:

Código PHP:
Ver original
  1. $valor[$_POST['XOD']] = "Nuevo valor 1";
  2. $valor[$_POST['COD']] = "nuevo valor 2";
  3. $valor[$_POST['AOD']] = "nuevo valor 3";
  4. $valor[$_POST['MOD']] = "nuevo valor 4";

saludos
  #4 (permalink)  
Antiguo 15/12/2009, 18:14
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Cambiar valor mediante arreglo

En el segundo ejemplo $indice será igual al valor de la variable post, según tu ejemplo sería XOD. Así la cadena "nuevo valor" quedará almacenada en el arreglo $valor['XOD'], ya que $indice se substityue por su valor que es XOD.

Espero que te funcione así.
  #5 (permalink)  
Antiguo 15/12/2009, 18:24
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Sigo sin entender, lo siento.

seria asi?

Código PHP:
Ver original
  1. $indice = $_POST['XOD'];
  2. $XOD[$indice] = "nuevo valor";

o algo asi mas o menos, aun asi no veo como si recibo mas valores los puediera cambiar.

el primer ejemplo me parecia muy bueno.
  #6 (permalink)  
Antiguo 15/12/2009, 18:28
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Cambiar valor mediante arreglo

Creo que no nos estamos entendiento. Dime qué variables recibes exactamente y en qué quieres transformarlo, a ver si te puedo pasar el código que necesitas.
  #7 (permalink)  
Antiguo 15/12/2009, 18:33
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

La variable la llamo "valor" y el valor que recibo es "XOD", pero aparte de XOD recibo mas valores (COD, AOD, ETC...) como todos estan en clave necesito asignarles un nuevo valor a cada uno y pense en crear un arreglo para que dependiendo del valor recibido lo pueda cambiar.
  #8 (permalink)  
Antiguo 15/12/2009, 18:55
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Cambiar valor mediante arreglo

A ver si ahora te he entendido.

Tu recibes una lista de valores que pueden ser XOD, COD, AOD, etc... que ya tienes definidos. Y segun el valor que recibas vas a asignarle un nuevo valor. Si esto es correcto creo que lo mejor es controlar el valor que recibes con un switch:
Código PHP:
switch ($_POST['valor']){
    case 
'XOD':
        
$valor['XOD'] = "nuevo valor";
    break;
    case 
'COD':
        
$valor['COD'] = "nuevo valor2";
    break;
    case 
'XOD':
        
$valor['AOD'] = "nuevo valor3";
    break;

Con este código, según recibas XOD, COD o AOD te va a crear el arreglo que le corresponde con el valor que tu le asignes. A ver si ahora te he entendido mejor.
  #9 (permalink)  
Antiguo 15/12/2009, 19:08
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Aun que es buena idea manejarlo con un switch no me funciono, me sigue guardando el valor en clave, pero me cambia la primera letra por una "n" minuscula, no me marca error pero no me guarda el nuevo valor.
  #10 (permalink)  
Antiguo 15/12/2009, 20:25
 
Fecha de Ingreso: enero-2007
Ubicación: Los Angeles, Chile
Mensajes: 28
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Cambiar valor mediante arreglo

algo asi?

Código PHP:
$valor array_keys($_POST); 
en el caso que sea lo contrario podrias usar

Código PHP:
foreach($_POST as $var){

        
$valor[$var] = "";



Última edición por alex16x; 15/12/2009 a las 20:54
  #11 (permalink)  
Antiguo 16/12/2009, 08:41
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Ok gracias lo checo y comento


saludos.
  #12 (permalink)  
Antiguo 16/12/2009, 08:52
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Cambiar valor mediante arreglo

Sides que los "VALORES" que recibes son:
'XOD', 'COD', 'AOD', 'MOD'

pero mediante que variables las recibes, es decir algo asi??
$_POST['campo1'], $_POST['campo2'], $_POST['campo3'], $_POST['campo4']
se supone que recibes esos valores pero se envian dentro de algun campo o variable...
  #13 (permalink)  
Antiguo 16/12/2009, 09:31
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Hola JoseTejada, el valor es seleccionado de una lista select, que tiene varios valores en clave, estan asi por que son asignados mediante otro arreglo javascript, es todo un rollo y se pusieron en clave por que no podian contener espacion no signos de acento, entonces asi se envian a php, lo que resulta que en php lo tenga que convertir de nuevo.
  #14 (permalink)  
Antiguo 16/12/2009, 10:24
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Cambiar valor mediante arreglo

Mi estimado tampon (eso se oye raro xD), t pido disculpas por mi falta de tino, ya que no te he captado muy bien, crees que podrías pegar como ejemplo la lista select con las opciones que tienes para poder guiarme mejor y saber como es que se envian tus datos; sinceramente me gustaría ayudarte pero como te repito no entendí muy bien, espero puedas facilitarme las cosas ;).
  #15 (permalink)  
Antiguo 16/12/2009, 11:19
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Hola de nuevo JoseTejada, pues mira no te pongo todo el ejemplo con javascript por que es algo complicado, pero mas o menos va quedando asi:

Código HTML:
Ver original
  1. <select id="valor">
  2.     <option>SELECCIONA UNA OPCION</option>
  3.     <option value="XOD">OPCION 1 EN CLAVE</option>
  4.     <option value="COD">OPCION 2 EN CLAVE</option>
  5.     <option value="AOD">OPCION 3 EN CLAVE</option>
  #16 (permalink)  
Antiguo 16/12/2009, 11:39
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Cambiar valor mediante arreglo

Ok esta solucionado.

Código PHP:
Ver original
  1. $NuevoValor['XOD'] = "Nuevo valor 1";
  2. $NuevoValor['COD'] = "Nuevo valor 2";
  3. $NuevoValor['AOD'] = "Nuevo valor 3";
  4.  
  5. $VALOR=trim($_POST["VALOR"]);  
  6.  
  7. echo "$NuevoValor[$VALOR] ";

y eso era todo, gracias porlas respuestas.
  #17 (permalink)  
Antiguo 16/12/2009, 11:52
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Cambiar valor mediante arreglo

Que bueno que lo hayas solucionado , de todas maneras te pongo algo que probé a lo mejor te sirve tambien:
Código PHP:
if(isset($_POST['valor'])){
    
$valor "'".$_POST['valor']."'";
    
$arrayClave = array($valor => "otro valor");

        echo 
$arrayClaves[$valor];
  } 
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 21:11.