Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NFelipeFL

[Resolvido] Exibir todos os valores em sequencia MYSQL + PHP.

Recommended Posts

Estou criando um sistema de newsletter e estou na parte da 'administração'.

 

Está salvando no sistema na tabela NEWSLETTER assim:

 

 

ID - EMAIL.

ex:

1 - emailteste@uol.com.br

2 - testar@hotmail.com

e assim por diante.

 

Como faço para listar em um campo os emails separados por virgulas?

 

Ex: emailteste@uol.com.br, testar@hotmail.com (sempre em sequencia... id 1, id 2, e assim por diante)

 

 

valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isto ?

C:\>mysql -u root -p
Enter password: ******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.16 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create schema mails ;
Query OK, 1 row affected (0.03 sec)

mysql> use mails ;
Database changed
mysql> create table mails (
   ->       mid smallint ( 6 ) not null primary key auto_increment ,
   ->      mail varchar ( 92 ) not null
   -> ) ;
Query OK, 0 rows affected (0.18 sec)

mysql> insert into mails ( mail ) values ( 'mail1@hotmail.com' ) , ( 'bla@gmail.com' ) , ( 'email@hotmail.com' ) ;
Query OK, 3 rows affected (0.03 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> select * from mails ;
+-----+-------------------+
| mid | mail              |
+-----+-------------------+
|   1 | mail1@hotmail.com |
|   2 | bla@gmail.com     |
|   3 | email@hotmail.com |
+-----+-------------------+
3 rows in set (0.00 sec)

mysql> select group_concat( mail ) from mails ;
+---------------------------------------------------+
| group_concat( mail )                              |
+---------------------------------------------------+
| mail1@hotmail.com,bla@gmail.com,email@hotmail.com |
+---------------------------------------------------+
1 row in set (0.00 sec)

mysql>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente isto.

 

Porém não estou conseguindo executar tal função :(

 

Edit:

 

$re = mysql_query("SELECT GROUP_CONCAT( email ORDER BY id ASC SEPARATOR ', ' ) FROM newsletter");

 

e

 

<?php
while($l = mysql_fetch_array($re)) {
echo "<tr><td>$re</td></tr>";
}	
@mysql_close();
?>	

 

Está retornando: Resource id #7

Compartilhar este post


Link para o post
Compartilhar em outros sites

Preste atenção no código que você fez, o que você está tentando imprimir ; $re contém uma resource e não os resultados que você espera, logo você atribuiu eles pra $l, então ... é coisa simples de resolver:

 

<?php
      // ...

      while ( $l = mysql_fetch_array ( $re ) ) {
             echo '<tr><td> ' , $l [ 0 ] , ' </td></tr>'
      }

      // ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.