Ich habe ein JavaScript, das eine POST-Methode startet, sobald mein Datepicker nicht im Fokus war (ich habe das auch auf einer regulären Absenden-Schaltfläche versucht) und führt das Skript rent-fetch-pick-up-point.php
. Der PHP läuft, aber er kommt nicht über die if-Anweisung hinaus, weil er die POST-Daten nicht bekommt. Der Datepicker ist mit einem Eingabefeld gebunden time-period-from
datepickerTo.blur(function(){
if (selectedDateFrom.length > 0) {
datepickerFrom.delay(500).queue(function(){
$.ajax({
type: "POST",
url: "include/rent-fetch-pick-up-point.php",
data: {action: selectedDateFrom},
success: function(data) {
$("#pick-up-point-container").html(data);
}
});
});
}
});
Hier ist der PHP-Code:
if (isset($_POST['time-period-from'])) {
require '../include/connection.php';
$dateFrom = $_POST['time-period-from'];
$sql = "SELECT * FROM order WHERE $dateFrom BETWEEN date_from AND date_to";
$result = mysqli_query($connection, $sql);
$numRows = mysqli_num_rows($result);
echo $sql; // For testing purposes
}
Und hier ist der HTML:
<input type="text" name="time-period-from" id="datepicker-from" class="datepicker"></p>
Ich habe auch versucht .post $() verwenden anstelle von $ .ajax(), aber ich lief in das gleiche Problem:
Sie erkennen, sind die Daten in 'action' Senden und nicht in der Zeitperiode von? –
Ihr Beitrag 'action', nicht' time-period-from' ... versuchen: '$ _POST ['action']' –
Ihr Code ist anfällig für [SQL-Injektionen] (http://stackoverflow.com/questions/60174/how-kann-ich-verhindern-sql-injection-in-php). –