PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (59): В начало « ... 27 28 29 30 [31] 32 33 34 35 ... » В конец
Найдено сообщений: 881
Vladimir Kheifets
Отправлено: 04 Октября, 2019 - 19:57:30 • Тема: Как завернуть данные масства в php-массив • Форум: Вопросы новичков
Ответов: 8 Просмотров: 829
mstdmstd пишет: Я сделал :
PHP:
скопировать код в буфер обмена
$json = 'Array
(
[0] => stdClass Object
(
[documentId] => 8lnAjG0B8Afq4kl6-fGi
[verified] =>
[commentsCount] => 433
[likesCount] => 53262
[edgeCount] => 12
...
[TotalCount] => 945
[ListId] =>
[ListName] =>
[IsBusinessAccount] =>
)
[19] => stdClass Object
(
[documentId] => BlXxbW0B8Afq4kl6Bf2t
[verified] =>
[commentsCount] => 26
[likesCount] => 1521
[edgeCount] => 12
...
[TotalCount] => 369
[ListId] =>
[ListName] =>
[IsBusinessAccount] => 1
)
)' ;
$data = json_decode($json,1);
echo $data;
и ничего не вывело . что неправильно?
Добрый день!
В json_decode возвращает объект, а в переменной $json д.б. строка в формате json.
Пример.
$json - получаю Response через curl
Спойлер (Отобразить ) Цитата: {"auditData":{"processTime":"2007","timestamp":"2019-09-26 07:58:21.070","requestHost":"78.46.152.62, 70.132.4.153, 176.34.239.204","serverId":"ip-10-185-88-61.eu-west-1.compute.internal.node.int-hbg-aws-eu-west-1.discovery#A+","environment":"[awseuwest1, awseuwest1a, ip_10_185_88_61]","release":"c37fc41cb909662dde28308eef3ef5094fd6d248","token":"e0277681-b7fa-4f07-85cd-8e9408ef5f15","internal":"null||||0|1||||||||||||1|||0|0||0|null|||"},"booking":{"reference":"1-4386132","cancellationReference":"ADK51QGTOG","clientReference":"AB717","creationDate":"2019-09-26","status":"CANCELLED","modificationPolicies":{"cancellation":false,"modification":false},"creationUser":"zwbhpxagmgkkukrbfaqab7nm","holder":{"name":"AAAAAAAA","surname":"BBBBB"},"hotel":{"checkOut":"2019-10-19","checkIn":"2019-10-18","code":65983,"name":"Amic Colon","categoryCode":"3EST","categoryName":"3 STARS","destinationCode":"PMI","destinationName":"Majorca","zoneCode":10,"zoneName":"Palma","latitude":"39.5805941617829","longitude":"2.65222460031509","rooms":[{"status":"CANCELLED","id":1,"code":"DBT.ST","name":"Double or Twin STANDARD","paxes":[{"roomId":1,"type":"AD","name":"cccccc","surname":"dddddddd"},{"roomId":1,"type":"AD","name":"aaaaaaaa","surname":"bbbbb"}],"rates":[{"rateClass":"NOR","net":"0.00","sellingRate":"89.00","hotelMandatory":true,"rateComments":"Car park NO.","paymentType":"AT_WEB","packaging":false,"boardCode":"RO","boardName":"ROOM ONLY","cancellationPolicies":[{"amount":"83.60","from":"2019-10-16T23:59:00+02:00"}],"rooms":1,"adults":2,"children":0}]}],"totalSellingRate":"0","totalNet":"0.00","currency":"EUR","supplier":{"name":"HOTELBEDS SPAIN, S.L.U.","vatNumber":"ESB28916765"},"cancellationAmount":0},"invoiceCompany":{"code":"E14","company":"HOTELBEDS S.L.U.","registrationNumber":"ESB57218372"},"totalSellingRate":0,"totalNet":0.00,"pendingAmount":0.00,"currency":"EUR"}}
json_decode возвращает массивСпойлер (Отобразить ) PHP:
скопировать код в буфер обмена
stdClass Object
(
[ auditData] => stdClass Object
(
[ processTime] => 2007
[ timestamp] => 2019 - 09- 26 07: 58 : 21. 070
[ requestHost] => 78. 46. 152. 62, 70. 132. 4. 153, 176. 34. 239. 204
[ serverId] => ip- 10 - 185 - 88 - 61. eu- west- 1. compute. internal. node. int- hbg- aws- eu- west- 1. discovery#A+
[ environment] => [ awseuwest1, awseuwest1a, ip_10_185_88_61]
[ release] => c37fc41cb909662dde28308eef3ef5094fd6d248
[ token] => e0277681- b7fa- 4f07- 85cd- 8e9408ef5f15
[ internal] => null |||| 0 | 1 |||||||||||| 1 ||| 0 | 0 || 0 | null|||
)
[ booking] => stdClass Object
(
[ reference] => 1- 4386132
[ cancellationReference] => ADK51QGTOG
[ clientReference] => AB717
[ creationDate] => 2019- 09- 26
[ status] => CANCELLED
[ modificationPolicies] => stdClass Object
(
[ cancellation] =>
[ modification] =>
)
[ creationUser] => zwbhpxagmgkkukrbfaqab7nm
[ holder] => stdClass Object
(
[ name] => AAAAAAAA
[ surname] => BBBBB
)
[ hotel] => stdClass Object
(
[ checkOut] => 2019- 10- 19
[ checkIn] => 2019- 10- 18
[ code] => 65983
[ name] => Amic Colon
[ categoryCode] => 3EST
[ categoryName] => 3 STARS
[ destinationCode] => PMI
[ destinationName] => Majorca
[ zoneCode] => 10
[ zoneName] => Palma
[ latitude] => 39. 5805941617829
[ longitude] => 2. 65222460031509
(
[ 0] => stdClass Object
(
[ status] => CANCELLED
[ id] => 1
[ code] => DBT. ST
[ name] => Double or Twin STANDARD
(
[ 0] => stdClass Object
(
[ roomId] => 1
[ type] => AD
[ name] => cccccc
[ surname] => dddddddd
)
[ 1] => stdClass Object
(
[ roomId] => 1
[ type] => AD
[ name] => aaaaaaaa
[ surname] => bbbbb
)
)
(
[ 0] => stdClass Object
(
[ rateClass] => NOR
[ net] => 0. 00
[ sellingRate] => 89. 00
[ hotelMandatory] => 1
[ rateComments] => Car park NO.
[ paymentType] => AT_WEB
[ packaging] =>
[ boardCode] => RO
[ boardName] => ROOM ONLY
[ cancellationPolicies
] => Array (
[ 0 ] => stdClass Object
(
[ amount] => 83. 60
[ from] => 2019 - 10 - 16T23: 59 : 00+ 02: 00
)
)
[ rooms] => 1
[ adults] => 2
[ children] => 0
)
)
)
)
[ totalSellingRate] => 0
[ totalNet] => 0. 00
[ currency] => EUR
[ supplier] => stdClass Object
(
[ name] => HOTELBEDS SPAIN, S. L. U.
[ vatNumber] => ESB28916765
)
[ cancellationAmount] => 0
)
[ invoiceCompany] => stdClass Object
(
[ code] => E14
[ company] => HOTELBEDS S. L. U.
[ registrationNumber] => ESB57218372
)
[ totalSellingRate] => 0
[ totalNet] => 0
[ pendingAmount] => 0
[ currency] => EUR
)
)
Удачи!
Vladimir Kheifets
Отправлено: 01 Октября, 2019 - 08:01:31 • Тема: как правильно написать условие • Форум: HTML, Дизайн & CSS
Ответов: 1 Просмотров: 1712
sotex2 пишет: подскажите, как правильно написать код. нужно, что бы было сообщение "мобильная версия" на мобильных устройствах, иначе показывать только для дескопной версии. сейчас такой код и постоянно выводиться сообщение "дескопная версия" и когда просматриваю на мобильной версии то же. как правильно прописать условие для вордпресса.
Добрый день!
Условие записано верно. Возможно, что проблема с функцией wp_is_mobile .
Посмотрите её описание здесь:
https://codex[dot]wordpress[dot]org/Func[dot][dot][dot]nce/wp_is_mobile
Обратите, пожалуйста, внимане на:Цитата: Do not think of this function as a way of detecting phones.
В Ваше случае, проблема с связано с тем, браузер моб. устройства
"показывает" $_SERVER['HTTP_USER_AGENT'] , который не верно распознается.
Вы можете проверить эту функцию здесь
https://www[dot]alto-booking[dot]com/dem[dot][dot][dot]wp_is_mobile.php
или отсканировав QR-код.
Удачи!
Vladimir Kheifets
Отправлено: 25 Сентября, 2019 - 08:45:16 • Тема: Parsing json format in PHP • Форум: Вопросы новичков
Ответов: 16 Просмотров: 1172
Jonsnow пишет: Vsem Privet jesio raz, izvinite, no imejetsia problemka takogo haraktera:
CODE (
PHP ):
скопировать код в буфер обмена
{
"result" : {
"subjects" : [
{
"partners" : [
{
"companyName" : null ,
"firstName" : "VLADIMIR" ,
"lastName" : "TAPOV"
}
] ,
"registrationLegalDate" : "2012-08-13" ,
"accountNumbers" : [
"45423534554353453453453"
] ,
"hasVirtualAccounts" : false
}
] ,
"Id" : "m8e2134"
}
}
probowal tak, no wstawliaetsia Array.
Problema w dwojnom massivie, ponimau, no kak isprawit'?
Jesli kto-to znajet, to pojalusta pomogite=)
izvinite za translit
Добрый день!
Посмотрите объект, который возвращает json_decode и станет понятно, как получить accountNumbers0 Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
$json = '{
"result": {
"subjects": [
{
"partners": [
{
"companyName": null,
"firstName": "VLADIMIR",
"lastName": "TAPOV"
}
],
"registrationLegalDate": "2012-08-13",
"accountNumbers": [
"45423534554353453453453"
],
"hasVirtualAccounts": false
}
],
"Id": "m8e2134"
}
}' ;
echo "<pre>" ; print_r( $obj ) ; echo "</pre>" ;
$accountNumbers0 = $obj -> result -> subjects [ 0] -> accountNumbers [ 0] ;
echo "accountNumbers0=$accountNumbers0 " ;
/*
Результат:
stdClass Object
(
[result] => stdClass Object
(
[subjects] => Array
(
[0] => stdClass Object
(
[partners] => Array
(
[0] => stdClass Object
(
[companyName] =>
[firstName] => VLADIMIR
[lastName] => TAPOV
)
)
[registrationLegalDate] => 2012-08-13
[accountNumbers] => Array
(
[0] => 45423534554353453453453
)
[hasVirtualAccounts] =>
)
)
[Id] => m8e2134
)
)
accountNumbers0=45423534554353453453453
*/
?>
Удачи!
Vladimir Kheifets
Отправлено: 16 Сентября, 2019 - 08:16:34 • Тема: Оценка рейтинга • Форум: Напишите за меня, пожалуйста
Ответов: 2 Просмотров: 73
deu пишет: PHP:
скопировать код в буфер обмена
$like = 500 ;
$dislike = 200 ;
$score = ( $like + $dislike ) / 5 ; // очков в одном балле
if ( $dislike >= $like ) {
$lastScore = 1 ;
}
else {
$lastScore = ceil ( ( $like - $dislike ) / $score ) ; }
echo $lastScore ;
Если еще актуально
Добрый день!
Предположим оценивает рейтинг участников в соц. сети и сравниваются
рейтинги двух участников.
Ваш кодСпойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
function raiting( $like , $dislike )
{
$score = ( $like + $dislike ) / 5 ; // очков в одном балле
if ( $dislike >= $like ) {
$lastScore = 1 ;
}
else
{
$lastScore = ceil ( ( $like - $dislike ) / $score ) ; }
return $lastScore ;
}
$like = 10000 ;
$dislike = 200 ;
$lastScore = raiting( $like , $dislike ) ;
echo "1. like=$like dislike=$dislike raiting=$lastScore <br>" ;
//------------------------------------------------------
$like = 1 ;
$dislike = 0 ;
$lastScore = raiting( $like , $dislike ) ;
echo "2. like=$like dislike=$dislike raiting=$lastScore " ;
/*
1. like=10000 dislike=200 raiting=5
2. like=1 dislike=0 raiting=5
*/
?>
выдаст такой рельтат:Цитата: 1. like=10000 dislike=200 raiting=5
2. like=1 dislike=0 raiting=5
По Математической Статистике д.б. определена не только выборка, но и генеральная совокупность. Иначе, при расчете только по выбоке, результ получается не достоверным и/или абсурдным.
Удачи
Vladimir Kheifets
Отправлено: 15 Сентября, 2019 - 08:49:38 • Тема: Как при нажатии на элемент селекта отобразить поля даты и времени? • Форум: Вопросы новичков
Ответов: 2 Просмотров: 250
учусьПрограммировать пишет: Здравствуйте! нужна помощь.
как при нажатие на элемента селекта отобразить поля дати и времени на php без java.
Добрый день!
Вы не со всем корректно сформулировали вопрос и получили на него абсолютно правильный ответ.
Действительно, php работает на сервере и поэтому не умеет обрабатывать события связанные с устройствами - мышкой,
клавиатурой и.т.п., так устройства эти находится у клиента, например, на РС.
В связи с этим
Спойлер (Отобразить ) В Одессе пожелая дама ловит такси.
Остонавливается часник.
Водитель:
- Модам, куда ехать?
Дама:
- Но Вы же не таксист!
Водитель:
- Модам, Вам нужно ехать или Вам шашечки нужны?
Если, Вам нужно "ехать" т.е. при нажатие на элемента селекта отобразить поля даты и времени,
то нужно использовать Java Script и CSS.
Так без PHP:
Спойлер (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
<title > Test changeDivFromSelect</ title >
<style >
div{
display:none;
margin-top:10px;
border:1px dotted black;
width: 200px;
padding:10px;
}
</ style >
<script >
//--------------------------------------------------------------------------
function changeDivFromSelect(idSelect){
ObjSelect=document.getElementById(idSelect);
ObjInd=ObjSelect.selectedIndex;
if(ObjInd==0)
{
alert('Пожалуйста, выберите: "Дата и время", "Номер рейса", "Аэропрт вылета"');
return;
}
kOptions=ObjSelect.options.length;
for (i=0; i<kOptions; i++)
{
idDiv= "Div" +i;
ObjDiv= document.getElementById( idDiv) ;
if( ObjDiv)
{
dis= ( i== ObjInd) ?"block" :"none" ;
ObjDiv.style .display= dis;
}
}
}
// --------------------------------------------------------------------------
</ script >
</ head >
<body >
<form action = "" method = "post" >
Прибытие:<br >
<select id = "arrival" onClick = "changeDivFromSelect(this.id)" >
<option ></ option >
<option > Дата и время</ option >
<option > Номер рейса</ option >
<option > Аэропoрт вылета</ option >
</ select >
<div id = "Div1" >
Дата:<br >
<input name = "fromDate" type = "text" / ><br >
Время:<br >
<input name = "fromTime" type = "text" / >
</ div >
<div id = "Div2" >
Номер рейса:<br >
<input name = "fromNr" type = "text" / >
</ div >
<div id = "Div3" >
Аэропoрт вылета:<br >
<input name = "fromAPT" type = "text" / >
</ div >
</ select >
</ form >
</ body >
</ html >
a так немного с PHP:Спойлер (Отобразить ) CODE (
htmlphp ):
скопировать код в буфер обмена
<?
$Options = [ "Дата и время" , "Номер рейса" , "Аэропрт вылета" ] ;
?>
< head>
< meta http- equiv= "Content-Type" content= "text/html; charset=utf-8" />
< title> Test changeDivFromSelect</ title>
< style>
div{
display: none;
margin- top: 10px;
border: 1px dotted black;
width: 200px;
padding: 10px;
}
</ style>
< script>
//--------------------------------------------------------------------------
function changeDivFromSelect( idSelect) {
ObjSelect= document. getElementById( idSelect) ;
ObjInd= ObjSelect. selectedIndex;
if ( ObjInd== 0 )
{
alert( 'Пожалуйста, выберите: <?=implode(", ",$Options);?>' ) ;
return ;
}
kOptions= ObjSelect. options. length;
for ( i= 0 ; i< kOptions; i++ )
{
idDiv= "Div" + i;
ObjDiv= document. getElementById( idDiv) ;
if ( ObjDiv)
{
dis= ( i== ObjInd) ?"block" : "none" ;
ObjDiv. style. display= dis;
}
}
}
//--------------------------------------------------------------------------
</ script>
</ head>
< body>
< form action= "" method= "post" >
Прибытие:< br>
< select id= "arrival" onClick= "changeDivFromSelect(this.id)" >
< option></ option>
<?
foreach ( $Options as $text )
{
echo "<option>$text </option>" ;
}
?>
</ select>
< div id= "Div1" >
Дата:< br>
< input name= "fromDate" type= "text" />< br>
Время:< br>
< input name= "fromTime" type= "text" />
</ div>
< div id= "Div2" >
Номер рейса:< br>
< input name= "fromNr" type= "text" />
</ div>
< div id= "Div3" >
Аэропoрт вылета:< br>
< input name= "fromAPT" type= "text" />
</ div>
</ select>
</ form>
</ body>
</ html>
Удачи!
Vladimir Kheifets
Отправлено: 08 Сентября, 2019 - 13:35:11 • Тема: Запрос к базе данных • Форум: Вопросы новичков
Ответов: 1 Просмотров: 292
qux пишет: В php я совсем неопытный, пишу раз в год простые странички, прошу понять и простить, а так-же помочь у кого доброе сердце.
Необходимо на страницу вывести результат запроса к БД MySQL
Спойлер (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html >
<head >
<title > shcode</ title >
</ head >
<body >
<form action = "./index.htm" >
<input type = "text" id = "shcode" name = "shcode" placeholder= "shcode" required maxlength = "13" / >
<input type = "submit" / >
</ form >
<?PHP
function findeshcode( $shcode)
{
require 'logsql.php' ;
$db_server = mysql_connect( $db_hostname, $db_username, $db_password) ;
if ( !$db_server)
{
die( "Error connect to MySQL" . mysql_error( ) ) ;
}
mysql_select_db( $db_database) or die( "Error connect to MySQL" . mysql_error( ) ) ;
mysql_query( 'SET NAMES utf8 COLLATE utf8_general_ci' ) ;
if ( $shcode== "" )
{
"Enter shcode" ;
}
else
{
$result_shcode= mysql_query( "SELECT * FROM `price` WHERE shcode='$shcode'ORDER BY date" ) ;
}
mysql_close( $db_server) ;
return $result_shcode;
}
$result_shcode= findeshcode( $_GET[ "shcode" ] ) ;
while( $row= mysql_fetch_array( $result_shcode) )
{ echo $row[ 'shcode' ] ;}
?>
</ body >
</ html >
После нажатия на кнопку ничего не происходит (( Что я пропустил в коде?
Добрый день!
На первый взгляд:
1. потерян isset($_GET["shcode"]) 2. В функции findeshcode нужно убрать mysql_close($db_server);
Удачи!
Vladimir Kheifets
Отправлено: 02 Сентября, 2019 - 18:20:38 • Тема: CURL PHP • Форум: Программирование на PHP
Ответов: 10 Просмотров: 913
WhatIsWhat пишет: Здравствуйте, пытаюсь отправить следующий запрос:
PHP:
скопировать код в буфер обмена
$cookie_file = $_SERVER [ 'DOCUMENT_ROOT' ] . "cookie.txt" ;
curl_setopt ( $ch , CURLOPT_URL
, "https://vktarget.ru/api/all.php?action=check_task" ) ; curl_setopt ( $ch , CURLOPT_USERAGENT
, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17' ) ; 'host_state' => 'vktarget.ru' ,
) ) ;
curl_setopt ( $ch , CURLOPT_COOKIE
, "" ) ; //Отправляю куки.
Ответ: {"code":100,"desc":"Authorization failed","uid":"7393136","with":null}" -
Соответственно, не происходит ничего для меня нужного.
Куки отправляю правильные (делал запрос на одну из страниц сайта)
Добрый день!
В Ваше коде не видно авторизации и возможно, что её не было.
См. Авторизация, здесь https://vktarget[dot]ru/developers/
Цитата: Для запроса к апи - есть 2 обязательных параметра:
uid - ид пользователя от которого идет запрос
key - подпись
Там показан PHP код:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
'action' => 'get_tasks' , //вызываемый метод, в данном случае - получения списка созданных заданий
'uid' => 1 , // id пользователя
'key' => 'secretkey' // ваш секретный ключ
) ;
?>
Удачи!
Vladimir Kheifets
Отправлено: 30 Августа, 2019 - 07:29:37 • Тема: Порядок использования переменных $_POST • Форум: Вопросы новичков
Ответов: 6 Просмотров: 541
LIME пишет: Vladimir Kheifets пишет:
$_POST['data1'] лучше по проиводительности
LIME пишет: правда? Вот не знал.
Чем, присвоение значений всех переменных через extract($_POST)
Обычно, Вы советуете всем: "Если что-то не знаешь, спроси и google"
LIME пишет: Может ну его этот переход?
Поддержка PHP 5.x закончилась в декабре прошлого.
У нас все хостинг провайдеры требуют переходить на 7.2
Vladimir Kheifets
Отправлено: 29 Августа, 2019 - 21:54:33 • Тема: Порядок использования переменных $_POST • Форум: Вопросы новичков
Ответов: 6 Просмотров: 541
r7yz пишет: Проблема возникла после перехода с РНР5 на РНР7. В РНР5 переменные $_POST можно было использовать так:
допустим, в PHP5 скрипту передается переменная $_POST['data1'] и в скрипте можно было сразу использовать переменную $data1, в ней уже было значение, переданное в $_POST['data1'.
после перехода на PHP7 такой номер не прокатывает, нужно сначала присвоить $data1=$_POST['data1']; , а потом использовать переменную $data1.
Вот теперь вопрос, можно ли настроить такой же режим использования переменных в РНР7 и ка это сделать???
Добрый день!
Уже давно это ушло.
Лучше конечно, переписывать коды, т.е. везде вместо переменных, вставлять $_POST["....."], например, вместо $data1, $_POST['data1']
НО, если на РНР7 нужно запускаться срочно, бюджет зажат и клиент давит, то можно в начале кода вствить временную "заплатку":
Конечно, $_POST['data1'] лучше по проиводительности, но зато старый код с переменными будет работать.
Удачи!
Vladimir Kheifets
Отправлено: 19 Августа, 2019 - 16:16:36 • Тема: Поменять ключь массиву • Форум: Вопросы новичков
Ответов: 16 Просмотров: 2778
Noobster пишет: Вроде работает, Можно как-то получить с много ур. массивом? т.е. если имеется:
PHP:
скопировать код в буфер обмена
(
(
[ id] => 1319
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 21
: 21
: 03
[ name] => Maxim
[ surname] => Malogin
[ comment] => VPI client
(
[ id] => 1000
[ is_avatar] => 1
[ username] => Maxim Malogin
[ company_id] =>
[ passport_number] => 112233
[ mobile_phone] =>
)
)
(
[ id] => 1318
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 16
: 29
: 30
[ name] => Oleg
[ surname] => Dinisov
[ comment] => No accept
(
[ id] => 1000
[ is_avatar] => 1
[ username] => Oleg Dinisov
[ company_id] =>
[ passport_number] => 332211
[ mobile_phone] =>
)
)
)
Получить так:
PHP:
скопировать код в буфер обмена
(
(
[ 0] => Header_id
[ 1] => Header_status
[ 2] => Header_author_id
[ 3] => Header_client_id
[ 4] => Header_date_start
[ 5] => Header_name
[ 6] => Header_surname
[ 7] => Header_comment
[ 8] => Header_author_data_username
[ 9] => Header_author_data_passport_number
[ 10] => Header_author_data_mobile_phone
[ 11] => Header_author_data_email
)
(
[ 0] => 1319
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 21: 21: 03
[ 5] => Maxim
[ 6] => Malogin
[ 7] => VPI client
[ 8] => Maxim Malogin
[ 9] => 112233
[ 10] =>
)
(
[ 0] => 1318
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 16: 29: 30
[ 5] => Oleg
[ 6] => Dinisov
[ 7] => No accept
[ 8] => Oleg Dinisov
[ 9] => 332211
[ 10] =>
)
)
Добрый день!
Конечно можно... Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
(
(
"id" => 1319 ,
"status" => 0 ,
"author_id" => 1000 ,
"client_id" => 1333 ,
"date" => "2019-08-15 21:21:03" ,
"name" => "Maxim" ,
"surname" => "Malogin" ,
"comment" => "VPI client" ,
(
"id" => 1000 ,
"is_avatar" => 1 ,
"username" => "Maxim Malogin" ,
"company_id" => "" ,
"passport_number" => 112233 ,
"mobile_phone" => "" ,
"email" => "max@mail.ru"
)
)
,
(
"id" => 1318 ,
"status" => 0 ,
"author_id" => 1000 ,
"client_id" => 1333 ,
"date" => "2019-08-15 16:29:30" ,
"name" => "Oleg" ,
"surname" => "Dinisov" ,
"comment" => "No accept" ,
(
"id" => 1000 ,
"is_avatar" => 1 ,
"username" => "Oleg Dinisov" ,
"company_id" => "" ,
"passport_number" => 332211 ,
"mobile_phone" => "" ,
"email" => "oleg@mail.ru"
)
)
) ;
echo "in_arr:<pre>" ; print_r ( $in_arr ) ; echo "</pre>" ; //------------------------------------------------
foreach ( $arr1 as $i => $v ) $out_arr1 [ $i ] = "Header_" . $v ;
foreach ( $arr2 as $i => $v ) $out_arr2 [ $i ] = "Header_author_data_" . $v ;
$iR = 1 ;
foreach ( $in_arr as $R )
{
foreach ( $arr1 as $n )
{
$out_arr [ $iR ] [ ] = $R [ $n ] ;
}
foreach ( $arr2 as $n )
{
$out_arr [ $iR ] [ ] = $R [ "author_data" ] [ $n ] ;
}
$iR ++;
}
//------------------------------------------------
echo "out_arr:<pre>" ; print_r ( $out_arr ) ; echo "</pre>" ; ?>
Результат:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
in_arr:
(
(
[ id] => 1319
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 21
: 21
: 03
[ name] => Maxim
[ surname] => Malogin
[ comment] => VPI client
(
[ id] => 1000
[ is_avatar] => 1
[ username] => Maxim Malogin
[ company_id] =>
[ passport_number] => 112233
[ mobile_phone] =>
)
)
(
[ id] => 1318
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 16
: 29
: 30
[ name] => Oleg
[ surname] => Dinisov
[ comment] => No accept
(
[ id] => 1000
[ is_avatar] => 1
[ username] => Oleg Dinisov
[ company_id] =>
[ passport_number] => 332211
[ mobile_phone] =>
)
)
)
out_arr:
(
(
[ 0] => Header_id
[ 1] => Header_status
[ 2] => Header_author_id
[ 3] => Header_client_id
[ 4] => Header_date
[ 5] => Header_name
[ 6] => Header_surname
[ 7] => Header_comment
[ 8] => Header_author_data_username
[ 9] => Header_author_data_passport_number
[ 10] => Header_author_data_mobile_phone
[ 11] => Header_author_data_email
)
(
[ 0] => 1319
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 21: 21: 03
[ 5] => Maxim
[ 6] => Malogin
[ 7] => VPI client
[ 8] => Maxim Malogin
[ 9] => 112233
[ 10] =>
)
(
[ 0] => 1318
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 16: 29: 30
[ 5] => Oleg
[ 6] => Dinisov
[ 7] => No accept
[ 8] => Oleg Dinisov
[ 9] => 332211
[ 10] =>
)
)
Удачи!
Vladimir Kheifets
Отправлено: 19 Августа, 2019 - 08:04:10 • Тема: Переадресация на другую станицу с контактной формы • Форум: Напишите за меня, пожалуйста
Ответов: 12 Просмотров: 211
keeon пишет: Спасибо, что откликнулись! Вот страница - https://fin-club.com.ua/pomosch-zayemschykam-mfo-v-ukraine/
Добрый день!
Сомневаюсь, что это поможет, но on Success, который Вы не можете найти, в 49 строке framework-config-cform.php По Вашему URL "вскрытие" показало:
Форма:Спойлер (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<form class = "w-form-h" autocomplete= "off" action = "https://fin-club.com.ua/pomosch-zayemschykam-mfo-v-ukraine/" method = "post" >
<div class = "w-form-row for_name required" >
<div class = "w-form-row-label" >
<label for = "us_form_1_name" ></ label >
</ div >
<div class = "w-form-row-field" >
<input type = "text" aria-label = "name" name = "name" id = "us_form_1_name" value = "" placeholder= "Имя *" data-required= "true" aria-required= "true" >
<span class = "w-form-row-field-bar" ></ span >
</ div >
<div class = "w-form-row-state" ></ div >
</ div >
<div class = "w-form-row for_email required" >
<div class = "w-form-row-label" >
<label for = "us_form_1_email" ></ label >
</ div >
<div class = "w-form-row-field" >
<input type = "email" aria-label = "email" name = "email" id = "us_form_1_email" value = "" placeholder= "E-mail *" data-required= "true" aria-required= "true" >
<span class = "w-form-row-field-bar" ></ span >
</ div >
<div class = "w-form-row-state" ></ div >
</ div >
<div class = "w-form-row for_phone required" >
<div class = "w-form-row-label" >
<label for = "us_form_1_phone" ></ label >
</ div >
<div class = "w-form-row-field" >
<input type = "text" aria-label = "phone" name = "phone" id = "us_form_1_phone" value = "" placeholder= "Номер телефона *" data-required= "true" aria-required= "true" >
<span class = "w-form-row-field-bar" ></ span >
</ div >
<div class = "w-form-row-state" ></ div >
</ div >
<input type = "hidden" name = "action" value = "us_ajax_cform" >
<input type = "hidden" name = "post_id" value = "8907" >
<input type = "hidden" name = "form_index" value = "1" >
<div class = "w-form-row for_submit" >
<div class = "w-form-row-field" >
<button class = "w-btn icon_none color_primary style_solid" type = "submit" aria-label = "OK" >
<span class = "g-preloader type_1" ></ span >
<span class = "w-btn-label" > OK</ span >
</ button >
</ div >
</ div >
<div class = "w-form-message" ></ div >
</ form >
и к ней jQuery(event):Спойлер (Отобразить ) CODE (
javascript ):
скопировать код в буфер обмена
function ( event) {
event.preventDefault ( ) ;
if ( $submitBtn.hasClass ( 'loading' ) ) return ;
$resultField.usMod ( 'type' , ! 1 ) .html ( '' ) ;
var errors = 0 ;
$form.find ( '[data-required="true"]' ) .each ( function ( ) {
var $input = $( this ) ,
isEmpty = $input.is ( '[type="checkbox"]' ) ? ( ! $input.is ( ':checked' ) ) : ( $input.val ( ) == '' ) ,
$row = $input.closest ( '.w-form-row' ) ,
errorText = options.errors [ $input.attr ( 'name' ) ] || '' ;
$row.toggleClass ( 'check_wrong' , isEmpty) ;
$row.find ( '.w-form-row-state' ) .html ( isEmpty ? errorText : '' ) ;
if ( isEmpty) {
errors++
}
} ) ;
if ( errors != 0) return ;
$submitBtn.addClass ( 'loading' ) ;
$.ajax ( {
type : 'POST' ,
url: options.ajaxurl ,
dataType: 'json' ,
data: $form.serialize ( ) ,
success: function ( result) {
if ( result.success ) {
$resultField.usMod ( 'type' , 'success' ) .html ( result.data ) ;
$form.find ( '.w-form-row.check_wrong' ) .removeClass ( 'check_wrong' ) ;
$form.find ( '.w-form-row.not-empty' ) .removeClass ( 'not-empty' ) ;
$form.find ( '.w-form-state' ) .html ( '' ) ;
$form.find ( 'input[type="text"], input[type="email"], textarea' ) .val ( '' )
} else {
$form.find ( '.w-form-row.check_wrong' ) .removeClass ( 'check_wrong' ) ;
$form.find ( '.w-form-state' ) .html ( '' ) ;
if ( result.data && typeof result.data == 'object' ) {
for ( var fieldName in result.data ) {
if ( fieldName == 'empty_message' ) {
var errorText = result.data [ fieldName] ;
$resultField.usMod ( 'type' , 'error' ) .html ( errorText) ;
continue
}
if ( ! result.data .hasOwnProperty ( fieldName) ) continue ;
var $input = $form.find ( '[name="' + fieldName + '"]' ) ,
errorText = result.data [ fieldName] ;
$input.closest ( '.w-form-row' ) .addClass ( 'check_wrong' ) .find ( '.w-form-row-state' ) .html ( errorText)
}
} else {
$resultField.usMod ( 'type' , 'error' ) .html ( result.data )
}
}
} ,
complete: function ( ) {
$submitBtn.removeClass ( 'loading' )
}
} )
}
Попробуйте изменить index.php в папке pomosch-zayemschykam-mfo-v-ukraine
Удачи!
Vladimir Kheifets
Отправлено: 16 Августа, 2019 - 21:47:40 • Тема: Поменять ключь массиву • Форум: Вопросы новичков
Ответов: 16 Просмотров: 2778
Noobster пишет: Есть массив
PHP:
скопировать код в буфер обмена
(
(
[ id] => 1319
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 21
: 21
: 03
[ name] => Maxim
[ surname] => Malogin
[ comment] => VPI client
)
(
[ id] => 1318
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019 - 08
- 15 16 : 29 : 30 [ name] => Oleg
[ surname] => Dinisov
[ comment] => No accept
)
)
Как его преобразовать чтобы на выходе получить:
PHP:
скопировать код в буфер обмена
(
(
[ 0] => id
[ 1] => status
[ 2] => author_id
[ 3] => client_id
[ 4] => date_start
[ 5] => name
[ 6] => surname
[ 7] => comment
)
(
[ 0] => 1319
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 21: 21: 03
[ 5] => Maxim
[ 6] => Malogin
[ 7] => VPI client
)
(
[ 0 ] => 1318
[ 1 ] => 0
[ 2 ] => 1000
[ 3 ] => 1333
[ 4 ] => 2019 - 08- 15 16 : 29 : 30
[ 5 ] => Oleg
[ 6 ] => Dinisov
[ 7 ] => No accept
)
)
Спасибо.
Добрый день!
Попробуйте сделать так:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
(
(
"id" => 1319 ,
"status" => 0 ,
"author_id" => 1000 ,
"client_id" => 1333 ,
"date" => "2019-08-15 21:21:03" ,
"name" => "Maxim" ,
"surname" => "Malogin" ,
"comment" => "VPI client"
)
,
(
"id" => 1318 ,
"status" => 0 ,
"author_id" => 1000 ,
"client_id" => 1333 ,
"date" => "2019-08-15 16:29:30" ,
"name" => "Oleg" ,
"surname" => "Dinisov" ,
"comment" => "No accept"
)
) ;
echo "in_arr:<pre>" ; print_r ( $in_arr ) ; echo "</pre>" ; //------------------------------------------------
//------------------------------------------------
echo "out_arr:<pre>" ; print_r ( $out_arr ) ; echo "</pre>" ; ?>
Результат:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
in_arr:
(
(
[ id] => 1319
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 21
: 21
: 03
[ name] => Maxim
[ surname] => Malogin
[ comment] => VPI client
)
(
[ id] => 1318
[ status] => 0
[ author_id] => 1000
[ client_id] => 1333
[ date ] => 2019
- 08
- 15 16
: 29
: 30
[ name] => Oleg
[ surname] => Dinisov
[ comment] => No accept
)
)
out_arr:
(
(
[ 0] => id
[ 1] => status
[ 2] => author_id
[ 3] => client_id
[ 5] => name
[ 6] => surname
[ 7] => comment
)
(
[ 0] => 1319
[ 1] => 0
[ 2] => 1000
[ 3] => 1333
[ 4] => 2019- 08- 15 21: 21: 03
[ 5] => Maxim
[ 6] => Malogin
[ 7] => VPI client
)
(
[ 0 ] => 1318
[ 1 ] => 0
[ 2 ] => 1000
[ 3 ] => 1333
[ 4 ] => 2019 - 08- 15 16 : 29 : 30
[ 5 ] => Oleg
[ 6 ] => Dinisov
[ 7 ] => No accept
)
)
Удачи!
Vladimir Kheifets
Отправлено: 14 Августа, 2019 - 07:20:34 • Тема: Отправка и получение файлов в API? • Форум: Работа с сетью
Ответов: 6 Просмотров: 2565
sc2r2bey пишет: мне кажется читать файл в строку и потом это пересылать, я это имел под некошеронстью
представь изображение размером 20мБ так отправить или получить, а если несколько пользователей это сделают?
я слышал, что можно использовать Content-Disposition но никогда не сталкивался с реализацией?
Добрый день!
Вовсе не обязательно пересылать графические файлы, достаточно, отправлять их URL, так обычно и делают в Вебсервисах.
Допустим, Вы хотите создать свой Вебсервис.
Спойлер (Отобразить ) Начать, было бы неплохо с концепции.
Возьмём, например, сервис для онлайн-бронирования отелей.
Клиентами сервиса должны быть - поставщики информации и её получали.
Сервис должен принимать запросы клиентов (Requests) отправленные на определённые адреса (End point URL) и отправлять ответы на клиентские запросы(Responses).
Поставщиками информации, в данном случае могут быть отели, а получателям системы олайн-бронирования отелей для конечных клиентов.
Конечно, нужно добиваться максимальной производительности сервиса.
Обычно определяются несколько End point URL для разных клиентов и типов запросов,
а информация, получаемая клиентами, разделяется на статическую и динамическую.
В случае отелей, статическая информация - это данные об отелях, номерах , услугах и url фотографий. Статистическая информация загружается в кленские базы данных, а по запросам доступных для бронирования отелей, клиент получает динамическая информацию содержащую коды отелей, доступные номера и цены.
Чтобы показать полученную информацию для конечного клиента, по коду отеля данные выбирается и клиентской БД, в том числе url-фотографий.
Например, по запросу, на получение статической информации об отеле, вебсервис так выдаёт
данные отеля и url-фотографий (Фрагмент encode JSON-Response) Спойлер (Отобразить ) ..........................................
[hotels] => Array
(
[0] => stdClass Object
(
[code] => 1
[name] => stdClass Object
(
[content] => Ohtels Villa Dorada
)
[description] => stdClass Object
(
[content] => This hotel is located about 150 metres from the fine sandy beach. The lively centre of Cambrils is approximately 10 km away and can be easily reached by the public bus services. There is a stop for public transport right in front of the hotel. The immediate vicinity offers a diverse range of shopping and entertainment facilities including boutiques, restaurants and bars. This hotel comprises a total of 260 rooms spread over 5 floors. Dining options include a café, a bar and an air-conditioned buffet restaurant with highchairs for infants. The tastefully decorated, cosy rooms come with a balcony and satellite TV.
)
................................ ..........
..........................................
[images] => Array
(
[0] => stdClass Object
(
[imageTypeCode] => RES
[path] => 00/000001/000001a_hb_r_001.jpg
[order] => 1
[visualOrder] => 3
)
[1] => stdClass Object
(
[imageTypeCode] => RES
[path] => 00/000001/000001a_hb_r_002.jpg
[order] => 2
[visualOrder] => 21
)
[2] => stdClass Object
(
[imageTypeCode] => HAB
[path] => 00/000001/000001a_hb_ro_005.jpg
[roomCode] => QUA.ST
[roomType] => QUA
[characteristicCode] => ST
[order] => 5
[visualOrder] => 100
)
................................ ..........
..........................................
См. ниже как показываются фотографии на сайте.
Удачи!
Vladimir Kheifets
Отправлено: 10 Августа, 2019 - 13:40:13 • Тема: Небольшой скрипт • Форум: Напишите за меня, пожалуйста
Ответов: 1 Просмотров: 76
Gerd пишет: Есть текстовое поле в нем
#авто #ремонт #мойка
Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст
Далее есть переменная в js
var pr = '#авто #ремонт #мойка';
Необходимо сперва определить, является ли первая строчка в текстовом поле. Строчкой в которой прописаны хэштеги. На случай положительного результата. Стереть ее, и на место данной строчки, прописать содержимое из переменной. Если же нет, добавить строчку из переменной в начало текстового поля с переносом строки.
Добрый день, Герд!
Небольшой скрипт
Спойлер (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<html >
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
<title > Check text</ title >
<script >
function CheckStr(str)
{
var re = /(^#[a-zа-яё0-9]{1,30})/ig;
in_text = document.getElementById("check_text").value;
buf=in_text.split("\n");
iB=(re.exec(buf[0].trim())==null)?0:1;
out_text=str;
for (i=iB; i<buf.length; i++)
{
line= buf[ i] .trim( ) ;
if( line!= "" ) out_text += "\n" +line;
}
document.getElementById( "out_text" ) .value = out_text;
}
</ script >
</ head >
<body >
<form name ґ= "test" action = "" method = "post" >
Техт для проверки на хэштеги:<textarea id = "check_text" name = "check_text" rows = "10" cols = "80" > #авто #ремонт #мойка
Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст Текст</ textarea >
<input name = "check" type = "button" value = "Проверить" onClick = "CheckStr('#авто #ремонт #мойка')" / >
Результат:<textarea id = "out_text" name = "out_text" rows = "10" cols = "80" ></ textarea >
</ form >
</ body >
</ html >
Удачи!
Vladimir Kheifets
Отправлено: 05 Августа, 2019 - 08:51:18 • Тема: Не получается поставить метку на карту • Форум: Вопросы новичков
Ответов: 6 Просмотров: 501
algebra пишет: Задача:
дать возможность пользователю поставить собственную метку с кратким описанием.
Проблема:
Карта google загружается, метки из базы данных берутся, а функция initialize() почему-то работать не хочет.
Подскажите как подправить этот код?
map.blade.php
Спойлер (Отобразить )
PHP:
скопировать код в буфер обмена
< html>
< head>
< meta http- equiv= "content-type" content= "text/html; charset=utf-8" />
< title> Google Maps - добавление меток пользователями</ title>
{ !! $map [ "js" ] !! }
< script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js" ></ script>
< script type= "text/javascript" >
var marker;
function initialize( ) {
if ( GBrowserIsCompatible( ) ) {
var map = new GMap2( document. getElementById( "map_canvas" ) ) ;
var map = new GMap2( document. getElementById( "map_canvas" ) ) ;
map. setCenter( new GLatLng( 56. 32811, 44. 0) , 15) ;
map. addControl( new GLargeMapControl( ) ) ;
map. addControl( new GMapTypeControl( ) ) ;
GEvent. addListener( map, "click" , function ( overlay, latlng) {
if ( latlng) {
marker = new GMarker( latlng, { draggable: true } ) ;
GEvent. addListener( marker, "click" , function ( ) {
var html = "<table>" +
"<tr><td>Наименование:</td> <td><input type='text' id='name'/> </td> </tr>" +
"<tr><td>Адрес:</td> <td><input type='text' id='address'/></td> </tr>" +
"<tr><td>Тип:</td> <td><select id='type'>" +
"<option value='bar' SELECTED>Работа</option>" +
"<option value='restaurant'>Дом</option>" +
"<option value='cafe'>Дача</option>" +
"</select> </td></tr>" +
"<tr><td></td><td><input type='button' value='Сохранить' onclick='saveData()'/></td></tr></form>" ;
marker. openInfoWindow( html) ;
} ) ;
map. addOverlay( marker) ;
}
} ) ;
}
}
</script>
</ head>
< body onload= "initialize()" onunload= "GUnload()" >
< div class = "container" >
< script src= "https://maps.googleapis.com/maps/api/js?key=secret" ></ script>
{ !! $map [ "html" ] !! }
< div id= "directionsDiv" ></ div>
< div id= "map_canvas" style= "width: 800px; height: 600px" ></ div>
< div id= "message" ></ div>
</ div>
</ body>
</ html>
MapController.php
Спойлер (Отобразить )
PHP:
скопировать код в буфер обмена
<?PHP
namespace App\Http\Controllers\Site;
use FarhanWazir\GoogleMaps\GMaps;
use App\Http\Controllers\Controller;
//use Request;
class MapController extends Controller
{
public function map( )
{
$config [ 'center' ] = 'Sydney Airport,Sydney' ;
$config [ 'zoom' ] = '13' ;
$config [ 'map_height' ] = '400px' ;
$config [ 'geocodeCaching' ] = true ;
$config [ 'directions' ] = true ;
$config [ 'directionsStart' ] = 'Sydney Airport,Sydney' ;
$config [ 'directionsEnd' ] = 'Kogarah Golf Club,Sydney' ;
$config [ 'directionsDivID' ] = 'directionsDiv' ;
$gmap = new GMaps( ) ;
$gmap -> initialize ( $config ) ;
$marker [ 'position' ] = 'Sydney Airport,Sydney' ;
$marker [ 'infowindow_content' ] = 'Sydney Airport,Sydney' ;
$gmap -> add_marker ( $marker ) ;
$marker [ 'position' ] = 'Kogarah Golf Club,Sydney' ;
$marker [ 'infowindow_content' ] = 'Kogarah Golf Club,Sydney' ;
$gmap -> add_marker ( $marker ) ;
$marker [ 'position' ] = 'The Lakes Golf Club,Sydney' ;
$marker [ 'infowindow_content' ] = 'The Lakes Golf Club,Sydney' ;
$gmap -> add_marker ( $marker ) ;
$map = $gmap -> create_map ( ) ;
return view
( 'site.map' , compact ( 'map' ) ) ; }
}
Добрый день!
1. В map.blade.php Вы показали JS function initialize()
В ней не определена переменная [b]latlng [/b]
Вам нужно посмотреть в консоле браузера ошибки JS
2. В MapController.php PHP-class GMaps()
Не очень понятно как метод initialize PHP-класса GMaps()
связан с JS function initialize() из map.blade.php
Удачи!
Страниц (59): В начало « ... 27 28 29 30 [31] 32 33 34 35 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB