Ich versuche, Daten aus einer MySQL-Datenbank mit Anweisung abrufen, aber aus bestimmten Gründen funktioniert die Anweisung nicht wie erwartet. Was könnte der Grund sein? Die Werte sind Datumseingaben aus einer Form t1 und t2. Datumswerte in Form von 2005-04-06. Könnte es sich um ein Datumsformular handeln? ... Ich bekomme "Keine Kontakte zur Anzeige" trotz Daten in der Datenbank. Ist es Syntaxfehler?MYSQL SELECT-Anweisung für die Auswahl des Datumszeitraums
<?php
session_start();
$servername = "localhost";
$username = "root";
$password = "ub435!";
$dbname = "funtest";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$_SESSION['post-data'] = $_POST;
$t1 = $_SESSION['post-data']['t1'];
$t2 = $_SESSION['post-data']['t2'];
$time1 = mysqli_real_escape_string($conn, $t1);
$time2 = mysqli_real_escape_string($conn, $t2);
$sql = "SELECT DISTINCT msisdn FROM customer WHERE DATE_FORMAT(time_paid, '%Y-%c-%e') BETWEEN ADDDATE('$time1',INTERVAL 0 HOUR) AND ADDDATE('$time2',INTERVAL '23:59' HOUR_MINUTE)";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "Number of Recipients: "; echo "$result->num_rows <br> <br>";
// output data of each row
while($row = $result->fetch_assoc()) {
$mobilenumber = $row['msisdn'];
echo "Mobile : " . "$mobilenumber" . "<br>";
}
} else {
echo "No Contacts to Display";
}
$conn->close();
?>
Sie benötigen allgemeine MySQL + SQL Server-Lösung? Warum ist es mit SQL Server getaggt? –
Wenn Ihr Problem nicht behoben ist, könnte dies ein Grund für das Datumsformat sein, überprüfen Sie bitte das Datumsformat in Ihrer Datenbanktabelle und vergleichen Sie mit $ time1 und $ time2 – Rohit
'echo' Ihre' $ sql' nach der Vorbereitung der Abfrage und versuchen Sie die Ausführung in phpmyadmin direkt erhalten Sie eine bessere Vorstellung von dem Problem. Oder fügen Sie einfach die Abfrage hier ein – Sanchit