PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (13): « 1 2 3 [4] 5 6 7 8 9 ... » В конец

> Найдено сообщений: 195
nepster Отправлено: 02 Августа, 2013 - 03:18:50 • Тема: Несколько вопросов для повышения квалификации • Форум: Вопросы новичков

Ответов: 4
Просмотров: 186
Все примет, вот хотелось бы узнать пару нюансов по работе с веб приложениями. Хотелось бы подискутировать и увидеть мнения/советы/решения коллег.

За ранее большое спасибо за ответы!


1) AJAX Запрос? Оптимизация!
Собственно работаю с ajax. Есть форма нужно защититься от "дрожащих рук клиента". Тоесть пока выполняется запрос заблокировать все остальные кнопки, чтобы не могли зажать ентер к примеру и "задедосить" сервер (пусть даже случайно).
Пример в приложенном файле

Кнопку заблокировать легко, а как заблокировать ссылку на момент загрузки ?
Или как кто решает проблему, затягивает экран прозрачной темной пленкой на момент загрузки ?


2) hidden поля
Кто в каких целях использует inpute type="hidden", приведите пожалуйста примеры ?



3) как правильно обрабатывать данные php
к примеру есть форма, которая посылает данные на сервер.
Кто как делает валидацию данных ?



4) Как лучше хранить денежное значение в базе и работать на сервере ?



5) Собственно вопрос про 0 и false

Ситуация когда нужно проверить есть ли значение в переменно и оно равно 0
Мой вариант решения:
PHP:
скопировать код в буфер обмена
  1.  
  2. $result = 0;
  3. if($result || (string)$result == '0')
  4.  


А как Вы решаете данную задачу?



6) достаточно ли принудительно указать тип данных для предотвращения sql инъекции



И достаточно ли для строки:

nepster Отправлено: 23 Июля, 2013 - 20:48:17 • Тема: Получить данные из формы jquery • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 2304
то что нужно спасибо!
nepster Отправлено: 23 Июля, 2013 - 14:36:44 • Тема: Получить данные из формы jquery • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 2304
CODE (html):
скопировать код в буфер обмена
  1. 'input[name="AjaxSearchData[user]"]'


нам изначально не известно [name="AjaxSearchData[user]"]

Это может быть AjaxSearchData[news] и др.
nepster Отправлено: 23 Июля, 2013 - 02:45:02 • Тема: Получить данные из формы jquery • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 2304
Подскажите пожалуйста, как решить такую проблему:

есть инпут:
CODE (html):
скопировать код в буфер обмена
  1. <input type="text" name="AjaxSearchData[user]" class="SearchFast" placeholder="Поиск ..." />



нудно получить данные этого инпута
CODE (javascript):
скопировать код в буфер обмена
  1. var SearchData = $('input['+this.name+']').val();



проблема в скобках:
CODE (htmlphp):
скопировать код в буфер обмена
  1. Error: Syntax error, unrecognized expression: [AjaxSearchData[user]]
nepster Отправлено: 15 Июля, 2013 - 03:02:20 • Тема: Выборка за день SQL • Форум: Работа с СУБД

Ответов: 2
Просмотров: 976
Подскажите пожалуйста как сделать выборку данных за день именно c 00:00 по 00:00
(а не за 24 часа)
nepster Отправлено: 10 Июля, 2013 - 10:32:43 • Тема: Переворот картинок • Форум: Вопросы новичков

Ответов: 3
Просмотров: 170
нет, если просмотреть прямой адрес
site.ru/1.jpg изображение перевернуто

если смотреть на изображение из папки на сервере www к примеру, то все нормально.

Никаких css стилей не применялось
nepster Отправлено: 10 Июля, 2013 - 00:15:36 • Тема: Переворот картинок • Форум: Вопросы новичков

Ответов: 3
Просмотров: 170
собственно столкнулся с такой проблемой, гружу на сервер файл (картинку).

Грузится все хорошо и при этом по какой-то причине вертикальные картинки переворачиваются горизонтально.

Тоесть через <img> тек вертикальная картинка отображается горизонтально
При открытии прямого адреса тоже самое.

Проверяю картинку на сервере, с ней все в порядке. Подскажите в чем может быть проблема ?
nepster Отправлено: 24 Июня, 2013 - 05:18:56 • Тема: Поиск в многомерном массиве • Форум: Вопросы новичков

Ответов: 1
Просмотров: 123
Подскажите пожалуйста есть ли безвелосипедный способ решения подобной задачи:

есть многомерный массив
CODE (htmlphp):
скопировать код в буфер обмена
  1. (
  2.     [camp] => Array
  3.         (
  4.             [0] => old
  5.             [1] => new
  6.         )
  7.  
  8.     [test] => Array
  9.         (
  10.             [0] => Array
  11.                 (
  12.                     [0] => camp
  13.                     [1] => silver
  14.                 )
  15.  
  16.             [1] => lord
  17.         )
  18.  
  19.     [color] => Array
  20.         (
  21.             [0] => red
  22.         )
  23.  




нужно узнать, есть ли в нем значение к примеру "red"

тоесть функции достаточно вернуть true, если такое значение есть и false, если такого значения во всем массиве нет
nepster Отправлено: 08 Июня, 2013 - 14:15:56 • Тема: Отправка данных и обработка AJAX формы (jQUERY+Form Plugin) • Форум: JavaScript & VBScript

Ответов: 0
Просмотров: 1619
Собственно представляю свою реализацию:


собственно сама форма:
CODE (html):
скопировать код в буфер обмена
  1. <!doctype html>
  2. <html>
  3. <head>
  4.         <meta charset="utf-8" />
  5.         <title>HTML 5</title>
  6.  
  7.     <script type="text/javascript" src="jquery.js"></script>
  8.     <script type="text/javascript" src="js.js"></script>
  9.     <script src="http://malsup.github.com/jquery.form.js"></script>
  10.  
  11.     <style type="text/css">
  12.        
  13.         input[type=text],input[type=email],input[type=password], select
  14.         {
  15.             width:300px;
  16.             padding:5px;
  17.             border: solid 1px silver;
  18.         }
  19.        
  20.        
  21.         textarea
  22.         {
  23.             width:400px;
  24.             min-height:100px;
  25.             padding:5px;
  26.             border: solid 1px silver;
  27.         }
  28.        
  29.        
  30.         input[type=radio], input[type=checkbox]
  31.         {
  32.             padding:5px;
  33.         }
  34.        
  35.        
  36.         /* подсвечиваем поле с ошибкой */
  37.         input.error-field, select.error-field, textarea.error-field
  38.         {
  39.             border: solid 1px red;
  40.         }
  41.        
  42.        
  43.         /* Класс для обработки ошибок */
  44.         .error
  45.         {
  46.             padding:0px;
  47.             margin-top: 2px;
  48.             margin-bottom: 10px;
  49.             color:red;
  50.         }
  51.        
  52.        
  53.         /* Класс для загруки */
  54.         .loader
  55.         {
  56.             display: none;
  57.         }
  58.    
  59.     </style>
  60.  
  61.    
  62. </head>
  63.         <body>
  64.    
  65.    
  66.     <div style="border: solid 2px black; width:500px; float:left;">  
  67.         <form action="js.php" method="post" id="reg-form" name="reg-form" enctype="multipart/form-data">
  68.        
  69.         <input type="hidden" name="token" value="123456" />
  70.         <input type="hidden" name="obj_id" value="123" />
  71.        
  72.        
  73.         <div class="form_item">
  74.             <input type="text" name="login" />
  75.             <label> - Логин</label>
  76.             <div class="error"></div>
  77.         </div>
  78.        
  79.         <div class="form_item">
  80.             <input type="password" name="password" />
  81.             <label> - Пароль</label>
  82.             <div class="error"></div>
  83.         </div>
  84.        
  85.         <div class="form_item">
  86.             <input type="email" name="email" />
  87.             <label> - Почта</label>
  88.             <div class="error"></div>
  89.         </div>
  90.        
  91.         <div class="form_item">
  92.             <input type="text" name="test" />
  93.             <label> - Тест</label>
  94.             <div class="error"></div>
  95.         </div>
  96.        
  97.         <div class="form_item">
  98.             <input type="file" name="img[]" />
  99.             <input type="file" name="img[]" />
  100.             <label> - Файл</label>
  101.             <div class="error"></div>
  102.         </div>
  103.        
  104.         <div class="form_item">
  105.             <select name="choice">
  106.                 <option value="1">Выбор 1</option>
  107.                 <option value="2">Выбор 2</option>
  108.                 <option value="3">Выбор 3</option>
  109.                 <option value="4">Выбор 4</option>
  110.                 <option value="5">Выбор 5</option>
  111.             </select>
  112.             <div class="error"></div>
  113.         </div>
  114.        
  115.         <div class="form_item">
  116.             <textarea cols="20" rows="5" name="text"></textarea>
  117.             <div class="error"></div>
  118.         </div>
  119.        
  120.         <div class="form_item">
  121.             <input type="checkbox" name="checkbox1" /> 1 и
  122.             <input type="checkbox" name="checkbox2" /> 2
  123.             <div class="error"></div>
  124.         </div>
  125.        
  126.         <div class="form_item">
  127.             <input type="radio" name="radio" value="1" /> 1 и
  128.             <input type="radio" name="radio" value="2" /> 2
  129.             <div class="error"></div>
  130.         </div>
  131.        
  132.        
  133.         <div class="loader">Загрузка...</div>
  134.         <div class="error"></div>
  135.         <div id="message"></div>
  136.        
  137.         <div class="form_item"><input type="submit" value="test" id="test_1" /></div>
  138.        
  139.         </form>
  140.     </div>  
  141.    
  142.    
  143.  
  144.  
  145.    <script type="text/javascript">
  146.  
  147.         $('#test_1').click(function(event)
  148.         {
  149.             var form_obj = '#reg-form'; // объект формы
  150.        
  151.             // почистить форму от ошибок
  152.             FormGiveItClean(form_obj, new Object());
  153.                
  154.             var options =
  155.             {
  156.                 beforeSubmit:ResponseRequest, success:ResponseSuccess, error:ResponseError, complete: ResponseComplete,
  157.                 dataType:  'JSON', clearForm: false, resetForm: false//, timeout:   3000
  158.             };
  159.            
  160.             $(form_obj).ajaxForm(options);
  161.              
  162.             function ResponseSuccess(response, code, xhr, $form)  
  163.             {
  164.                 if(parseInt(response.status) === 1)
  165.                 {
  166.                     alert('OK');
  167.                 }
  168.                 else
  169.                     RequestError(form_obj, new Object(), response); // обработчик ошибок полей формы
  170.             }
  171.         });
  172.    
  173.     </script>
  174.    
  175.    
  176.    
  177.         </body>
  178. </html>






файл js.js
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.  
  3. // обработка при ошибки AJAX запроса
  4. function ResponseError(response, code, xhr, $form)  
  5. {
  6.     if(code == 'parsererror')
  7.     {
  8.         alert('Возникла ошибка, некорректный формат JSON');
  9.     }
  10.     else
  11.     {
  12.         alert('Возникла неизвестная ошибка!');
  13.     }
  14. }
  15.  
  16.  
  17. // обработка при старте AJAX запроса
  18. function ResponseRequest(formData, jqForm, options)
  19. {
  20.     // показать загрузку
  21.     $(jqForm).find('.loader').css({'display':'block'});
  22.    
  23.     // отключаем кнопку
  24.     $(jqForm).find('input[type=submit]').attr('disabled','disabled');
  25.    
  26.     return true;
  27. }
  28.  
  29.  
  30. // обработка при завершении AJAX запроса
  31. function ResponseComplete(response, code, jqForm)  
  32. {
  33.     // скрыть загрузку
  34.     $(jqForm).find('.loader').css({'display':'none'});
  35.    
  36.     // включаем кнопку
  37.     $(jqForm).find('input[type=submit]').removeAttr('disabled');
  38. }
  39.  
  40.  
  41.          
  42. // обработчик полей при ошибке
  43. function FormGiveItClean(form_obj, params_form)
  44. {
  45.     var form_obj    = form_obj                || "AJAX-FROM";
  46.     var class_fitem = params_form.class_fitem || '.form_item';
  47.     var class_error = params_form.class_error || '.error';
  48.     var addClassErr = params_form.addClassErr || 'error-field';
  49.    
  50.     $(form_obj).each(function(i, field)
  51.     {
  52.         // во всей форме чистим поля для ошибок
  53.         $(this).find(class_error).html('');
  54.        
  55.         // во всей форме чистим поля для ошибок
  56.         $(this).find('input').removeClass(addClassErr);
  57.         $(this).find('textarea').removeClass(addClassErr);
  58.    
  59.     });
  60.  
  61. }
  62.  
  63.  
  64. // обработчик полей при ошибке
  65. function RequestError(form_obj, params_form, msg)
  66. {
  67.     var form_obj    = form_obj                || "AJAX-FROM";
  68.     var class_fitem = params_form.class_fitem || '.form_item';
  69.     var class_error = params_form.class_error || '.error';
  70.     var addClassErr = params_form.addClassErr || '.error-field';
  71.    
  72.     // выборка поля с ошибкой
  73.     var form_error_field = "[name="+msg.error.field+"]";
  74.     var num_element = 0; // номер ошибочного поля. По умолчанию 0, для полей без массива
  75.  
  76.     // ПРОВЕРЯЕМ НАЛИЧИНЕ МАССИВА
  77.     var a = /\[(.*[\s\S]*?)\]/.exec(msg.error.field);
  78.  
  79.     if(a != null)
  80.     {
  81.         // проверяем и экранируем скобки массива
  82.         if(msg.error.field.indexOf(a[0]) + 1)
  83.         {
  84.             msg.error.field = msg.error.field.replace(a[0], '');
  85.             // выборка ошибочного поля
  86.             form_error_field = "[name="+msg.error.field+'\\[\\]'+"]";
  87.             num_element = a[1]; // элемент массива, в котором ошика
  88.         }
  89.     }
  90.    
  91.     // обрабатываем ошики для поля
  92.     if($(form_obj).find(form_error_field).length)
  93.     {
  94.         // поднимаем скрол вверх
  95.         var destination = $(form_obj).find(form_error_field).eq(num_element).offset().top;
  96.         jQuery(form_obj).animate({scrollTop: destination}, 300);
  97.        
  98.         // устанавливаем фокус
  99.         $(form_obj).find(form_error_field).eq(num_element).focus();
  100.        
  101.         // сообщение о ошибке
  102.         // удаляем точку в классе
  103.         addClassErr = addClassErr.substr(1);
  104.         $(form_obj).find(form_error_field).eq(num_element).addClass(addClassErr);
  105.        
  106.         // выводим сообщение об ошибке
  107.         if($(form_obj).find(form_error_field).eq(num_element).parent(class_fitem).children(class_error).length)
  108.         {  
  109.             // сообщение о ошибке под полем
  110.             $(form_obj).find(form_error_field).eq(num_element).parent(class_fitem).children(class_error).html(msg.error.message);
  111.         }
  112.         else if($(form_obj +' > '+ class_error).length)
  113.         {
  114.             // сообщение о ошибке под формой  
  115.             $(form_obj +' > '+ class_error).html(msg.error.message);
  116.         }
  117.         else
  118.         {
  119.             // удаляем точку в классе
  120.             class_error = class_error.substr(1);
  121.             // сообщение о ошибке под формой
  122.             $('<div>'+msg.error.message+'</div>').eq(num_element).addClass(class_error).appendTo(form_obj);
  123.         }
  124.     }
  125.    
  126. }




Тестовый файл PHP
Естественно проверка формы тестовая и использовать такую валидацию у себя в проекте не стоит

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.     //header('Content-Type: application/json; charset=utf8');
  3.     sleep(1);
  4.    
  5.  
  6.     // Аналог json_encode
  7.     function json_encode_utf8($arr)
  8.     {
  9.         $parts = array();
  10.         $is_list = false;
  11.        
  12.         if (!is_array($arr)) return;
  13.         if (count($arr)<1) return '{}';
  14.        
  15.         //Find out if the given array is a numerical array
  16.         $keys = array_keys($arr);
  17.         $max_length = count($arr);
  18.                
  19.         if(($keys[0] == 0) and ($keys[$max_length] == $max_length)) {//See if the first key is 0 and last key is length - 1
  20.             $is_list = true;
  21.             for($i=0; $i<count($keys); $i++) { //See if each key correspondes to its position
  22.                 if($i != $keys[$i]) { //A key fails at position check.
  23.                     $is_list = false; //It is an associative array.
  24.                     break;
  25.                 }
  26.             }
  27.         }
  28.         foreach($arr as $key=>$value) {
  29.             if(is_array($value)) { //Custom handling for arrays
  30.                 if($is_list) $parts[] = json_encode_utf8($value); /* :RECURSION: */
  31.                 else $parts[] = '"' . $key . '":' . json_encode_utf8($value); /* :RECURSION: */
  32.             } else {
  33.                 $str = '';
  34.                 if(!$is_list) $str = '"' . $key . '":';
  35.                 //Custom handling for multiple data types
  36.                 if(is_numeric($value)) $str .= $value; //Numbers
  37.                 elseif($value === false) $str .= 'false'; //The booleans
  38.                 elseif($value === true) $str .= 'true';
  39.                 else $str .= '"' . addslashes($value) . '"'; //All other things
  40.                 // :TODO: Is there any more datatype we should be in the lookout for? (Object?)
  41.                 $parts[] = $str;
  42.             }
  43.         }
  44.         $json = implode(',',$parts);
  45.         if($is_list) return '[' . $json . ']';//Return numerical JSON
  46.         return '{' . $json . '}';//Return associative JSON
  47.     }
  48.  
  49.    
  50.     // проверяем данные формы
  51.     function CheckFormData()
  52.     {
  53.         if(!$_REQUEST['token'])
  54.         {
  55.             return 'ERROR_INCCORECT|TOKEN';
  56.         }
  57.         else if(!$_REQUEST['obj_id'])
  58.         {
  59.             return 'ERROR_INCCORECT|OBJ_ID';
  60.         }
  61.         else if(!$_REQUEST['login'])
  62.         {
  63.             return 'ERROR_INCCORECT|LOGIN';
  64.         }
  65.         else if(!$_FILES['img'])
  66.         {
  67.             return 'ERROR_INCCORECT|IMG[1]';
  68.         }
  69.         else if(!$_REQUEST['password'])
  70.         {
  71.             return 'ERROR_INCCORECT|PASSWORD';
  72.         }
  73.         else if(!$_REQUEST['email'])
  74.         {
  75.             return 'ERROR_INCCORECT|EMAIL';
  76.         }
  77.         else if(!$_REQUEST['test'])
  78.         {
  79.             return 'ERROR_INCCORECT|TEST';
  80.         }
  81.         else if(!$_REQUEST['choice'])
  82.         {
  83.             return 'ERROR_INCCORECT|CHOICE';
  84.         }
  85.         else if(!$_REQUEST['text'])
  86.         {
  87.             return 'ERROR_INCCORECT|TEXT';
  88.         }
  89.         else if(!$_REQUEST['text2'])
  90.         {
  91.             return 'ERROR_INCCORECT|TEXT2';
  92.         }
  93.         else if(!isset($_REQUEST['checkbox1']))
  94.         {
  95.             return 'ERROR_INCCORECT|CHECKBOX1';
  96.         }
  97.         else if(!isset($_REQUEST['radio']))
  98.         {
  99.             return 'ERROR_INCCORECT|RADIO';
  100.         }
  101.     }
  102.    
  103.    
  104.     function Result($implementation, $data = array())
  105.     {
  106.         // результат
  107.         $result = array();
  108.         $result['status'] = 0;
  109.        
  110.         if($implementation === true)
  111.         {
  112.             $result['status'] = 1;
  113.             if($data)
  114.                 $result['data'] = $data;
  115.         }
  116.         else
  117.         {
  118.             // языковой файл
  119.             include 'ru.php';
  120.            
  121.             // КОД ОШИБКИ, ПРИМЕР: ERROR_INCCORECT|LOGIN
  122.             // ГДЕ ПОСЛЕДНИЙ ЭЛЕМЕНТ - НАЗВАНИЕ ПОЛЯ
  123.             // РАЗБИВАЕМ КОД ОШИБКИ
  124.             $field = explode('|',$implementation);
  125.             $field = strtolower(end($field));
  126.            
  127.             if (!array_key_exists($implementation, $lang))
  128.             {
  129.                 $message = $lang['DEFAULT'];
  130.             }
  131.             else
  132.                 $message = $lang[$implementation];
  133.            
  134.             $result['error']  = array('code' =>$implementation, 'message'=>$message, 'field' => $field);
  135.         }
  136.    
  137.         return json_encode_utf8($result);
  138.     }
  139.    
  140.     /*
  141.     print_r($_POST);
  142.     print_r($_GET);
  143.     print_r($_FILES);
  144.     print_r($_REQUEST);*/
  145.    
  146.    
  147.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  148.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  149.     // обрабатываем данные формы
  150.     $implementation = CheckFormData();
  151.     // формируем результат
  152.     $result = Result($implementation);
  153.     // ответ в формате JSON
  154.     echo $result;





Жду ваших отзывов и комментариев. Очень буду благодарен, если укажите на ошибки или поделитесь советом и своими правками
nepster Отправлено: 08 Июня, 2013 - 13:28:35 • Тема: Perfect Money подтверждение средств • Форум: Вопросы новичков

Ответов: 4
Просмотров: 502
https://perfectmoney[dot]com/sample-api[dot]html
вот примеры апи perfectmoney


именно пример проверки статуса платежа
https://perfectmoney[dot]com/acct/sa[dot][dot][dot]ample_status[dot]txt

мало того, что тут ошибка в примере, там есть момент (нашел на стороннем форуме) где нужно немного подшаманить с хешем, а сама проверка сравнивает их хеш с хешем пост данных, которые попадают в скрипт только если пользователь нажмет продолжить и никак иначе.


может я что-то упустил ?
nepster Отправлено: 08 Июня, 2013 - 13:22:07 • Тема: Форма, обработать ошибки • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 773
точно. Я как то не подумал, рассчитывал на то, что блочный элемент в блочном элементе, все нормально. Спасибо.
nepster Отправлено: 07 Июня, 2013 - 21:28:52 • Тема: Регулярное выражение, получить содержимое скобок в строке • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1502
не осилил =(

CODE (javascript):
скопировать код в буфер обмена
  1. var a = /[\\[\]+(\d)[\\]\]/.exec( '...[34]...');


Вернуло 4]


CODE (javascript):
скопировать код в буфер обмена
  1.         var s = '...[34]...';
  2.         var myRe = /[(.+?)]/g;
  3.         var myArray = s.match(myRe);


null
(Добавление)
CODE (javascript):
скопировать код в буфер обмена
  1. var a = /\[(.*[\s\S]*?)\]/.exec(msg.error.field);


Случайно нашел решение
nepster Отправлено: 07 Июня, 2013 - 21:00:52 • Тема: Perfect Money подтверждение средств • Форум: Вопросы новичков

Ответов: 4
Просмотров: 502
а как вариант парсить почтовый адрес ?


к примеру в базе таблица по токенам оплаты и статус.

И крон, который каждые 10 минут проверяет письма с оплатой.?
nepster Отправлено: 07 Июня, 2013 - 18:24:38 • Тема: Perfect Money подтверждение средств • Форум: Вопросы новичков

Ответов: 4
Просмотров: 502
Столкнулся с такой проблемой:

пользователь заходит на сайт, начинает работать с Perfect Money
его кидает на их сайт, он выбирает счета делает все дела, оплачивает.

Далее такая дилемма:
на сайте Perfect Money есть кнопка продолжить, есть ее нажать после оплаты, пользователя вернет на сайт и пройдет проверка статуса его оплаты.
До этого момента все хорошо и отлично работает.


Теперь момент, если пользователь берет закрывает браузер/закрывает сайт Perfect Money/ не наживает продолжить, а просто делает шаг назад/ в общем все случаи, когда он не нажимает на кнопку продолжить.

Тогда проверить статус его оплаты невозможно.

Либо Это дикий фейл Perfect Money, либо есть возможность проверить статус оплаты как-то по другому ?

там приходят письма о статусе оплаты на указанную почту, будет ли логично постоянно парсить ящик? или все-же есть еще какой-то способ ?
nepster Отправлено: 07 Июня, 2013 - 18:22:42 • Тема: Регулярное выражение, получить содержимое скобок в строке • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1502
Подскажите пожалуйста, как с помощью js можно получить содержимое скобок в строке.

CODE (htmlphp):
скопировать код в буфер обмена
  1. Вот к примеру [тестовая] строка


нужно в переменную получить содержимое [], тоесть тестовая

По php то вот так:
PHP:
скопировать код в буфер обмена
  1.     preg_match('#\((.+?)\)#i', "Вот тут текст, (а это мы получим) в переменной тест 2", $test2);
  2.     echo $test2[1];


а в js никак не получается реализовать

Страниц (13): « 1 2 3 [4] 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB