PHP.SU

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

Страниц (3): « 1 [2] 3 »

> Найдено сообщений: 39
BlackHacker Отправлено: 12 Июня, 2013 - 10:52:31 • Тема: Доступ к определенным ключам ассоциативного массива • Форум: Хранение данных, их вывод и обработка

Ответов: 4
Просмотров: 1760
Саныч пишет:
PHP:
скопировать код в буфер обмена
  1. function getKeys(&$array, $search) {
  2.         $result = [];
  3.         foreach ($array as $k => $v)
  4.                 if (is_array($v) && array_key_exists($search, $v))
  5.                         $result[] = $k;
  6.         return $result;
  7. }
  8.  
  9. var_dump(getKeys($a, 'b')); // array(1) {[0]=>string(1) "i"}


Спасибо, так и сделал пока, но изначально в вопросе не написал, что хотел именно через array_keys, или подобные стандартные функции php, т.к. массив очень большой, а foreach работает в разы дольше, перебирая каждый элемент
BlackHacker Отправлено: 12 Июня, 2013 - 07:17:47 • Тема: Доступ к определенным ключам ассоциативного массива • Форум: Хранение данных, их вывод и обработка

Ответов: 4
Просмотров: 1760
Всем привет. Есть ассоциативный массив, например, вида
PHP:
скопировать код в буфер обмена
  1. $a = array();
  2. $a['i']['b']['c']='d';
  3. $a['i']['s']='q';
  4. $a['i']['g']='d';
  5. $a['l']['k']['c']='d';
  6. $a['l']['h']='q';
  7. $a['l']['l']='d';
  8. $a['m']['k']['c']='d';
  9. $a['m']['h']='q';
  10. $a['m']['l']='d';


Как можно получить ключи, например, со значением ['b'] (должен вернуть ключ ['i'])? Пробовал через array_keys указывать значение, но сразу подозревал, что так не получится)
BlackHacker Отправлено: 07 Апреля, 2013 - 05:56:06 • Тема: insert и update в одном запросе • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 37
Тогда придется делать два запроса. А велика ли вероятность, что пока выполнился первый запрос Select, но еще не выполнился второй запрос Update, другой пользователь может получить эти данные в этот промежуток времени между запросами? (если конечно нагрузка на сайт будет большая)
BlackHacker Отправлено: 06 Апреля, 2013 - 20:51:02 • Тема: insert и update в одном запросе • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 37
Привет всем. Долго гуглил, но решения найти не смог. Да и язык MySql знаю не слишком хорошо. Хотелось бы составить такой запрос, который выберет запись из базы, и одновременно обновит данные в ней (нужно получить данные для работы с ними, и пометить эту строку в таблице как заблокированную, чтобы другой пользователь не смог получить к ней доступ, пока эти данные используются другим пользователем). Заранее спасибо за помощь.
BlackHacker Отправлено: 29 Сентября, 2012 - 10:33:33 • Тема: Проблема с $_POST • Форум: Вопросы новичков

Ответов: 4
Просмотров: 175
Firebug показывает, что оба идут как POST. Заголовки у обоих одинаковые. Единственное различие только в параметре data. В первом запросе он 0, во втором - строка. Если первый запрос разбирается хорошо, где ошибка во втором?
Мелкий пишет:
Более чем достаточная аргументация рыть флеш, а не PHP.

флеш использует одну и ту же функцию для отправки запроса. Там в любом случае POST. Единственный вариант - неправильно сформированный запрос, хотя ошибки я не увидел. Из флеш data кодирую через encodeURIComponent. Вроде все правильно
(Добавление)
Всем спасибо) Проблема решилась. Это полный эпик-фейл. Firebug добавлял в пост-параметры заголовки запроса, и образовалась каша. Поэтому php не мог разобрать их. я сперва внимания не обратил, просто повторял запрос через Firebug, т.к. он генерируется с сайта, и не хотелось формировать его снова, чтобы вывести параметры post. Пора завязывать с кодингом, а то голова уже ничего не соображает)
BlackHacker Отправлено: 29 Сентября, 2012 - 10:19:26 • Тема: Проблема с $_POST • Форум: Вопросы новичков

Ответов: 4
Просмотров: 175
KingStar пишет:


Во-первых, без urldecode все раньше обрабатывалось норм, раньше для передачи использовал JavaScript, сейчас использую Flash. Во-вторых, первый запрос нормально обрабатывается, а второй - нет. Хотя оба они почти идентичны. Есть еще предположения?
BlackHacker Отправлено: 29 Сентября, 2012 - 10:12:55 • Тема: Проблема с $_POST • Форум: Вопросы новичков

Ответов: 4
Просмотров: 175
Приветствую всех. Пишу в форум новичков, потому что не знаю, куда еще написать ТАКОЙ вопрос. Сначала html-шаблон перекосило из-за символа BOM. Потом ActionScript неправильно обрабатывал запрос из-за незамеченного символа в строке, которую я передавал. Затем JavaScript упорно тыкал меня в ошибку, что нет слешей перед кавычками, хотя раньше они всегда выводились в php. Со всеми этими кошмарами кодера я совладел, но сейчас появилась новая аномалия - не принимаются переменные в массив $_POST. Схема такая - флеш отправляет пост-запрос php-скрипту. Затем отсылает запрос на другой адрес, а результат отсылает снова тому скрипту. Функция отправки одна и та же, только адрес и данные разные. Вот пример:
первый запрос к скрипту
Спойлер (Отобразить)

потом отправка запроса на другой адрес, и затем снова запрос к скрипту
Спойлер (Отобразить)

передаются те же самые данные, меняется только значение "data". В первом случае оно - 0, во втором - ответ от второго сервера.



выводит

Уже нет ни злости, ни терпения искать причины всех этих явлений. Помогите пожалуйста, или я что-нибудь разобью
BlackHacker Отправлено: 06 Сентября, 2012 - 07:21:03 • Тема: Многомерный массив • Форум: Хранение данных, их вывод и обработка

Ответов: 10
Просмотров: 3027
всем спасибо, проблему решил. причина была в том, что в ряде случаев переменной не было. добавил проверку на наличие переменной, теперь все работает
BlackHacker Отправлено: 04 Сентября, 2012 - 19:17:11 • Тема: Многомерный массив • Форум: Хранение данных, их вывод и обработка

Ответов: 10
Просмотров: 3027
armancho7777777 пишет:
Проверьте:
PHP:
скопировать код в буфер обмена
  1. echo (isset($result['u']['i'])) ? $result['u']['i'] : '';

теперь без ошибки выводит) спасибо
BlackHacker Отправлено: 04 Сентября, 2012 - 19:03:59 • Тема: Многомерный массив • Форум: Хранение данных, их вывод и обработка

Ответов: 10
Просмотров: 3027
Vinyl пишет:
Я бы не заморачивался:
Подмигивание

придется обойтись этим решением) но теперь мне это не даст покоя, что где-то там ошибка) потому что мне не понятна ее причина
BlackHacker Отправлено: 04 Сентября, 2012 - 18:59:06 • Тема: Многомерный массив • Форум: Хранение данных, их вывод и обработка

Ответов: 10
Просмотров: 3027
Мелкий пишет:
Дальше по тексту ошибки написано даже, в какой строке проблема. Раз массив многомерный - самая простая ошибка - искать не на том уровне, где тот должен быть.

Так я знаю, где проблема, оттуда и взял индекс. Если бы что-то было не верно, код бы не работал. Но все работает, просто по какой-то причине ошибку пишет.

Vinyl, массив заполняется следующим образом:

PHP:
скопировать код в буфер обмена
  1. function buildrequest(параметры){
  2. $result = curl_exec($ch); // запрос curl
  3. $result=substr($result, 0, -33); //обрезаю лишние символы ответа
  4. $result= str_replace("'", "", $result); //убираю кавычки
  5. $result = load_json_utf8($result);//кодировка в utf-8, и возврат json-массива
  6. return $result;
  7. }
  8.  
  9. function load_json_utf8($content_str)
  10. {
  11.         $content_str=substr(
  12.                 $content_str,      
  13.                 min(
  14.                         strpos($content_str.'[','['),
  15.                         strpos($content_str.'{','{')
  16.                 )
  17.         );
  18.         return json_decode($content_str, true);  
  19. }
  20.  
  21. $result=buildrequest(параметры);//заполняю массив
  22. echo $result['u']['i'];//выводит нужные данные, которые там ЕСТЬ. Но так же почему-то пишет ошибку
  23.  
BlackHacker Отправлено: 04 Сентября, 2012 - 18:39:53 • Тема: Многомерный массив • Форум: Хранение данных, их вывод и обработка

Ответов: 10
Просмотров: 3027
Всем привет. Столкнулся с такой ошибкой:
Цитата:
Notice: Undefined index: u

Индекс u в массиве присутствует, выводится через echo, и даже все работает. Я бы может и не заморачивался из-за этого, но результат работы скрипта выводится в ajax, и некрасиво, что там вываливаются ошибки. Массив проходит через несколько функций, может, причина в этом. Если кто-нибудь знает, отпишитесь.
BlackHacker Отправлено: 03 Сентября, 2012 - 15:50:56 • Тема: Select-запрос, с выбором нескольких строк • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 68
illy, спасибо огромное! только скобку одну пропустил)
Vinyl, нет, надо все результаты, которые в базе) почему-то сразу не подумал, что надо в цикле перебирать. в пхп про функцию написано, что она сразу массив возвращает
BlackHacker Отправлено: 03 Сентября, 2012 - 15:42:47 • Тема: Select-запрос, с выбором нескольких строк • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 68
Всем привет. В общем, проблема в том, что запрос в базу возвращает только один элемент, хотя условиям запроса соответствует две и более строк в таблице.
Запрос принимает следующий вид:
PHP:
скопировать код в буфер обмена
  1. ("SELECT login FROM accounts WHERE owner_id='".$_COOKIE['id']."'")

В правильности запроса уверен на 99%, т.к. несколько раз перечитал faq.
Возвращается только первый подходящий элемент, т.е. значение 'login', хотя в таблице у двух строк owner_id одинаковый.
Буду признателен, если кто-нибудь поможет с решением.
BlackHacker Отправлено: 27 Августа, 2012 - 19:45:24 • Тема: Поможете с регуляркой? • Форум: Регулярные выражения

Ответов: 2
Просмотров: 243
нужно убрать лишние кавычки. в голову пришла только одна идея - искать текст между :" и "} и проверять количество кавычек. если больше двух - убирать лишние, т.к. из-за них строка корректно не обрабатывается. но я не слишком хорошо умею составлять регулярные выражения, поэтому пришел за помощью сюда.

Страниц (3): « 1 [2] 3 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB