Ir para conteúdo

POWERED BY:

Arquivado

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

bcs_ptx

SELECT entre datas

Recommended Posts

Bom dia gurizada, seguinte estou fazendo aqui uma consulta, mas que na consulta de para consultar pelo nome e pela data de cadastro...

 

meus campos são os seguintes...

 

id

nome

data_inicio

data_final

 

tipo, se a pessoa escrever só o nome apareça os nomes cadastrados, mas se colocar só a data apareça os cadastros nesse periodo.exemplo

 

01/01/2000 á 30/01/2000 - cadastros efetuados entre essas datas

 

se alguem puder me ajudar agradeço muito, oque eu fiz foi isso, mas não esta dando certo

 

 

select * from teste where (between '" & data_inicio& "' and '" & data_final& "')

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara não sei se é isso que eu entendi, mais vou te falar o que eu entendi.

Você quer selecionar todos os cadastros efetuado em um período, se for isso olha acho que a estrutura da sua tabela esta errada, na minha visão ficaria assim.

 

id

nome

data_cadastro

 

ai sim você faria o select desse jeito.

 

select * from TABELA where data_cadastro between '" & data_inicio & "' and '" & data_final & "'

 

Onde data_inicio e data_final vai ser uma variável onde a pessoa que irá realizar a pesquisa irá digitar

Ve se é isso que você quer, se não for manda ai. flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim cara seria isso ai mesmo, mas dai como eu criaria essas variaveis? meu código esta assim...

 

 

<?php

$hostdb = "localhost";//

$userdb = "root";//

$passdb = "";//

$tabledb = "aprendendo";

 

$conecta = mysql_connect($hostdb, $userdb, $passdb) or die (mysql_error());

@mysql_select_db($tabledb, $conecta) or die ("Erro ao conectar com o banco de dados");

 

 

 

$busca_query = mysql_query("select * from teste where data_cadastro between '" & data_inicio & "' and '" & data_final & "'")or die(mysql_error());

 

 

while ($dados = mysql_fetch_array($busca_query)) {

echo "<table>

<tr>

<td>Nome do Cadastro: $dados[nome] </td>

<br>

<td>Data: $dados[data_inicio] </td>

</tr>

</table>

";

echo "<hr>";

}

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim cara seria isso ai mesmo, mas dai como eu criaria essas variaveis? meu código esta assim...

 

 

<?php

$hostdb = "localhost";//

$userdb = "root";//

$passdb = "";//

$tabledb = "aprendendo";

 

$conecta = mysql_connect($hostdb, $userdb, $passdb) or die (mysql_error());

@mysql_select_db($tabledb, $conecta) or die ("Erro ao conectar com o banco de dados");

 

 

 

$busca_query = mysql_query("select * from teste where data_cadastro between '" & data_inicio & "' and '" & data_final & "'")or die(mysql_error());

 

 

while ($dados = mysql_fetch_array($busca_query)) {

echo "<table>

<tr>

<td>Nome do Cadastro: $dados[nome] </td>

<br>

<td>Data: $dados[data_inicio] </td>

</tr>

</table>

";

echo "<hr>";

}

 

?>

 

 

 

Não po, é o seguinte as variaveis que eu te falei vai ser os campos da consulta que a pessoa irá realizar.

Por exemplo:

Você terá que adiconar mais dois campos na sua página.

que é onde você irá digitar a data_inicio e data_final e passar como parametro no select, Entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim cara eu entendi, mas sou novo nessa área e estou ainda perdido oque eu tenho de códigos é isso ai embaixo, mas eu não sei onde mudar ou criar e como...por isso pedi ajufa para alguem me mostrar como se faz...mas obrigado ai pela força

 

<form action="codigo_busca.php" method="POST">

<table>

<tr>

<td>Nome:</td>

<td><input type="text" name="data_cadastro" id="data_cadastro"></td>

<td>data_inicio:</td>

<td><input type="text" name="data_inicio" id="data_inicio"></td>

<td>data_final:</td>

<td><input type="text" name="data_final" id="data_final"></td>

<td><input type="submit" value="busca"></td>

</tr>

</table>

</form>

 

 

 

 

<?php

$hostdb = "localhost";//

$userdb = "root";//

$passdb = "";//

$tabledb = "aprendendo";

 

$conecta = mysql_connect($hostdb, $userdb, $passdb) or die (mysql_error());

@mysql_select_db($tabledb, $conecta) or die ("Erro ao conectar com o banco de dados");

 

 

 

$busca_query = mysql_query("select * from teste where data_cadastro between '" & data_inicio & "' and '" & data_final & "'")or die(mysql_error());

 

 

while ($dados = mysql_fetch_array($busca_query)) {

echo "<table>

<tr>

<td>Nome do Cadastro: $dados[nome] </td>

<br>

<td>Data: $dados[data_inicio] </td>

</tr>

</table>

";

echo "<hr>";

}

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim cara eu entendi, mas sou novo nessa área e estou ainda perdido oque eu tenho de códigos é isso ai embaixo, mas eu não sei onde mudar ou criar e como...por isso pedi ajufa para alguem me mostrar como se faz...mas obrigado ai pela força

 

<form action="codigo_busca.php" method="POST">

<table>

<tr>

<td>Nome:</td>

<td><input type="text" name="data_cadastro" id="data_cadastro"></td>

<td>data_inicio:</td>

<td><input type="text" name="data_inicio" id="data_inicio"></td>

<td>data_final:</td>

<td><input type="text" name="data_final" id="data_final"></td>

<td><input type="submit" value="busca"></td>

</tr>

</table>

</form>

 

 

 

 

<?php

$hostdb = "localhost";//

$userdb = "root";//

$passdb = "";//

$tabledb = "aprendendo";

 

$conecta = mysql_connect($hostdb, $userdb, $passdb) or die (mysql_error());

@mysql_select_db($tabledb, $conecta) or die ("Erro ao conectar com o banco de dados");

 

 

 

$busca_query = mysql_query("select * from teste where data_cadastro between '" & data_inicio & "' and '" & data_final & "'")or die(mysql_error());

 

 

while ($dados = mysql_fetch_array($busca_query)) {

echo "<table>

<tr>

<td>Nome do Cadastro: $dados[nome] </td>

<br>

<td>Data: $dados[data_inicio] </td>

</tr>

</table>

";

echo "<hr>";

}

 

?>

 

Po cara não fique triste, não falei nada por maldade, vou te dar um conselho, posta no forum de PHP, que o pessoal te responde, esse forum é relacionado com Banco de dados eu entendo um pouco de banco de dados, mas PHP não. flw..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Me responde uma coisa antes....

qual o type do campo data_inicio e data final?

esta como date, datetime, timestamp????

caso esteja .... ele deve estar gravado assim 2010-11-10 então para comparar você tera que fazer um improviso no mysql ou um expload no seu php tipo

 

$minha_data_inicial = explode("/", $_POST['data_inicio']);

 

$minha_nova_data_inicial = $minha_data_inicial[2].'-'.$minha_data_inicial[1].'-'.$minha_data_inicial[0];

 

dai tu faz..

 

select * from tabela where data between '$minha_nova_data_inicial' and '$tem_que_fazer_a_mesma_coisa_com_a_data_final'

 

 

se o type da data estiver date não precisa fazer nada agora se for datetime ou timestamp faça assim:

 

select * from tabela where date(data) between '$minha_nova_data_inicial' and '$tem_que_fazer_a_mesma_coisa_com_a_data_final'

 

velho não testei nada nem rodei nada.. ta ai a dica ..

 

Abraço..

Kurole

 

Me responde uma coisa antes....

qual o type do campo data_inicio e data final?

esta como date, datetime, timestamp????

caso esteja .... ele deve estar gravado assim 2010-11-10 então para comparar você tera que fazer um improviso no mysql ou um expload no seu php tipo

 

$minha_data_inicial = explode("/", $_POST['data_inicio']);

 

$minha_nova_data_inicial = $minha_data_inicial[2].'-'.$minha_data_inicial[1].'-'.$minha_data_inicial[0];

 

dai tu faz..

 

select * from tabela where data between '$minha_nova_data_inicial' and '$tem_que_fazer_a_mesma_coisa_com_a_data_final'

 

 

se o type da data estiver date não precisa fazer nada agora se for datetime ou timestamp faça assim:

 

select * from tabela where date(data) between '$minha_nova_data_inicial' and '$tem_que_fazer_a_mesma_coisa_com_a_data_final'

 

velho não testei nada nem rodei nada.. ta ai a dica ..

 

Abraço..

Kurole

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.