У меня есть форма, в которой вы можете выбрать диапазон дат (#StartDate - #EndDate или #AllDates), и он записывает данные в CSV-файл и заставляет загружать. по какой-то причине я не могу передать значения #StartDate и #EndDate. они генерируются полем glDatePicker, но даже когда я помещаю жестко заданные значения, они не передаются. Я запускаю $ ('# StartDate'). Val(); в консоли и возвращает дату, однако, когда я раскомментируюPHP, не отправляющий данные через curl
var_dump($_POST);
он возвращает пустой массив. Задний конец скрипт с помощью:
`FuncitionNameHere(trim($_POST["AllDates"]), trim($_POST["StartDate"]), trim($_POST["EndDate"]))`
соответствующей часть
<form action="path/to/curl.php" method="post" id="Form6">
<ul>
<li>
<label for="StartDate">Start Date</label>
<input type="text" id="StartDate" name="StartDate" />
</li>
<li>
<label for="EndDate">End Date</label>
<input type="text" id="EndDate" name="EndDate" />
<input type="submit" id="Button6" value="Send" />
</li>
<li>
<label for="AllDates"><input type="checkbox" name="AllDates" id="AllDates" value="YES"> All Dates</label>
</li>
</ul>
</form>
и локона скрипт, который отправляет данные на удаленный дб
<?php
session_start();
$url = 'https://remoteurl.com';
$StartDate = $_POST["StartDate"];
$EndDate = $_POST["EndDate"];
$AllDates = $_POST["AllDates"];
$fields = array(
'StartDate'=>urldecode($StartDate),
'EndDate'=>urldecode($EndDate),
'AllDates'=>urldecode($AllDates)
);
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
$fields_string = rtrim($fields_string,'& ');
//var_dump($_POST);
$ch = curl_init($url);
session_write_close();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$directory='/home/XXX/public_html/XXX/';
$filename = 'Report.csv';
$handle = fopen($directory.$filename, 'w');
fwrite($handle, $output);
header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="Report.csv"');
echo $output;
?>
Любой очевидную причину, почему #AllDates в настоящее время опубликовано, но значение #StartDate или #EndDate не опубликовано?
Как вы представляете форму? – Uby
Извините, не уверен, что вы имеете в виду? его an submitHandler: function (form) { \t \t \t $ ('# prcs6'). fadeIn ('fast'). delay (2000) .fadeOut ('fast'); \t \t \t $ ('# StartDate, #EndDate'). Delay (2000) .val (""); \t вид.submit(); \t return false; \t}, –
Via JS, вот что я просил. Кстати, вы проверили в своем браузере HTTP-запрос, отправленный на curl.php? Проверьте, отправлены ли эти параметры или нет. – Uby