Приветствую всех!
Есть вот такая страница:
[CODE]
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("applications");
?>
<div class="container">
<?
global $USER;
$usr_id = $USER->GetID();
//
if ($USER->IsAuthorized()) {
echo "Вы авторизованы, поэтому мы заполнили некоторые данные за вас:<br>";
//$id_u = $USER->GetID();
$rsUser = CUser::GetByID($usr_id);
$arUser = $rsUser->Fetch();
$l_name_u = $USER->GetParam("NAME");
$phone_u = $arUser["PERSONAL_PHONE"];
$email_u = $USER->GetParam("EMAIL");
$city_u = $arUser["PERSONAL_CITY"];
\Bitrix\Main\Loader::includeModule('bxmaker.geoip');
$oManager = \Bxmaker\GeoIP\Manager::getInstance();
$geo_city = $oManager->getCity();
//echo $geo_city;
}
?>
<fo rm action="index.php" id="test" method="post">
<sc ript>
$(function() {
//задание заполнителя с помощью параметра placeholder
$("#usr_ph").mask("+7(999)999-9999", {placeholder: "+7(999)999-9999" });
$("#usr_ma").inputmask("email");
//задание заполнителя с помощью параметра placeholder
// $("#index").mask("999999", {placeholder: " " });
});
</sc ript>
<?
$usr_phone = $_POST['phone'];
$start_status = 'Новая';
$cur_date = date('d.m.y H:i:s');
/* *** write ***
*** update *** */
if (!empty($_POST['name'])) {
$file = file_get_contents('data2.json'); // Открыть файл data.json
$taskList=json_decode($file,TRUE); // Декодировать в массив
//$taskList[0]['status'] = "status1";
// or if you want to change all entries with activity_code "1"
foreach ($taskList as $key => $entry) {
if ($entry['phone'] == $usr_phone) {
//$taskList[$key]['status'] = "status1";
echo "Текущий статус - ".$taskList[$key]['status']."<br>";
//echo htmlspecialchars($_POST['usr_message']);
//тут нужна проверка на пустоту
echo "Вы написали: ".htmlspecialchars($taskList[$key]['usr_message'])."<br>";
echo "Ответ менеджера: ".htmlspecialchars($taskList[$key]['mnr_message'])."<br>";
}
else {
array_push($taskList); // ебло
unset($file); // Очистить переменную $file
$taskList[] = array('id'=>$usr_id, 'name'=>$_POST['name'], 'phone'=>$_POST['phone'], 'email'=>$_POST['email'], 'city'=>$_POST['city'], 'status'=>$start_status, 'app_date'=>$cur_date, 'usr_message'=>htmlspecialchars($_POST['usr_message']), 'mnr_message'=>htmlspecialchars($_POST['mnr_message'])); // Представить новую переменную как элемент массива, в формате 'ключ'=>'имя переменной'
}
}
file_put_contents('data2.json',json_encode($taskList, JSON_UNESCAPED_UNICODE, JSON_PRETTY_PRINT)); // Перекодировать в формат и записать в файл.
unset($taskList); // Очистить переменную $taskList
} else
echo "try?<br>".$cur_date;
//echo htmlspecialchars($_POST['usr_message'])."<br>";
//echo htmlspecialchars($_POST['usr_message'])."<br>";
//echo $_POST['phone']."<br>";
?>
</div>
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
[/CODE]
Добавил автозаполнение для авторизованных юзеров вроде только и теперь в файле, при отправке формы - "null".
Помогите разобраться.
Есть вот такая страница:
[CODE]
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("applications");
?>
<div class="container">
<?
global $USER;
$usr_id = $USER->GetID();
//
if ($USER->IsAuthorized()) {
echo "Вы авторизованы, поэтому мы заполнили некоторые данные за вас:<br>";
//$id_u = $USER->GetID();
$rsUser = CUser::GetByID($usr_id);
$arUser = $rsUser->Fetch();
$l_name_u = $USER->GetParam("NAME");
$phone_u = $arUser["PERSONAL_PHONE"];
$email_u = $USER->GetParam("EMAIL");
$city_u = $arUser["PERSONAL_CITY"];
\Bitrix\Main\Loader::includeModule('bxmaker.geoip');
$oManager = \Bxmaker\GeoIP\Manager::getInstance();
$geo_city = $oManager->getCity();
//echo $geo_city;
}
?>
<fo rm action="index.php" id="test" method="post">
<input type="text" name="name" placeholder="name" value="<? if (!empty($l_name_u)) echo $l_name_u; ?>">
<input type="text" id="usr_ph" name="phone" placeholder="+7(999)999-9999" value="<? if (!empty($phone_u)) echo $phone_u; ?>">
<input type="email" id="usr_ma" name="email" placeholder="example@mail.ru" value="<? if (!empty($email_u)) echo $email_u; ?>">
<input type="text" name="city" value="<? if (!empty($city_u)) echo $city_u; else echo $geo_city; ?>">
<input type="hidden" name="status" placeholder="status">
<textarea rows="10" cols="25" name="usr_message" placeholder="message"></textarea>
<input type="submit">
</form><sc ript>
$(function() {
//задание заполнителя с помощью параметра placeholder
$("#usr_ph").mask("+7(999)999-9999", {placeholder: "+7(999)999-9999" });
$("#usr_ma").inputmask("email");
//задание заполнителя с помощью параметра placeholder
// $("#index").mask("999999", {placeholder: " " });
});
</sc ript>
<?
$usr_phone = $_POST['phone'];
$start_status = 'Новая';
$cur_date = date('d.m.y H:i:s');
/* *** write ***
*** update *** */
if (!empty($_POST['name'])) {
$file = file_get_contents('data2.json'); // Открыть файл data.json
$taskList=json_decode($file,TRUE); // Декодировать в массив
//$taskList[0]['status'] = "status1";
// or if you want to change all entries with activity_code "1"
foreach ($taskList as $key => $entry) {
if ($entry['phone'] == $usr_phone) {
//$taskList[$key]['status'] = "status1";
echo "Текущий статус - ".$taskList[$key]['status']."<br>";
//echo htmlspecialchars($_POST['usr_message']);
//тут нужна проверка на пустоту
echo "Вы написали: ".htmlspecialchars($taskList[$key]['usr_message'])."<br>";
echo "Ответ менеджера: ".htmlspecialchars($taskList[$key]['mnr_message'])."<br>";
}
else {
array_push($taskList); // ебло
unset($file); // Очистить переменную $file
$taskList[] = array('id'=>$usr_id, 'name'=>$_POST['name'], 'phone'=>$_POST['phone'], 'email'=>$_POST['email'], 'city'=>$_POST['city'], 'status'=>$start_status, 'app_date'=>$cur_date, 'usr_message'=>htmlspecialchars($_POST['usr_message']), 'mnr_message'=>htmlspecialchars($_POST['mnr_message'])); // Представить новую переменную как элемент массива, в формате 'ключ'=>'имя переменной'
}
}
file_put_contents('data2.json',json_encode($taskList, JSON_UNESCAPED_UNICODE, JSON_PRETTY_PRINT)); // Перекодировать в формат и записать в файл.
unset($taskList); // Очистить переменную $taskList
} else
echo "try?<br>".$cur_date;
//echo htmlspecialchars($_POST['usr_message'])."<br>";
//echo htmlspecialchars($_POST['usr_message'])."<br>";
//echo $_POST['phone']."<br>";
?>
</div>
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
[/CODE]
Добавил автозаполнение для авторизованных юзеров вроде только и теперь в файле, при отправке формы - "null".
Помогите разобраться.