Foros del Web » Programando para Internet » PHP »

PHP Función explode

Estas en el tema de PHP Función explode en el foro de PHP en Foros del Web. Hola a todos, he leído la forma de utilizar la función explode de PHP. La estructura es esta: <?php $pizza = "piece1 piece2 piece3 piece4 ...
  #1 (permalink)  
Antiguo 08/11/2009, 16:28
 
Fecha de Ingreso: octubre-2009
Mensajes: 14
Antigüedad: 14 años, 6 meses
Puntos: 0
Pregunta PHP Función explode

Hola a todos, he leído la forma de utilizar la función explode de PHP. La estructura es esta:

<?php
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
?>

Hasta ahí lo entiendo bien, pero ¿cómo hago si quiero obtener la cadena desde el valor de un input?

Lo que hice fué esto (pero no funciona, no guarda nada en la base de datos):

<input id="Text3" name="buscafoto1" type="file" value="" /></td>
<?php
$ruta="$buscafoto1"; //esta es la ruta C:\AppServ\www\sys\fotos\DSC01637.JPG
$foto=explode('\\', $ruta,5); ?>
<input id="Text4" name="foto1" type="text" value="<?php echo $foto[4];?>" />

Porque quiero que la cadena sea la ruta obtenida con el input tipo file, que la corte en 5 pedazos y que en la caja de texto me almacene solo la 5ª parte...

¿Alguna sugerencia? Gracias (",)

Última edición por tilingue; 08/11/2009 a las 16:31 Razón: Faltaba especificar
  #2 (permalink)  
Antiguo 08/11/2009, 16:39
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: PHP Función explode

Pusiste esto

$foto=explode('\\', $ruta,5);

Seguro que son dos \\ ??
  #3 (permalink)  
Antiguo 08/11/2009, 16:41
 
Fecha de Ingreso: octubre-2009
Mensajes: 14
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: PHP Función explode

Si porque la diagonal inversa es un caracter especial, tengo que poner dos para que las tome como una sola \\

Saludos, gracias por responder Vun!
  #4 (permalink)  
Antiguo 08/11/2009, 16:48
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: PHP Función explode

A mi esto me funciona perfectamente:

$ruta="C:\AppServ\www\sys\fotos\DSC01637.JPG";
$foto=explode('\\', $ruta,5);
echo $foto[4];

Me imprime DSC01637.JPG, asi que el error debe estar por otra parte...... pega el codigo entero del formulario que veamos
  #5 (permalink)  
Antiguo 08/11/2009, 16:55
 
Fecha de Ingreso: octubre-2009
Mensajes: 14
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: PHP Función explode

Si, a mi tambien me funciona perfecto, pero si yo escribo la ruta, lo que quiero es que la ruta me la jale de un input tipo file (de los del botón 'examinar')..

<input name="buscafoto1" type="file" value="" />
<?php
$ruta="$buscafoto1";
$foto=explode('\\', $ruta); ?>
<input name="foto1" type="text" value="<?php echo $foto[5];?>" />


El valor de la caja de texto llamada 'foto1' es lo que quiero almacenar en la base de datos
  #6 (permalink)  
Antiguo 08/11/2009, 17:43
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: PHP Función explode

buscando por google.........

Prueba con esta linea

$ruta=$_FILES['buscafoto1']['name'] ;
  #7 (permalink)  
Antiguo 08/11/2009, 17:55
 
Fecha de Ingreso: octubre-2009
Mensajes: 14
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: PHP Función explode

Ayy desde las 12 del día estoy con el mismo problema.. no se cual es mi error, no me guarda nada, hice lo siguiente ahora, ya no quiero partir la ruta en 5 partes, ahora solo quiero extraer el nombre del archivo con su extensión para posteriormente concatenarlo con otra palabra:

<?php
$ruta=$_FILES['buscafoto1']['name'];
$foto=explode('\\', $ruta);
$cadena="fotos\\";
$imagen = $cadena.$foto[5];?>
<input id="Text4" name="foto1" type="text" value="<?php echo $imagen;?>" />

Pero lo unico que me guarda es la cadena fotos\ no le suma el nombre de la imagen..

Lo que quisiera es que me guardara esto: fotos\imagen.jpg

Ya me duele la cabeza, vi un código pero es muy complejo para mi, algo me dice que puede serme útil pero no le entiendo nada.

Este es el link:

http://www.propiedadprivada.com/lab/phproute/

Gracias por tus respuestas Vun.. y por darme un ratito de tu tiempo =)
  #8 (permalink)  
Antiguo 08/11/2009, 20:42
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: PHP Función explode

jeje, venga que lo conseguimos xD, prueba esto, creo que tiene que funcionar, lo saque del codigo de una web propia mia:

$ruta=$HTTP_POST_FILES['buscafoto1']['name'];


Y añade un echo $ruta; justo despues, para salir de dudas si pilla bien el valor o no
  #9 (permalink)  
Antiguo 10/11/2009, 19:53
 
Fecha de Ingreso: octubre-2009
Mensajes: 14
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: PHP Función explode

Hola, gracias por las respuestas, ya lo pude hacer, tenias razon, el error estaba en que queria enviar los datos con $_POST.. y lo unico que tenia que hacer era enviarlos con $_FILES, muchas gracias por tu apoyo Vun ¡Saludos!
  #10 (permalink)  
Antiguo 10/11/2009, 22:06
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: PHP Función explode

Nada hombre, pa esos estamos

saludos y buen karma jeje
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 15:35.