
Ordenar Por Data
#1
Posted 06/05/2010, 20:16
Preciso que as datas sejam ordenadas da última para primeira, ou seja, última notícia será a primeira da fila.
Segue o código que estou usando.
<?
//include_once('Connections/saloon.php');
header('Content-Type: text/html; charset=utf-8');
$conn = @mysql_connect("mysql02.salaopedropaulo.com.br", "salaopedropaulo1","ppleblon");
$db = @mysql_select_db("salaopedropaulo1", $conn);
# Aqui está o segredo
mysql_query("SET NAMES 'utf8'");
mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');
$sql = "SELECT * FROM `imprensa` ORDER BY `id` DESC";
$res = mysql_query($sql,$conn);
$rst = mysql_num_rows($res);
for($i=0;$i<$rst;$i++){
$texto .= ' <I>'.mysql_result($res,$i,'data').'</I><br>';
$texto .= ' <B><biline>'.mysql_result($res,$i,'titulo').'</biline></B><br>';
$texto .= ' <mainBody>'.mysql_result($res,$i,'texto').'</mainBody><br><br>';
}
print $texto;
?>
Obrigado a todos
Bruno Cardoso
Publicitário e Webdesign Freela
#2
Posted 07/05/2010, 09:24
$sql = "SELECT * FROM imprensa ORDER BY id DESC";
Substitua essa consulta pela data de criação, ou publicação... enfim de acordo com a data que vc estiver usando..
Exemplo:
$sql = "SELECT * FROM imprensa ORDER BY data_inicio DESC";

#3
Posted 09/05/2010, 15:04
Vou tentar faazer essa alteração. O que acontece é que ela ordena por data certinho, mas se por exemplo hoje são 9 de maio, se eu quiser colocar uma data 5 de maio, ela não vai ficar na ordem, e sim na ordem que foi inserida. Entendeu ou compliquei?
Abraço
Bruno Cardoso
Publicitário e Webdesign Freela
#4
Posted 10/05/2010, 09:34
Vamos supor que você inseriu o da data 9 de maio ontem... e o ID deste registro é 35.
Se o seu banco tiver o ID com o atributo AUTO INCREMENT (Que pela situação eu vejo que está)
O registro que você inserir hoje com a data de 5 de maio irá ter o id 36.
Como você está realizando o SELECT pelo ID então o último será o primeiro.
Você precisa realizar o ORDER BY pelo campo DATA e não pelo campo ID...
Entendeste?

#5
Posted 12/05/2010, 12:03
Vou tentar fazer isso logo mais (ver se entendi) ai coloco o resultado aqui.
Obrigado mais uma vez
Entãooo ...
Vamos supor que você inseriu o da data 9 de maio ontem... e o ID deste registro é 35.
Se o seu banco tiver o ID com o atributo AUTO INCREMENT (Que pela situação eu vejo que está)
O registro que você inserir hoje com a data de 5 de maio irá ter o id 36.
Como você está realizando o SELECT pelo ID então o último será o primeiro.
Você precisa realizar o ORDER BY pelo campo DATA e não pelo campo ID...
Entendeste?
Bruno Cardoso
Publicitário e Webdesign Freela
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)