Jump to content

Ficheiros


ricardo_1977
 Share

Recommended Posts

Boas,

eu tenho uma BD em mysql e estou a fazer algo como insercao,listagem,remocao,etc.

quando vou listar a BD aparece-me tudo desformatado do tipo:

Id    Data  Servico  Comentario  Total

1  2009-10-15        ccc          ccc      12.5

como posso por a saida formatada(estou a utilizar o html para mostrar).

como posso passar os dados para por ex excel?

como ler depois de excel para a BD?

agradecia ajuda

Link to comment
Share on other sites

E que código estás a utilizar para devolver a listagem de conteúdos da base de dados? Quanto à questão do Excel, acho que podes resolver usando ficheiros no formato CSV (comma separated values).

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

tou a utilizar html.aqui vai o codigo:

listar.php:

<html>
<head>
<title> listar a base de dados</title>

<meta http-equiv="Content-Type" content = "text/html; charset=iso-8859-1">
</head>
<body>
<?php
        //conecta á base de dados
        require("conectdb.php");

        //executa a query
        $query = "SELECT *FROM servico";
        $res = mysql_query($query);

        //conta o numero de registos
        $num_reg = mysql_num_rows($res);
        //TESTE PARA SABER SE TRAZ RESULTADOS
       //echo '<script type="text/javascript">alert(\'Linhas na Base de Dados '.$num_reg.'\');</script>';

        //monta uma tabela para organizar os dados
       echo '<table boder="0" cellpadding="1" cellspacing="1">';

        //cria 1 ciclo for para a exebição dos dados
echo "<pre>ID  Data    Hora     Servico     Comentario     Total</pre>";
        while($mostra = mysql_fetch_array($res)) {
        echo"<tr>";

        //exibe os resultados

        echo "<td>".$mostra[id]."</td>";
        echo "<td>".$mostra[data]."</td>";
echo "<td>".$mostra[servico]."</td>";
echo "<td>".$mostra[comentario]."</td>";
echo "<td>".$mostra[total]."</td>";
//echo "<td>".$mostra[data_entrada]."</td>";
        echo "</tr>";
        }
       

        //encerra a tabela
        echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
        //mysql_close($db);

?>
</body>

listar.html:

<html>
<head>
<title> Formulario para inserir na bd </title>
<meta http-equiv = "Content-Type" content = "text/html; charset = iso-8859-1">
</head>
<body BGCOLOR = "#CDCDCD">
<form action = "listarS.php" method = "get" name = "servico" id = "servico">
<br><br><td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<input type = "submit" name = "Submit" value = "Ver dados">
</div>
</td>
</form>
<form action = "bd.html" method = "get" name = "Produto" id = "Produto">
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<br><input type = "submit" name = "Submit" value = "Voltar">
</div>
</td>
</form>
</body>
</html>

APARTE: Não te esqueças de usar Geshi. 🙂

Link to comment
Share on other sites

Ele não te dá erros, o ficheiro PHP?

Tenta assim:

<meta http-equiv="Content-Type" content = "text/html; charset=iso-8859-1">
</head>
<body>
<?php
        //conecta á base de dados
        require("conectdb.php");

        //executa a query
        $query = "SELECT *FROM servico";
        $res = mysql_query($query);

        //conta o numero de registos
        $num_reg = mysql_num_rows($res);
        //TESTE PARA SABER SE TRAZ RESULTADOS
       //echo '<script type="text/javascript">alert(\'Linhas na Base de Dados '.$num_reg.'\');</script>';

        //monta uma tabela para organizar os dados
       echo '<table boder="0" cellpadding="1" cellspacing="1">';

        //cria 1 ciclo for para a exebição dos dados
        echo "<pre>ID  Data    Hora     Servico     Comentario     Total</pre>";
        while($mostra = mysql_fetch_array($res)) {
        echo"<tr>";

        //exibe os resultados

        echo "<td>".$mostra["id"]."</td>";
        echo "<td>".$mostra["data"]."</td>";
        echo "<td>".$mostra["servico"]."</td>";
        echo "<td>".$mostra["comentario"]."</td>";
        echo "<td>".$mostra["total"]."</td>";
        //echo "<td>".$mostra["data_entrada"]."</td>";
        echo "</tr>";
        }
       

        //encerra a tabela
        echo "</table>";
        echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
        //mysql_close($db);

?>
</body>
</html>

Mas não percebi a tua primeira dúvida.  🙂

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Podes usar os cabeçalhos das tabelas em html para imprimires os títulos da tua tabela. Em vez de:

echo "<pre>ID  Data    Hora     Servico     Comentario     Total</pre>";

usa

echo "<tr><th>ID</th><th>Data</th><th>Hora</th><th>Servico</th><th>Comentario</th><th>Total</th></tr>";

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Não estava a perceber a primeira dúvida, mas agora li o post do softclean e já percebi.

Faz o que o softclean te disse.

Só queria acrescentar uma coisa: para usares as funções de CSV, tens de a função fopen e fclose, como podes ver nos exemplos. 🙂

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

agora aparece mais formatado mas precisava de espacos.aqui vai como aparece:

ID Data                        Servico Comentario Total

1 2009-10-15 21:20:38lavar    jj                12.5

eu queria algo do genero:

ID                Data                        Servico        Comentario    Total

1      2009-10-15 21:20:38            lavar                jj              12.5

ja agora tenho 1 metodo de pesquisa e nao me da resultado nenhum.

estou a pesquisar numa tabela de clientes e da-me sempre resultado zero.

aqui vai o codigo:

procurar.php:

<?php
//recebe o nº serie do formulario
$id = $_POST['Id'];

//conectar á base de dados
include("conectdb.php");

//monta a query de procura inserindo o nº de serie como parametro
$query = "SELECT * FROM clientes where id LIKE '%'$id'%'; ";

//executa a query
$res=mysql_query($query);

//conta o nº de registos encontrados pela pesquisa
$num_reg = mysql_num_rows($res);
echo '<script type="text/javascript">alert(\'Registos encontrados '.$num_reg.'\');</script>';

//monta uma tabela para organizar os dados
echo "<table border='0' cellpadding='1' cellspacing='1'>";

//cria ciclo for para exibir os dados
while($mostra = mysql_fetch_array($res)){
echo "<tr>";

//exibe os resultados
echo "<td> $mostra[$id] </td>";
echo "<td> $mostra[$nome] </td>";
echo "<td> $mostra[$morada] </td>";
echo "<td> $mostra[$contacto] </td>";
echo "<td> $mostra[$data_nascimento] </td>";
echo "<td> $mostra[$data_entrada] </td>";
echo "</tr>";
}

//encerra a tabela
echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
//encerra a conexao
//mysql_close($db);
?>

procurar.html:

<html>
<head>
<title> Formulario para procurar na bd </title>
<meta http-equiv = "Content-Type" content = "text/html; charset = iso-8859-1">
</head>
<body BGCOLOR = "#CDCDCD">
<form action = "procurar.php" method = "get" name = "clientes" id = "clientes">
<table width = "450" border = "0" cellspacing = "0" cellpadding = "3">
<tr>
<br><td width = "111"><div align = "right"> Id:</div></td>
<td width = "339"> <input name = "id" type = "text" id = "id" size = "30"></td>
</tr>
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<input type = "submit" name = "Submit" value = "Procurar">
</div>
</td>
</tr>
</table>
</form>
/*<form action = "bd.html" method = "get" name = "Produto" id = "Produto">
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<br><input type = "submit" name = "Submit" value = "Voltar">
</div>
</td>
</tr>
</form>*/
</body>
</html>

o que esta mal?

APARTE: Não te esqueças de usar Geshi. 🙂

Link to comment
Share on other sites

<html>
<head>
<title> Formulario para procurar na bd </title>
<meta http-equiv = "Content-Type" content = "text/html; charset = iso-8859-1">
<style type="text/css">
th {
padding-right: 5px;
padding-left: 5px;
}
td {
padding-right: 5px;
padding-left: 5px;
}

table {
text-align: center;
}
</style>
</head>
<body BGCOLOR = "#CDCDCD">
<form action = "procurar.php" method = "get" name = "clientes" id = "clientes">
<table width = "450" border = "0" cellspacing = "0" cellpadding = "3">
<tr>
<br><td width = "111"><div align = "right"> Id:</div></td>
<td width = "339"> <input name = "id" type = "text" id = "id" size = "30"></td>
</tr>
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<input type = "submit" name = "Submit" value = "Procurar">
</div>
</td>
</tr>
</table>
</form>
/*<form action = "bd.html" method = "get" name = "Produto" id = "Produto">
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<br><input type = "submit" name = "Submit" value = "Voltar">
</div>
</td>
</tr>
</form>*/
</body>
</html>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Tenta antes assim:

<?php
//recebe o nº serie do formulario
$id = $_POST['id'];

//conectar á base de dados
include("conectdb.php");

//monta a query de procura inserindo o nº de serie como parametro
$query = "SELECT * FROM clientes where id LIKE '%'$id'%'; ";

//executa a query
$res=mysql_query($query);

//conta o nº de registos encontrados pela pesquisa
$num_reg = mysql_num_rows($res);
echo '<script type="text/javascript">alert(\'Registos encontrados '.$num_reg.'\');</script>';

//monta uma tabela para organizar os dados
echo "<table border='0' cellpadding='1' cellspacing='1'>";

//cria ciclo for para exibir os dados
while($mostra = mysql_fetch_array($res)){
echo "<tr>";

//exibe os resultados
echo "<td> $mostra[$id] </td>";
echo "<td> $mostra[$nome] </td>";
echo "<td> $mostra[$morada] </td>";
echo "<td> $mostra[$contacto] </td>";
echo "<td> $mostra[$data_nascimento] </td>";
echo "<td> $mostra[$data_entrada] </td>";
echo "</tr>";
}

//encerra a tabela
echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
//encerra a conexao
//mysql_close($db);
?>

Quanto à segunda dúvida de formatação, podes mostrar o HTML que o browser gera? O Código-Fonte. 😛

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

quanto á pesquisa continua a dar resultado zero elementos encontrados.

quanto á formatação aqui vai o codigo fonte:

<html>
<head>
<title> listar a base de dados</title>

<meta http-equiv="Content-Type" content = "text/html; charset=iso-8859-1">
</head>
<body>
<table boder="0" cellpadding="1" cellspacing="1"><tr><th>ID</th><th>Data</th><th>Servico</th><th>Comentario</th><th>Total</th></tr><tr><td>1</td><td>2009-10-15 21:20:38</td><td>lavar</td><td>jj</td><td>12.5</td></tr></table><a href = 'javascript:history.back() '> VOLTAR</a></body>
Link to comment
Share on other sites

Erro meu. Desculpa. Coloquei no ficheiro errado. 😛

Tenta assim.

<?php
//recebe o nº serie do formulario
$id = $_POST['id'];

//conectar á base de dados
include("conectdb.php");

//monta a query de procura inserindo o nº de serie como parametro
$query = "SELECT * FROM clientes where id LIKE '%'$id'%'; ";

//executa a query
$res=mysql_query($query);
echo "<html><head>";
echo "<style type="text/css">
th {
padding-right: 5px;
padding-left: 5px;
}
td {
padding-right: 5px;
padding-left: 5px;
}

table {
text-align: center;
}
</style>";
//conta o nº de registos encontrados pela pesquisa
$num_reg = mysql_num_rows($res);
echo '<script type="text/javascript">alert(\'Registos encontrados '.$num_reg.'\');</script>';
echo "</head><body>";
//monta uma tabela para organizar os dados
echo "<table border='0' cellpadding='1' cellspacing='1'>";

//cria ciclo for para exibir os dados
while($mostra = mysql_fetch_array($res)){
echo "<tr>";

//exibe os resultados
echo "<td> $mostra[$id] </td>";
echo "<td> $mostra[$nome] </td>";
echo "<td> $mostra[$morada] </td>";
echo "<td> $mostra[$contacto] </td>";
echo "<td> $mostra[$data_nascimento] </td>";
echo "<td> $mostra[$data_entrada] </td>";
echo "</tr>";
}

//encerra a tabela
echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
//encerra a conexao
//mysql_close($db);
echo "</body></html>";
?>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

o problema é que aqui continua a não me dar dados nenhuns.nao sei se me fiz explicar mas aqui vai de novo:eu tenho uma tabela clientes onde 1 dos campos é o id que é inteiro com auto increment e chave primaria.depois eu quero pesquisar na minha tabela por um desses elementos e quero que a tabela me devolva todos os dados desse elemento.por ex se pesquisar por:1 deveria dar:

1 ricardo braga 2009-10-15 1977-06-12

mas ou nao me da nada ou me da os resultados todos(todos os id's k tenho).

volto a por o codigo que tenho:

procurar.html:

<html>
<head>
<title> Formulario para procurar na bd </title>
<meta http-equiv = "Content-Type" action = "post" content = "text/html; charset = iso-8859-1">
</head>
<body BGCOLOR = "#CDCDCD">
<form action = "procurar.php" method = "get" name = "clientes" id = "clientes">
<table width = "450" border = "0" cellspacing = "0" cellpadding = "3">
<tr>
<br><td width = "111"><div align = "right"> Id:</div></td>
<td width = "339"> <input name = "id" type = "int" id = "id" size = "30"></td>
</tr>
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<input type = "submit" name = "Submit" value = "Procurar">
</div>
</td>
</tr>
</table>
</form>
<form action = "bd.html" method = "get" name = "Produto" id = "Produto">
<tr>
<td height = "29" colspan = "2" valign = "top"><div align = "center"> 
<br><input type = "submit" name = "Submit" value = "Voltar">
</div>
</td>
</tr>
</form>

procurar.php:

<?php
//recebe o id do procurar.html
$id = $_POST['id'];

//conectar á base de dados
include("conectdb.php");
echo "<table>";
//monta a query de procura inserindo o id como parametro
$re= "SELECT * FROM clientes where id LIKE '%'$id'%'; ";
$result = mysql_query($re);

//conta o nº de registos encontrados pela pesquisa
$num_reg = mysql_num_rows($result);
echo '<script type="text/javascript">alert(\'Registos encontrados '.$num_reg.'\');</script>';

//monta uma tabela para organizar os dados
//echo "<table border='0' cellpadding='1' cellspacing='1'>";

//cria ciclo for para exibir os dados
while($dados= mysql_fetch_assoc($result)) {
?>
<tr><td>ID:</td>
<td><?=$dados['id'];?></td></TR>
<td>Nome:</td>
<td><?=$dados['nome'];?></td></TR>
<td>Morada</td>
<td><?=$dados['morada'];?></td></TR>
<td>Contacto:</td>
<td><?=$dados['contacto'];?></td></TR>
<td>Data de Nascimento:</td>
<td><?=$dados['data_nascimento'];?></td></TR>
<td>Data de Entrada::</td>
<td><?=$dados['data_entrada'];?></td></TR>
<td>--------------------</td></TR>
<?php
}
//encerra a tabela
echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
//encerra a conexao
mysql_close($db);
?>

agradeço a ajuda

@ricardo_1977, começa a usar Geshi, para o post ficar com um aspecto mais apresentável. 😛

Link to comment
Share on other sites

Tenta antes assim:

<?php
//recebe o id do procurar.html
$id = $_POST['id'];

//conectar á base de dados
include("conectdb.php");
echo "<table>";
//monta a query de procura inserindo o id como parametro
$re= "SELECT * FROM clientes where id LIKE '%$id%'";
$result = mysql_query($re);

//conta o nº de registos encontrados pela pesquisa
$num_reg = mysql_num_rows($result);
echo '<script type="text/javascript">alert(\'Registos encontrados '.$num_reg.'\');</script>';

//monta uma tabela para organizar os dados
//echo "<table border='0' cellpadding='1' cellspacing='1'>";

//cria ciclo for para exibir os dados
while($dados= mysql_fetch_assoc($result)) {
?>
<tr><td>ID:</td>
<td><?=$dados['id'];?></td></TR>
<td>Nome:</td>
<td><?=$dados['nome'];?></td></TR>
<td>Morada</td>
<td><?=$dados['morada'];?></td></TR>
<td>Contacto:</td>
<td><?=$dados['contacto'];?></td></TR>
<td>Data de Nascimento:</td>
<td><?=$dados['data_nascimento'];?></td></TR>
<td>Data de Entrada::</td>
<td><?=$dados['data_entrada'];?></td></TR>
<td>--------------------</td></TR>
<?php
}
//encerra a tabela
echo "</table>";
echo "<a href = 'javascript:history.back() '> VOLTAR</a>";
        //encerrar a conexao
//encerra a conexao
mysql_close($db);
?>

Não tenho a certeza, porque não costumo usar o LIKE querys, mas uma pequena busca pelo oogle e acho que encontrei o erro na tua query. 😛

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.