Ich habe seit einer Weile versucht, unzählige stackoverflow Antworten zu lesen und kann es immer noch nicht knacken!Wählen Sie zwischen den Daten aus der Tabelle - strtotime?
Ich habe eine Tabelle in meiner Datenbank mit einem Feld namens dob. Dieses Feld ist momentan nur ein TEXT-Feld (aber ich habe seitdem versucht, es in ein DATUM-Feld zu ändern und kann es immer noch nicht zum Laufen bringen).
Die Daten des DOB-Feldes sind in diesem Format (UK Datum) - 22/05/2016.
Ich versuche herauszufinden, die Anzahl der Benutzer, die Geburtstage sind zwischen zwei Daten.
zum Beispiel jeder, der in den letzten zwei Jahren geboren wurde:
$twoyearsago=date('d/m/Y', strtotime("-2 years"));
$today = date("d/m/Y");
$sql = mysql_query("SELECT * FROM users WHERE dob >= '" . $twoyearsago . "' AND date <= '" . $today . "' ORDER by id DESC");
ich auch versucht:
$sql = mysql_query("SELECT * FROM users WHERE dob BETWEEN '" . date('d-m-Y', strtotime($twoyearsago)) . "' AND '" . date('d-m-Y', strtotime($today)) . "'";
Hoffentlich können Sie sehen, wo ich Logik ist und in der Hoffnung werden Sie sehen, wo im schief gehen - jede Hilfe wäre willkommen.
Jack
Ich vermute, dass die Daten in der Datenbank Zeitstempel sind? – Qirel
Dies kann nur gemacht werden, wenn Ihre Daten im 'Jahr-Monat-Tag'-Format sind – Peter