Bom dia, ontem, proximo a meia noite postei sobre o mesmo assunto, mas o topico sumiu, hehehe.
Vou pastar novamente, mas se o problema for falta de talento meu para efetuar a busca, peço por favor aos moderadores para excluir este topico.
Segui o tutorial do Chico Goes para listar membros e funcionou perfeitamnente.
Preciso adicionar apenas mais um campo na pesquisa, cpf.
Tentei de varias maneiras, porem, sempre retornou erro.
O tutorial é este:
kb.php?a=81&hilit=listar
São apenas dois arquivos:
gerar.php
Código: Selecionar todos
<?
/***********************************************************************************
SCRIPT......: Gera um arquivo XML listando membros do Fórum
AUTOR ......: Chico Gois
DATA .......: 22/06/2005
/***********************************************************************************/
//CONECTA AO BANCO DE DADOS (Substitua aonde indicado)
$conn = @mysql_connect("localhost", "nome_usuario","senha")
or die("ERRO NA CONEXÃO");
//SELECIONA A BASE DE DADOS A SER UTILIZADA (Substitua aonde indicado)
$db = @mysql_select_db("nome_BD", $conn)
or die("ERRO NA SELEÇÃO DA BASE DE DADOS");
//SQL
$sql = @mysql_query("
SELECT A.user_id, A.username, A.user_email FROM phpbb_users A")
or die("ERRO NO SQL");
//TOTAL DE LINHAS AFETADAS PELA CONSULTA
$row = mysql_num_rows($sql);
//VERIFICA SE A PESQUISA RETORNOU ALGUMA LINHA
if($row > 0) {
//ARQUIVO
$arquivo = "membros.xml";
//ABRE O ARQUIVO(SE NÃO EXISTIR, CRIA)
$ponteiro = fopen($arquivo, "w");
//ESCREVE NO ARQUIVO XML
fwrite($ponteiro, "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n");
fwrite($ponteiro, "<usuarios>\r\n");
for($i=0; $i<$row; $i++) {
//PEGA OS DADOS DO SQL
$id = mysql_result($sql,$i,"A.user_id");
$nome = mysql_result($sql,$i,"A.username");
$email = mysql_result($sql,$i,"A.user_email");
//MONTA AS TAGS DO XML
$conteudo = "<relatorio>\r\n";
$conteudo .= "<id>$id</id>\r\n";
$conteudo .= "<nome>$nome</nome>\r\n";
$conteudo .= "<email>$email</email>\r\n";
$conteudo .= "</relatorio>\r\n";
//ESCREVE NO ARQUIVO
fwrite($ponteiro, $conteudo);
}//FECHA FOR
//FECHA A TAG AGENDA
fwrite($ponteiro, "</usuarios>");
//FECHA O ARQUIVO
fclose($ponteiro);
//MENSAGEM
echo "<h2><font face=Verdana>Listando usuários do fórum usando XML</h2><br>";
echo "O arquivo <b>".$arquivo."</b> foi gerado com SUCESSO !<br><br>";
echo "Basta abrir o arquivo <b>lista.php</b> no navegador" ;
}//FECHA IF($row)
?>Código: Selecionar todos
<?
/***********************************************************************************
SCRIPT......: Exibe uma listagem de todos os usuarios do fórum
AUTOR ......: Chico Gois
DATA .......: 22/06/2005
/***********************************************************************************/
//FUNÇÃO DA TAG INICIAL DO ARQUIVO XML
function FuncInicial($parser, $elemento) {
if($elemento == "USUARIOS") {
echo "<table cellpading=0 cellspacing=0 border=0 width=50%>";
echo "<tr><td bgcolor=#7B9AB5 align=center>";
echo "<font face=Verdana size=2 color=FFFFFF><b>Listagem de usuários fórum phpBB";
}
elseif($elemento == "RELATORIO")
echo "<tr><td height=20>";
elseif($elemento == "ID") {
echo "<tr><td bgcolor=#CCCC00>";
echo "<font face=Verdana size=2><b>";
}
elseif($elemento == "NOME") {
echo "<tr><td bgcolor=#CCCC99>";
echo "<font face=Verdana size=2><b>";
}
elseif($elemento == "EMAIL") {
echo "<tr><td bgcolor=#CCCCCC>";
echo "<font face=Verdana size=2>";
}
}//FECHA FUNCTION FUNCINICIAL
//FUNÇÃO PARA EXIBIR OS DADOS DO DOCUMENTO XML
function FuncDados($parser, $dados) {
echo $dados;
}//FECHA FUNCTION FUNCINICIAL
//FUNÇÃO DA TAG INICIAL DO DOCUEMENTO XML
function FuncFinal($parser, $elemento) {
if($elemento == "USUARIOS")
echo "</b></font></td</tr></table>";
elseif($elemento == "RELATORIO")
echo "</td></tr>";
elseif($elemento == "ID")
echo "</b></font></td></tr>";
elseif($elemento == "NOME")
echo "</font></td></tr>";
elseif($elemento == "EMAIL")
echo "</font></td></tr>";
}//FECHA FUNCTION FUNCFINAL
//CRIA O PARSER XML
$parser = xml_parser_create();
//DEFINE AS FUNÇÕES
xml_set_element_handler($parser, "FuncInicial", "FuncFinal");
xml_set_character_data_handler($parser, "FuncDados");
//ABRE O ARQUIVO XML PARA LEITURA
$ponteiro = fopen("membros.xml", "r");
//INICIA A ANÁLISE DO DOCUMENTO XML
while($dados = fread($ponteiro, 4096)) {
//INICIA A ANÁLISE DO DOCUMENTO XML
xml_parse($parser, $dados);
}//FECHA WHILE
//LIBERA A MEMÓRIA USADA PELO PARSER
xml_parser_free($parser);
?>Código: Selecionar todos
SELECT *
FROM `bancodedados`.`phpbb_profile_fields`
WHERE (
`field_id` LIKE 'cpf'
OR `field_name` LIKE 'cpf'
OR `field_type` LIKE 'cpf'
OR `field_ident` LIKE 'cpf'
OR `field_length` LIKE 'cpf'
OR `field_minlen` LIKE 'cpf'
OR `field_maxlen` LIKE 'cpf'
OR `field_novalue` LIKE 'cpf'
OR `field_default_value` LIKE 'cpf'
OR `field_validation` LIKE 'cpf'
OR `field_required` LIKE 'cpf'
OR `field_show_on_reg` LIKE 'cpf'
OR `field_show_on_vt` LIKE 'cpf'
OR `field_show_profile` LIKE 'cpf'
OR `field_hide` LIKE 'cpf'
OR `field_no_view` LIKE 'cpf'
OR `field_active` LIKE 'cpf'
OR `field_order` LIKE 'cpf'
)
LIMIT 0 , 30Se der pra fazer a busca em todos os campos do perfil do membro, sem problemas.
Acredito que seja esta a tabela:
phpbb_profile_fields
Bom, acho que consegui explicar minha duvida, mas qualquer coisa estou por aqui.
Obrigado desde já.
