Foros del Web » Programando para Internet » PHP »

Guardar valores de array en mysql

Estas en el tema de Guardar valores de array en mysql en el foro de PHP en Foros del Web. Aqui te pongo como funcionaria con espacio antes del DEDI @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original error_reporting ( 0 ) ; include ( 'includes/mysql.php' ) ...

  #31 (permalink)  
Antiguo 12/06/2012, 13:12
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 7 meses
Puntos: 139
Respuesta: Guardar valores de array en mysql

Aqui te pongo como funcionaria con espacio antes del DEDI


Código PHP:
Ver original
  1. include('includes/mysql.php');
  2.  
  3. $cadena =  "
  4. ET DEDI #1 1 500
  5. ET DEDI #2 1 700
  6. ET DEDI #3 1 900
  7. ";
  8. $resultado = array();
  9. $patron = '/([A-Z]+\s)([A-Z]+\s)(\#[0-9]{1,4}+\s)([0-9]{1,4}+\s)([0-9]{1,6})/';
  10.  
  11.  preg_match_all ($patron, $cadena, $resultado);
  12.  
  13. if (preg_match_all ($patron, $cadena, $resultado))
  14. {
  15.     $prefixProducto = $resultado[1];
  16.         $producto = $resultado[2];
  17.     $codProducto = $resultado[3];
  18.     $cantidad = $resultado[4];
  19.     $precio = $resultado[5];
  20.  
  21.     $sqlString = "INSERT INTO test(`producto`,`cantidad`,`precio`)VALUE";
  22.     for ($i = 0;$i < count($producto); $i++)
  23.     {
  24.         $sqlString .= "('".$prefixProducto[$i].$producto[$i].$codProducto[$i]."',".$cantidad[$i].",".$precio[$i]."),";
  25.     }
  26.     echo trim($sqlString, ',');
  27. }

Pero pensando bien , no creo que el codigo se adapte a posibilidades, si es posible pon por lo menos 3 ejemplos distintos para tener una idea y hacer un patron o utilizar otros metodos.
  #32 (permalink)  
Antiguo 12/06/2012, 13:49
 
Fecha de Ingreso: junio-2010
Ubicación: Buenos Aires, Capital Federal
Mensajes: 29
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Guardar valores de array en mysql

estos son casi todos los productos que pueden llegar a elegir.. te muestro como salen en el $_POST['test'];

Counter-Strike 1.6 1 70
San Andres: Multi-Player 1 50
Counter Strike: Source 1 80
ET WEB #2 1 40
ET VPS #6 1 400
ET DEDI #3 1 900
  #33 (permalink)  
Antiguo 12/06/2012, 17:42
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Guardar valores de array en mysql

Cita:
Iniciado por nettolz Ver Mensaje
estos son casi todos los productos que pueden llegar a elegir.. te muestro como salen en el $_POST['test'];

Counter-Strike 1.6 1 70
San Andres: Multi-Player 1 50
Counter Strike: Source 1 80
ET WEB #2 1 40
ET VPS #6 1 400
ET DEDI #3 1 900
Vas a tener que poner un separador entre items que se dan ejemplo (*) o /*/ o algún carácter que nunca vas a escribir como titulo.

Saludos
  #34 (permalink)  
Antiguo 12/06/2012, 18:12
Avatar de patriciomase  
Fecha de Ingreso: abril-2012
Ubicación: Mar del Plata
Mensajes: 323
Antigüedad: 12 años, 10 meses
Puntos: 34
Respuesta: Guardar valores de array en mysql

es lo mas lógico. separá las cadenas con caracteres raros, un $$ por ejemplo. Despues haces un explode y listo ya tenes el array, y si queres insertar los valores un implode y pones la "," de separador y listo, va como piña
  #35 (permalink)  
Antiguo 12/06/2012, 18:17
 
Fecha de Ingreso: junio-2010
Ubicación: Buenos Aires, Capital Federal
Mensajes: 29
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Guardar valores de array en mysql

Más o menos entiendo lo que me dicen, armo el $_POST['test']; con algún separador raro ej:

producto//cantidad//precio

después cuando lo quiero meter en la DB hago un explode a las // si es así diganme y si puede denme algún ejemplo de código por favor que lo entendería más fácil!

Gracias desde ya.
  #36 (permalink)  
Antiguo 12/06/2012, 18:34
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Guardar valores de array en mysql

nettolz estas en lo correcto, un ejemplo de código lo vas a poder encontrar en http://php.net/manual/es/function.explode.php

Saludos

Etiquetas: mysql
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 12:32.