Hallo,
<?php
include('mysql.php');
$result = mysql_query("SELECT * FROM CMS_News BETWEEN '2007.04.01' AND '2007.04.03'", $DatabasePointer);
Dein SELECT-Statement ist also:
SELECT * FROM CMS_News BETWEEN '2007.04.01' AND '2007.04.03'
Das kann nicht funktionieren. Mir scheint, dass Dir die Grundlagen zu SQL noch nicht ganz klar sind. Ich würde Dir mal empfehlen, das Tutorial im MySQL-Handbuch zu lesen.
Zu Deinem eigentlichen Problem: Wenn Du nun alle Datensätze aus einer Tabelle bekommen willst, würdest Du ja sowas machen wie:
SELECT * FROM CMS_News
Wenn Du nun z.B. auf irgend ein Feld einschränken wolltest, z.B. nur alle Datensätze haben wolltest, deren Titel "hallo" ist, dann würdest Du sowas machen:
SELECT * FROM CMS_News WHERE title = 'hallo'
Mit WHERE schränkst Du Deine SQL-Abfrage also ein. Genau das brauchst Du dann auch für die BETWEEN-Syntax, die Sven Dir genannt hat.
Nun zu der Frage wie Deine Abfrage aussehen sollte:
SELECT * FROM CMS_News WHERE
date BETWEEN '2007-04-01' AND '2004-04-03'
(Deine gewählte Syntax für Datumsangaben '2004.04.03' schluckt MySQL auch, allerdings habe ich die vorher ehrlich gesagt noch NIE gesehen, ich bevorzuge Angaben nach ISO 8601, d.h. mit Bindestrich, ist aber im Prinzip egal)
Da Dein Tabellenname nahelegt, dass Du in der Tabelle offensichtlich News speicherst, wäre es eventuell nicht verkehrt, die abgefragten Datensätze auch zu sortieren, d.h.
SELECT * FROM CMS_News WHERE
dateBETWEEN '2007-04-01' AND '2004-04-03' ORDER BY
date DESC
(Absteigend nach dem Datum)
SELECT * FROM CMS_News WHERE
dateBETWEEN '2007-04-01' AND '2004-04-03' ORDER BY
date ASC
(Aufsteigend nach dem Datum)
Viele Grüße,
Christian