Foros del Web » Programando para Internet » PHP »

quitar ultimo caracter de una cadena

Estas en el tema de quitar ultimo caracter de una cadena en el foro de PHP en Foros del Web. Hola muchachos, les comento que tengo una consulta la cual me devuelve muchos correos los cuales separo por coma, pero el ultimo me sale con ...
  #1 (permalink)  
Antiguo 07/04/2010, 10:14
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
quitar ultimo caracter de una cadena

Hola muchachos, les comento que tengo una consulta la cual me devuelve muchos correos los cuales separo por coma, pero el ultimo me sale con una coma demás, mi pregunta es como puedo quitar este ultimo carácter a toda una cadena traída por while...

Código PHP:
Ver original
  1. <?php
  2. $sql = mysql_query("SELECT * FROM mitabla WHERE id = '$_POST[id]'");
  3. while($datos = mysql_fetch_array($sql))
  4. {
  5. $cad = "$datos[correos], ";
  6. /*
  7. $cad = "$datos[correos]";
  8. $cad = substr ($cad, 0, -1);
  9. */
  10. echo $cad ;
  11. }
  12. ?>

como ven he probado con substr, pero no resulta :/ me corta todos los correos.
la idea es que si me devuelve

[email protected], [email protected], [email protected],

el echo imprima

[email protected], [email protected], [email protected]

alguna idea?

Saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #2 (permalink)  
Antiguo 07/04/2010, 10:16
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: quitar ultimo caracter de una cadena

Código PHP:
Ver original
  1. <?php
  2. $sql = mysql_query("SELECT * FROM mitabla WHERE id = '$_POST[id]'");
  3. while($datos = mysql_fetch_array($sql))
  4. {
  5. $cad[] = "$datos[correos]";
  6. }
  7. echo implode(",", $cad);
  8. ?>

esto no seria mejor ?
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 07/04/2010, 10:21
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: quitar ultimo caracter de una cadena

probare tu solucion aunque ya lo solucione asi.

Código PHP:
Ver original
  1. $coma = '';
  2. while($datos = mysql_fetch_array($sql))
  3. {
  4. echo $coma . "$datos[correos]";
  5. $coma = ', ';
  6. }

seguro eso de poner los echos afuera no trae solo un resultado?

Editado : muchas gracias, también funciona poniéndola en un arreglo no se me había ocurrido :P saludos.
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #4 (permalink)  
Antiguo 07/04/2010, 10:30
Avatar de mike28gt  
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 14
Respuesta: quitar ultimo caracter de una cadena

Se vale hacer esto?

Código PHP:
<?php
$sql 
mysql_query("SELECT * FROM mitabla WHERE id = '$_POST[id]'");

$datos mysql_fetch_array($sql)

$cad "";

while(
$datos mysql_fetch_array($sql))
{
     
$cad $cad ."$datos[correos], ";
}

$cad substr ($cad0, -1);
echo 
$cad;
?>

Última edición por mike28gt; 07/04/2010 a las 10:36
  #5 (permalink)  
Antiguo 07/04/2010, 10:37
Avatar de mike28gt  
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 14
Respuesta: quitar ultimo caracter de una cadena

Cita:
Iniciado por Hidek1 Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2. $sql = mysql_query("SELECT * FROM mitabla WHERE id = '$_POST[id]'");
  3. while($datos = mysql_fetch_array($sql))
  4. {
  5. $cad[] = "$datos[correos]";
  6. }
  7. echo implode(",", $cad);
  8. ?>

esto no seria mejor ?
Me gusta mas esta solucion :p jeje

Etiquetas: quitar, ultimo, caracteres, cadenas
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 14:34.