PHP.SU

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

Страниц (1): [1]

> Найдено сообщений: 14
GeeMTee Отправлено: 07 Июня, 2012 - 14:32:00 • Тема: Как создать ссылку на файл • Форум: Вопросы новичков

Ответов: 2
Просмотров: 244
Ещё такой вариант..

CODE (html):
скопировать код в буфер обмена
  1. <a href="trololo.php">ссылко</a>


PHP:
скопировать код в буфер обмена
  1. //trololo.php
  2.  
  3. if (истино)
  4.     $url = 'ссылко_на_первый_файл';
  5. else
  6.     $url = 'ссылко_на_второй_файл';
  7. header('Location: ' . $url);
  8.  
GeeMTee Отправлено: 07 Июня, 2012 - 14:16:52 • Тема: PHP Simple HTML DOM Parser не получается спарсить Яндекс. • Форум: Работа с сетью

Ответов: 2
Просмотров: 2252
Яндекс не возвращает то, что тебе нужно.
Это защита от ботов. Посмотри, какой ответ тебе он отдаёт. Точно, что не страница с результатами поиска.

Копай в сторону передачи нужных ему кук курлом, чтобы яндекс не думал, что ты бот
(Добавление)
И ещё.. На локальном сервере simple_html_dom может некорректно работать..
GeeMTee Отправлено: 28 Марта, 2012 - 16:24:33 • Тема: Sphinx. Вопрос по нему.. Поиск по точному вхождению • Форум: Вопросы новичков

Ответов: 0
Просмотров: 58
Настроил поиск по проекту, всё кульно работает. Но сейчас в требованиях - сделать поиск по любым введенным символам.. В общем, вот пример..

НА ДАННЫЙ МОМЕНТ:
-строка поиска: нов
-подходят результаты: новые, новое, новый
-НЕ подходят: новости, новоселье, новенький

Нужно сделать так, чтобы под "нов" подходило и новости, и новоселье, и поновее, и всё, что содержит в себе "нов".
Наверняка есть такая настройка, но времени на ее поиск нету к сожалению.

Текущие настройки .conf:
CODE (htmlphp):
скопировать код в буфер обмена
  1. docinfo = extern
  2. morphology = stem_enru, soundex, metaphone
  3. charset_type = utf-8
  4. min_word_len = 2
  5. html_strip = 1
  6. min_infix_len = 3
  7. enable_star = 1



PHP:
скопировать код в буфер обмена
  1. $cl = new SphinxClient();
  2. $cl->SetServer( "127.0.0.1", 9312 );
  3. $cl->SetMatchMode(SPH_MATCH_ANY);
  4. $cl->SetSortMode(SPH_SORT_RELEVANCE);
  5. $cl->SetFieldWeights(array('name' => 1000, 'episode_name' => 600, 'description' => 200, 'actors' => 100, 'directors' => 150));
  6. $cl->SetArrayResult(true);


У кого есть в этом опыт - подскажите пожалуйста.
--
Благодарю
GeeMTee Отправлено: 19 Января, 2011 - 16:12:54 • Тема: Удаление элемента массива с определенным значением • Форум: SQL и Архитектура БД

Ответов: 8
Просмотров: 63
Рассмотри вот этот пример. Должен помочь тебе

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $array = array(1,5,3,6,8,'undefined',5,3,'nointeger',1,3) ;
  4. $resultArray = array() ;
  5.  
  6. foreach ($array as $value) {
  7.     if (intval($value))
  8.         $resultArray[] = $value ;
  9. }
  10.  
  11. echo (implode(',',$resultArray)) ;


Имею ввиду вырезку всех "нечисел" в массиве. Судя по твоим вопросам, тебе нужно вставить ее в SQL-запрос
GeeMTee Отправлено: 19 Января, 2011 - 13:08:34 • Тема: Получение данных из базы • Форум: SQL и Архитектура БД

Ответов: 3
Просмотров: 17
Что-то вроде этого. Но, я думаю, тебя только сам запрос интересовал..

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $db = mysql_connect('localhost', 'root', 'passwordForRoot') ;
  3. mysql_select_db('myshop', $db) ;
  4.  
  5. $sql = "SELECT * FROM tovars WHERE tovars.id IN (".$itemssustem.")" ;
  6. $result = mysql_query($sql) ;
  7. while ($tovars = mysql_fetch_array($result))
  8.   echo $tovars['id'].'<br />'.$tovars['name'].'<br />' ;
  9. ?>



Да. Извиняюсь. Забыл, что дан массив. Перед этим его нужно в строку преобразовать функцией implode(), как написал Мелкий
GeeMTee Отправлено: 19 Января, 2011 - 12:55:35 • Тема: Загрузка файла • Форум: Программирование на PHP

Ответов: 7
Просмотров: 475
haveFun пишет:
суть в том, что $HTTP_POST_FILES['file']['name'] пустая.
она должна передавать имя файла, но ничего не передает.

$_FILES["file"]["name"] передает имя файла
GeeMTee Отправлено: 17 Января, 2011 - 17:11:58 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
OrmaJever пишет:
В тоге нужно использовать ajax.

У меня запрос к скрипту с паузой и делается через ajax.
GeeMTee Отправлено: 17 Января, 2011 - 16:22:37 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
Буферизация тут скорее всего непричем.
Можно провести простой эксперимент.
Один запрос выполняется 20 секунд.
- запускаем запрос скрипт http://95[dot]84[dot]251[dot]194/test.php
- через секунд 15 запускаем повторно в другой вкладке
ответ приходит через 5 секунд, то есть это наш первый запрос.

если бы это была буферизация, то ответ приходил бы хотябы через 20 сек после запуска скрипта во второй вкладке.

так что это, если я правильно конечно понимаю, это скорее всего единое соединение, про которое JustUserR так же сказал.
(Добавление)
Это если на Opera.
Но так не происходит в FireFox, например.

Так что много чего и от браузера зависит.
Жаль, конечно, что такая разносторонность проявляется
GeeMTee Отправлено: 17 Января, 2011 - 15:38:52 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
Мелкий пишет:
И при чём тут тогда PHP и сервер? Ройте в строну своего браузера, почему он не считает нужным отсылать запрос.

Странно.
Во всяком случае это не зависит от браузера.
Пробовал на разных браузерах.
Пробовал на разных хостингах.
На локальной машине у меня на Denwer не работает. На одном хостинге тоже не работало, а на другом работает.

Вот у меня поэтому и появилась мысль о том, что может быть разные настройки у этих серверов.
(Добавление)
Ещё, кстати, заметил на примере DeepVarvar, что если открыть в разных вкладках браузера первую ссылку в разное время (например через 5 секунд), то ответ в обе вкладки приходит почему-то в одно и то же время (= Ха-ха
GeeMTee Отправлено: 17 Января, 2011 - 10:04:07 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
DeepVarvar пишет:
Cказки рассказываете. Хоть тыщу новых запросов можно отправить на сервер... И каждый новый запрос, читай процесс (даже с одного ip и браузера) будет запускаться в своем индивидуальном окружении.


А может быть Вы всё-таки попробуете реализовать мой пример, а не будете так говорить.
Если на сервере выполняется цикл (как в моем примере, например), то пока он не выполнится, новый запрос не будет обработан.

Возможно, есть какой-то параметр в настройках, который влияет на это.
GeeMTee Отправлено: 17 Января, 2011 - 09:39:55 • Тема: Изменение размеров при сохранении загружаемого изображения • Форум: Программирование на PHP

Ответов: 4
Просмотров: 1056
Вот завалялась функция, которой можно обрабатывать картинку на сервере и потом сохранять в удобном виде. Но советую ее понять и, может быть, поубирать чего лишнего, сделать конкретно под себя.

PHP:
скопировать код в буфер обмена
  1. function img_resize($src, $dest, $width, $height, $rgb = 0xFFFFFF, $quality = 100, $name = '') {  
  2. if (!file_exists($src)) {  
  3.     return false;  
  4. }  
  5.  
  6. $size = getimagesize($src);  
  7.  
  8. if ($size === false) {  
  9.     return false;  
  10. }  
  11.  
  12. $format = strtolower(substr($size['mime'], strpos($size['mime'], '/') + 1));  
  13. $icfunc = 'imagecreatefrom'.$format;  
  14.  
  15. if (!function_exists($icfunc)) {  
  16.     return false;  
  17. }  
  18.  
  19. $x_ratio = $width  / $size[0];  
  20. $y_ratio = $height / $size[1];  
  21.  
  22. if ($height == 0) {  
  23.  
  24.     $y_ratio = $x_ratio;  
  25.     $height  = $y_ratio * $size[1];  
  26.  
  27. } elseif ($width == 0) {  
  28.  
  29.     $x_ratio = $y_ratio;  
  30.     $width   = $x_ratio * $size[0];  
  31.  
  32. }  
  33.  
  34. $ratio       = min($x_ratio, $y_ratio);  
  35. $use_x_ratio = ($x_ratio == $ratio);  
  36.  
  37. $new_width   = $use_x_ratio  ? $width  : floor($size[0] * $ratio);  
  38. $new_height  = !$use_x_ratio ? $height : floor($size[1] * $ratio);  
  39. $new_left    = $use_x_ratio  ? 0 : floor(($width - $new_width)   / 2);  
  40. $new_top     = !$use_x_ratio ? 0 : floor(($height - $new_height) / 2);  
  41.  
  42. // если не нужно увеличивать маленькую картинку до указанного размера
  43. if ($size[0]<$new_width && $size[1]<$new_height) {
  44.     $width = $new_width = $size[0] ;
  45.     $height = $new_height = $size[1] ;
  46. }
  47.  
  48. $isrc  = $icfunc($src);  
  49. $idest = imagecreatetruecolor($width, $height);  
  50.  
  51. imagefill($idest, 0, 0, $rgb);  
  52. imagecopyresampled($idest, $isrc, $new_left, $new_top, 0, 0, $new_width, $new_height, $size[0], $size[1]);  
  53.  
  54. $i = strrpos($name,".");
  55. if (!$i) { return ""; }
  56. $l = strlen($name) - $i;
  57. $ext = substr($name,$i+1,$l);
  58.        
  59. switch ($ext) {
  60.     case "jpeg":
  61.     case "jpg":
  62.     imagejpeg($idest,$dest,$quality);
  63.     break;
  64.     case "gif":
  65.     imagegif($idest,$dest,$quality);
  66.     break;
  67.     case "png":
  68.     imagepng($idest,$dest,$quality);
  69.     break;
  70. }
  71.  
  72. imagedestroy($isrc);  
  73. imagedestroy($idest);
  74.  
  75. return true;  
  76. }
GeeMTee Отправлено: 17 Января, 2011 - 09:30:45 • Тема: Регулярные вырожения • Форум: Программирование на PHP

Ответов: 6
Просмотров: 316
PHP:
скопировать код в буфер обмена
  1. ereg("^[-A-Za-z0-9\_]+$", $loginUser);

"-" можно добавить перед A-Z
а "_" экранировать
GeeMTee Отправлено: 17 Января, 2011 - 09:27:40 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
OrmaJever, что значит использовать ajax?

Без разницы, в каком виде я посылаю запрос. Если он не полностью отработал, я не могу послать новый. Точнее я посылаю серверу, но он не отрабатывает, пока текущий не закончится.
GeeMTee Отправлено: 17 Января, 2011 - 00:28:48 • Тема: Прерывание текущего выполнение скрипта с паузой • Форум: Программирование на PHP

Ответов: 15
Просмотров: 1338
Пользователь переходит на страничку, которая посылает запрос на сервер к следующему скрипту:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $cnt = 0 ;
  3. while ($cnt < 10) {
  4.   echo date('H:i:s') ;
  5.   $cnt++ ;
  6.   sleep(2) ;
  7. }
  8. ?>


Само собой выполнение скрипта прервется через ~20 секунд.
Но если в этой время в браузере перейти на другую страницу, она просто будет ждать окончания выполнение текущего скрипта на сервере, и только после этого обработает новый запрос.
Задача состоит в том, чтобы как-то прервать выполняемый скрипт.

На данный момент очевидно, что новый запрос будет обработан через как минимум 20 секунд, а это не есть хорошо. Если перейти в другой браузер, то ПХП спокойной обработает следующий запрос.

Спасибо

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB