PHP.SU

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

Страниц (30): В начало « ... 14 15 16 17 [18] 19 20 21 22 ... » В конец

> Найдено сообщений: 446
GoDr Отправлено: 10 Февраля, 2015 - 13:56:41 • Тема: Ошибка в mysql запросе • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 101
а вот в mysqli_query всё наоборот

Цитата:
mysql_query ( string $query [, resource $link_identifier = NULL ] )
mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )
GoDr Отправлено: 10 Февраля, 2015 - 13:51:27 • Тема: Перебор элементов и вывод сортировки алфавитом • Форум: Вопросы новичков

Ответов: 8
Просмотров: 535
RickMan пишет:
И что это даст?
ну например читаемость кода и более гибкое управление содержимым Закатив глазки
PHP:
скопировать код в буфер обмена
  1.  
  2. // Имеем такие данные из базы
  3. $rows[0]['alfa'] = 'A';
  4. $rows[0]['name'] = 'Atest1';
  5. $rows[1]['alfa'] = 'A';
  6. $rows[1]['name'] = 'Atest2';
  7. $rows[2]['alfa'] = 'B';
  8. $rows[2]['name'] = 'Btest1';
  9. $rows[3]['alfa'] = 'B';
  10. $rows[3]['name'] = 'Btest2';
  11. $rows[4]['alfa'] = 'C';
  12. $rows[4]['name'] = 'Ctest1';
  13. $rows[5]['alfa'] = 'C';
  14. $rows[5]['name'] = 'Ctest2';
  15.  
  16. /* Выглядит так
  17. Array
  18. (
  19.     [0] => Array
  20.         (
  21.             [alfa] => A
  22.             [name] => Atest1
  23.         )
  24.     [1] => Array
  25.         (
  26.             [alfa] => A
  27.             [name] => Atest2
  28.         )
  29.     [2] => Array
  30.         (
  31.             [alfa] => B
  32.             [name] => Btest1
  33.         )
  34.     [3] => Array
  35.         (
  36.             [alfa] => B
  37.             [name] => Btest2
  38.         )
  39.     [4] => Array
  40.         (
  41.             [alfa] => C
  42.             [name] => Ctest1
  43.         )
  44.     [5] => Array
  45.         (
  46.             [alfa] => C
  47.             [name] => Ctest2
  48.         )
  49. )
  50.  */
  51.  
  52. // Делаем нужный нам тип
  53. $itog = array();
  54. foreach($rows as $value){
  55.     $itog[$value['alfa']][] = $value['name'];
  56. }
  57.  
  58. /* Выглядит так
  59. Array
  60. (
  61.     [A] => Array
  62.         (
  63.             [0] => Atest1
  64.             [1] => Atest2
  65.         )
  66.     [B] => Array
  67.         (
  68.             [0] => Btest1
  69.             [1] => Btest2
  70.         )
  71.     [C] => Array
  72.         (
  73.             [0] => Ctest1
  74.             [1] => Ctest2
  75.         )
  76. )
  77.  */
  78.  
  79. // Приводим в нужный нам человеческий вид и выводим
  80. $result = array();
  81. foreach($itog as $key => $values){
  82.     $result[] = '<h6>' . $key . '</h6>';
  83.     $result[] = '<ul>';
  84.     foreach($values as $value){
  85.         $result[] = '<li>' . $value . '</li>';
  86.     }
  87.     $result[] = '</ul>';
  88. }
  89.  
  90. echo implode('',$result);
  91.  
  92.  
  93. /* выглядит так
  94. A
  95. Atest1
  96. Atest2
  97. B
  98. Btest1
  99. Btest2
  100. C
  101. Ctest1
  102. Ctest2
  103.  */


Не уверен что substr быстрее чем выборка в базе
GoDr Отправлено: 10 Февраля, 2015 - 13:28:53 • Тема: Ошибка в mysql запросе • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 101
запрос и идентификатор ещё бы местами поменять
GoDr Отправлено: 10 Февраля, 2015 - 13:19:49 • Тема: Парсер • Форум: Вопросы новичков

Ответов: 7
Просмотров: 404
PHP:
скопировать код в буфер обмена
  1. $site = file_get_contents("http://ria.ru/education/20150210/1046879553.html");
  2.  
  3. preg_match('#id="article_full_text".*?<p>(.*?)<div class="clear"#is', $site, $v);
  4.  
  5. echo $v[1];
GoDr Отправлено: 10 Февраля, 2015 - 13:03:42 • Тема: Перебор элементов и вывод сортировки алфавитом • Форум: Вопросы новичков

Ответов: 8
Просмотров: 535
как вариант. Усложни чуть запрос и добавь первую букву сам.
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT LEFT(`name`, 1) AS `alfa` ........

тем самым ты получишь ещё одно поле в массиве, в котором будут все твои буквы.
GoDr Отправлено: 10 Февраля, 2015 - 12:52:03 • Тема: Обновления скрипта online • Форум: Вопросы новичков

Ответов: 5
Просмотров: 287
Ch_chov, смысл смутный, сформулировать трудно, но есть. Как пример, допустим мне пришлось залезть в стилевые файлы, или ядро движка, или картинки оформления, может быть в языковые файлы. Не все же файлы в пользовательских шаблонах.. При простом update (тупым замещении файлов) я поменяю всё на оригинальные версии. При этом удалю свои "примочки" и "прибамбасики"

Вот и родилась мысль понимать что именно собирается измениться
GoDr Отправлено: 10 Февраля, 2015 - 12:47:21 • Тема: Изменить input • Форум: Напишите за меня, пожалуйста

Ответов: 4
Просмотров: 72
webog пишет:
Нужно изменить input. Т.е. если юзер не писал туда ничего input активен, если добавил допустим почту, то изменить уже нельзя.
а это как? Т.е. а ввожу почту по буквам и на какой букве обработчик должен понять что я закончил вводить адрес?
GoDr Отправлено: 10 Февраля, 2015 - 12:45:13 • Тема: Поиск пользователей по базе • Форум: Вопросы новичков

Ответов: 3
Просмотров: 193
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `id` FROM `table` WHERE `first_name` = 'Иванов' AND `last_name` = 'Иван';


Но вот что такое
egor2010 пишет:
через один input искал
я совсем не понял. Если INPUT относится SQL, то он используется для вставки. Чтобы "искал" и выводил используется SELECT + WHERE, т.е. что выводим и при каком условии
GoDr Отправлено: 10 Февраля, 2015 - 12:34:46 • Тема: Скрыть часть кода (вывод телефона) • Форум: Программирование на PHP

Ответов: 7
Просмотров: 1079
Я тебе показал общий пример и логику...

что тебе нужно сначала:

1. присвоить идентификаторы полям по которым ты будешь понимать из какого объекта брать телефон.. Ну что-то такое
CODE (html):
скопировать код в буфер обмена
  1. <li class="label" id="phone_label_777" onclick="fulllab(777)">И....</li>
  2. <li class="value" id="phone_data_777" onclick="fulltel(777)">+7...</li>
  3.  

2. Я не понял что такое phone_label и что такое phone_data, но допустим ФИО и телефон. И для этого сделаем две функции (хотя можно не использовать onclick и функции, а сделать один общий обработчик, но пусть так будет для наглядности). Также добавим ещё по одной переменной чтобы обработчик понял что хотим искать
CODE (javascript):
скопировать код в буфер обмена
  1. <script>
  2.     function fulllab($a) {
  3.         $.post("ajax.php", {
  4.             task: 'label',
  5.             id: $a
  6.         }, function (data) {
  7.             $("#phone_label_" + $a).text(data);
  8.         });
  9.     }
  10.     function fulltel($a) {
  11.         $.post("ajax.php", {
  12.             task: 'tel',
  13.             id: $a
  14.         }, function (data) {
  15.             $("#phone_data_" + $a).text(data);
  16.         });
  17.     }
  18. </script>
  19.  

3. Ну и теперь сам обработчик ajax.php. Тут ты можешь делать всё что угодно, хоть из файла, хоть из базы. Вернётся то значение, что ты выведешь.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. // Получаем задачу
  4. $task = (isset($_POST['task'])) ? $_POST['task'] : '';
  5.  
  6. // Получаем идентификатор записи
  7. $id = (isset($_POST['id'])) ? $_POST['id'] : 0;
  8.  
  9. /*
  10.  * Я не знаю как ты достаёшь из базы данные,
  11.  * но каким то образом их получаешь
  12.  * Приведу только пример, как-будто ты их уже получил
  13.  */
  14. switch($task){
  15.     // Если это ФИО
  16.     case 'label':
  17.         // допустим получили из базы ФИО по идентификатору $id
  18.         $result = 'Иванов Иван Иванович';
  19.         break;
  20.    
  21.     // Если это телефон
  22.     case 'tel':
  23.         // допустим получили из базы телефон по идентификатору $id
  24.         $result = '+7(920)1234567';
  25.         break;
  26.    
  27.     // Если это вообще не пойми что, всё же бывает
  28.     default:
  29.         $result = 'Упппссссс...';
  30. }
  31. // Отправляем результат
  32. echo $result;    

Ну где-то так
GoDr Отправлено: 10 Февраля, 2015 - 12:11:30 • Тема: Парсер • Форум: Вопросы новичков

Ответов: 7
Просмотров: 404
event пишет:
Подскажи пожалуйста регулярку еще которой можно забрать текст новости от сюда: _http://ria.ru/society/20150205/1046069165.html
Заканчивай воровать контент Радость

А если честно, то какая у тебя цель? Сайт РИА достаточно сложный по структуре чтобы его просто парсить. Даже в самом контенте куча контекстной рекламы (ну или как они её называют), очень много скриптов. И при этом разные страницы имеют чуть-чуть отличную друг от друга структуры DOM
GoDr Отправлено: 10 Февраля, 2015 - 11:44:32 • Тема: Вывод баланса пользователя • Форум: Программирование на PHP

Ответов: 5
Просмотров: 621
Использовать нормальную авторизацию.

PS
Супер неграмотное сообщение(!) Ну ладно сленг, но орфография и падежи то где? Ну вы хоть перед отправкой читайте что написали. Неужели в школах вообще перестали учить. Хм
GoDr Отправлено: 10 Февраля, 2015 - 11:32:44 • Тема: Регулярка • Форум: Вопросы новичков

Ответов: 4
Просмотров: 207
event пишет:
Работает, парсит, но как-то плохо. Нужно только ссылки.
какие ссылки то? Все на сайте?

PS
замучил ты уже этот сайт! Да скопируй ты его себе просто на комп Радость

PSS
у меня есть в проекте несколько отладочных функций. Очень помогают в выводе результатов, особенно массивов и объектов
PHP:
скопировать код в буфер обмена
  1. function _v($var, $i = false)
  2. {
  3.     echo '<pre style="border:2px solid #ff0000;color:#ff0000;padding:5px;background-color:#ffffff;">';
  4.     var_dump($var);
  5.     echo "</pre>";
  6.     if ($i) {
  7.         die();
  8.     }
  9. }
  10.  
  11. function _p($var, $i = false)
  12. {
  13.     echo '<pre style="border:2px solid #ff0000;color:#ff0000;padding:5px;background-color:#ffffff;">';
  14.     print_r($var);
  15.     echo "</pre>";
  16.     if ($i) {
  17.         die();
  18.     }
  19. }
  20.  
  21. function _a($var = null, $i = false)
  22. {
  23.     echo '<span style="border:1px solid #ff0000;color:#ff0000;padding:1px;background-color:#ffffff;">';
  24.     if (is_null($var)) {
  25.         echo '+++++++++';
  26.     } else {
  27.         echo $var;
  28.     }
  29.     echo '</span>';
  30.     if ($i) {
  31.         die();
  32.     }
  33. }
  34.  
  35. function _m(){
  36.     static $var = 0;
  37.     echo '<pre style="border:2px solid #ff0000;color:#ff0000;padding:5px;background-color:#ffffff;">';
  38.     echo $var;
  39.     echo "</pre>";
  40.     $var++;
  41. }
  42.  
  43.  

_v() - аналог var_dump()
_p() - аналог print_r()
Первый параметр переменная, второй если задан не ноль приведёт к остановке кода (очень помогает, когда нужно увидеть ошибку/переменную и срочно остановить код)
Вывод подсвечивается красной рамкой и форматирован

_a() - аналог echo. Просто вывод строчной переменной. Аналогично подсвечивается красной рамкой, но не форматирован, т.е. просто вывод в контенте, хорошо заметен. Если параметр не задан, то просто выдаёт плюсики.

_m() - просто ставит метки по контенту. Каждый вывод увеличивает значение на один. Удобно для отладки сложных условий или циклов

и чтобы не писать это
PHP:
скопировать код в буфер обмена
  1. foreach($v[1] as $val) {
  2.         echo $val . "<br />";
  3. }
достаточно просто посмотреть результаты, всё понятно и наглядно
PHP:
скопировать код в буфер обмена
  1. // весь результат
  2. _p($v);
  3. // нужный
  4. _p($v[1]);
GoDr Отправлено: 09 Февраля, 2015 - 20:51:14 • Тема: Скрыть часть кода (вывод телефона) • Форум: Программирование на PHP

Ответов: 7
Просмотров: 1079
CODE (html):
скопировать код в буфер обмена
  1. <!doctype html>
  2. <html lang="ru">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>Document</title>
  6.     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
  7.     <style>
  8.         a{
  9.             cursor: pointer;
  10.         }
  11.     </style>
  12. </head>
  13. <body>
  14. <ul>
  15.     <li><a id="ul1" onclick="fulltel(1)">+7...</a></li>
  16.     <li><a id="ul2" onclick="fulltel(2)">+7...</a></li>
  17.     <li><a id="ul3" onclick="fulltel(3)">+7...</a></li>
  18.     <li><a id="ul4" onclick="fulltel(4)">+7...</a></li>
  19. </ul>
  20. <script>
  21.     function fulltel($a){
  22.         $.post( "ajax.php",{id: $a}, function( data ) {
  23.             $("#ul"+$a ).text(data);
  24.         });
  25.     }
  26. </script>
  27. </body>
  28. </html>


ajax.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $id = (isset($_POST['id'])) ? $_POST['id'] : 0;
  4.  
  5. $arr = array();
  6. $arr[0] = '+7...';
  7. $arr[1] = '+7(920)1233234';
  8. $arr[2] = '+7(800)3455624';
  9. $arr[3] = '+7(915)9389783';
  10. $arr[4] = '+7(999)0292872';
  11.  
  12. if(array_key_exists($id, $arr) === true){
  13.     echo $arr[$id];
  14. }else{
  15.     echo $arr[0];
  16. }
GoDr Отправлено: 09 Февраля, 2015 - 20:27:32 • Тема: Помогите с ошибкой • Форум: Если скрипт не работает

Ответов: 5
Просмотров: 1186
а что такое? я такого не видел ещё
GoDr Отправлено: 09 Февраля, 2015 - 15:40:12 • Тема: Обновления скрипта online • Форум: Вопросы новичков

Ответов: 5
Просмотров: 287
Неужели из всего сообщества такое у себя никогда не делал? Хорошо

Страниц (30): В начало « ... 14 15 16 17 [18] 19 20 21 22 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB