Foros del Web » Programando para Internet » PHP »

Eliminar un caracter de un "ForEach"

Estas en el tema de Eliminar un caracter de un "ForEach" en el foro de PHP en Foros del Web. Planteo en concreto mi problema: > Tengo un "Foreach" de un formulario el cual agrega varios campos con JS, los campos son creados por el ...
  #1 (permalink)  
Antiguo 12/10/2009, 18:17
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Eliminar un caracter de un "ForEach"

Planteo en concreto mi problema:

> Tengo un "Foreach" de un formulario el cual agrega varios campos con JS, los campos son creados por el visitante, del 1 al infinito.

> Los campos son:


<input type="text" name="url[]" value="http://" />

> Mi problema es que cuando se hace POST, tengo mi "Foreach" y hace esto:

echo '"'.$url.'",';

es decir, [en html al ejecutarse]:

"http://etc.com/etc.ext", "http://etc.com/etc.ext", "http://etc.com/etc.ext", "http://etc.com/etc.ext",

> Se agregan TANTOS campos se hayan creado con sus respectivos valores, que en este caso son URL´s.

> Lo que necesito es ELIMINAR la ultima coma (,) que hace el "foreach".

Gracias por su atencion.
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
  #2 (permalink)  
Antiguo 12/10/2009, 19:19
Avatar de zaetoner  
Fecha de Ingreso: noviembre-2007
Ubicación: La ciudad de México
Mensajes: 607
Antigüedad: 17 años
Puntos: 30
Respuesta: Eliminar un caracter de un "ForEach"

pues en lugar de poner
Código PHP:
echo '"'.$url.'",'
PON
Código PHP:
echo $url 
y si necesitas la comillas
Código PHP:
?>"<?=$url?>"<? jajajajaja (broma)
:)
__________________
...

Última edición por zaetoner; 12/10/2009 a las 19:41
  #3 (permalink)  
Antiguo 12/10/2009, 19:37
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Eliminar un caracter de un "ForEach"

Cita:
Iniciado por zaetoner Ver Mensaje
pues en lugar de poner
Código PHP:
echo '"'.$url.'",'
PON
Código PHP:
echo $url 
y si necesitas la comillas
Código PHP:
?>"<?=$url?>"<?
NO pues el chiste es integrarlo a un código JS, el cual debe de tener las URL entre comillas y separados por comas, pero la última coma debe ser eliminada.

Por cierto, tu codigo:
Código PHP:
?>"<?=$url?>"<?
Jaja, que chistoso...
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
  #4 (permalink)  
Antiguo 12/10/2009, 19:48
Avatar de zaetoner  
Fecha de Ingreso: noviembre-2007
Ubicación: La ciudad de México
Mensajes: 607
Antigüedad: 17 años
Puntos: 30
Respuesta: Eliminar un caracter de un "ForEach"

enumera las salidas del foreach y compara el numero de input's con el foreach
$num_inputs;
$cuenta=0
foreach(){
if($cuenta==$num_inputs){
no pongo la ultima coma
}else{
pongo las comas
}

$cuenta++;
}
__________________
...
  #5 (permalink)  
Antiguo 12/10/2009, 21:20
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Eliminar un caracter de un "ForEach"

Eliminar la ultima coma

tan simple como esto Ejm I.

Código PHP:
Ver original
  1. $_POST['datos'] = "colombia,mexico,peru,venezuela,ecuador,Republica Dominicana,Purto Rico,";
  2.  
  3. echo substr($_POST['datos'],0,strlen($_POST['datos'])-1);


Ejm II sin coma.


Código php:
Ver original
  1. $_POST['datos'] = "colombia,mexico,peru,venezuela,ecuador,Republica Dominicana,Purto Rico,";
  2.  
  3. $l = split(",",$_POST['datos']);
  4.            
  5.             foreach($l as $row){
  6.             echo $row."<br>";
  7.             }
  #6 (permalink)  
Antiguo 12/10/2009, 22:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Eliminar un caracter de un "ForEach"

O mejor usa implode() y te evitas el foreach.

Saludos.
  #7 (permalink)  
Antiguo 13/10/2009, 18:29
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Eliminar un caracter de un "ForEach"

Listo, resuelto!

Gracias GatorV

Y a los demás tambien gracias, estoy seguro de que funciona igual.

Pongo el código que salió por si alguien lo llega a buscar:

Ejemplo:

Cita:
$mis_variables = implode('","', ($_POST['mis_variables']));
echo '"'.$mis_variables.'"
';
esto imprime en la página, por ejemplo:

"variable 1","variable 2","variable 3","variable 4"

Aclaro que es sólo para POST en un formulario con arrays [ mas de 1 valor con el mismo nombre, ejemplo: name="ejemplo[]" ]
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
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 13:06.