PHP.SU

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

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

> Найдено сообщений: 606
imediasun Отправлено: 03 Декабря, 2014 - 14:39:15 • Тема: как сделать фон прозрачный в GD2 • Форум: Вопросы новичков

Ответов: 2
Просмотров: 212
Данная функция отлично делает ресайз изображения полученного из массива $_FILES
но внизу я пытаюсь заменить черный фон обрезанного изображения на прозрачный, и не получается, помогите пожалуйста кто сталкивался с этим? спасибо большое
PHP:
скопировать код в буфер обмена
  1.  
  2.         public function add_resort_photos(){
  3.         session_start();
  4.     if(!empty($_FILES)) {
  5.     // Файл передан через обычный массив $_FILES
  6.     echo 'Contents of $_FILES:<br/><pre>'.print_r($_FILES, true).'</pre>';
  7.     $file = $_FILES['my-pic'];
  8.         $file_name=$file['name'];
  9.         $ppos = strrpos($file_name, '.');
  10.         $file_name = substr($file_name, 0, $ppos).'('.md5(uniqid(rand(),1)).').'.substr($file_name, $ppos + 1);
  11.         $tmp_name=$file['tmp_name'];
  12.         $uploads_dir='./producers';  
  13.         $upload=$uploads_dir.'/'.$file_name;
  14.         if (move_uploaded_file($tmp_name, "$uploads_dir/$file_name")){
  15.         $image_info = GetImageSize($upload);
  16.                 $ratio_img=$image_info[0]/$image_info[1];
  17.                 if($image_info[0]>273 or $image_info[1]>74){
  18.                 if($image_info[0]>$image_info[1]){
  19.                 $img_width=273;
  20.                 $img_height=$img_width/$ratio_img;
  21.                 print('width '.$img_width.'х'.' height '.$img_height);
  22.                 }
  23.                 else{
  24.                 $img_height=74;
  25.                 $img_width=$img_height*$ratio_img;
  26.                 print('width '.$img_width.'х'.' height '.$img_height);
  27.                 }
  28.                 }
  29.                 else{
  30.                 $img_width=$image_info[0];
  31.                 $img_height=$image_info[1];
  32.                 }
  33.                 $ratio_index=$img_width/$img_height;
  34.                 $source_image=$upload;
  35.                 $target='./producers';
  36.                 $config_manip = array(
  37.         'image_library' => 'gd2',
  38.         'source_image' => $source_image,
  39.         'new_image' => $target,
  40.         'maintain_ratio' => TRUE,
  41.         'create_thumb' => FALSE,
  42.         'width' => $img_width,
  43.         'height' => $img_height
  44.     );
  45.    
  46.         $this->initial_resize($config_manip);
  47.         $source=substr($source_image, -4);
  48.         $source_start=substr($source_image, 0, -4);
  49.         $crop_image=$source_start.$source;
  50.         print('crop_image'.$crop_image);
  51.         $img_width=273;
  52.         $img_height=74;
  53.        
  54.         // clear //
  55.          $this->image_lib->clear();
  56.          $this->initial_crop($crop_image,$img_height,$img_width,false);
  57.  
  58. }
  59. $expansion=substr(strrchr($file_name, '.'), 1);
  60. switch($expansion){
  61. case 'png':
  62. $im = imagecreatefrompng($upload);
  63. $black = imagecolorallocate($im, 0, 0, 0);
  64. break;
  65. }
  66. }
  67. }
  68.  
imediasun Отправлено: 16 Ноября, 2014 - 17:55:09 • Тема: как определить что такой ключ в массиве уже есть • Форум: Вопросы новичков

Ответов: 3
Просмотров: 132
спасибо, а как задать подобное условие?
PHP:
скопировать код в буфер обмена
  1.  
  2. if($value4['id']==$final_array[$key]['как здесь указать что это может быть любое значение']['id']){
  3.  
  4. }
  5.  
imediasun Отправлено: 16 Ноября, 2014 - 16:56:42 • Тема: как определить что такой ключ в массиве уже есть • Форум: Вопросы новичков

Ответов: 3
Просмотров: 132
Здравствуйте я формирую массив вот таким способом
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. foreach($itm as $key2=>$value2){
  4.        
  5.         $final_array[$key][$n]['id']=$value2['id'];
  6.         $final_array[$key][$n]['name']=$value2['name'];
  7.        
  8.         $n=$n+1;
  9.         }
  10.  

пример
[producer] => Array
(
[0] => Array
(
[id] => 2
[name] => Папа карло
)

)
как определить что ключ [$key](в примере это [producer]) уже в массиве $final_array
есть?
imediasun Отправлено: 15 Ноября, 2014 - 17:10:49 • Тема: функция в php сортирующая только истинные значения массива • Форум: Вопросы новичков

Ответов: 2
Просмотров: 134
спасибо
imediasun Отправлено: 15 Ноября, 2014 - 15:31:38 • Тема: функция в php сортирующая только истинные значения массива • Форум: Вопросы новичков

Ответов: 2
Просмотров: 134
Есть ли в PHP функция которая выберет только пары ключ значение значение которых истинно?
аналог этому foreach
PHP:
скопировать код в буфер обмена
  1.  
  2.         foreach($arg_list[0] as $key=>$value){
  3.                 if($value){
  4.                 $first_step_array[$key]=$value;
  5.                 }
  6.         }
  7.  
imediasun Отправлено: 14 Ноября, 2014 - 16:44:35 • Тема: объясните как получить данные из класса • Форум: Вопросы новичков

Ответов: 2
Просмотров: 182
Здравствуйте, я понимаю что класс написан не правильно но объясните пожалуйста как надо чтобы функции были приватные и чтобы получить $ data обратившись к классу

PHP:
скопировать код в буфер обмена
  1.  
  2. class Filter extends CI_Controller
  3.  
  4. {
  5. //$data - массив с переменными, $name - начало имени файла вида
  6.         private $producers;
  7.         private $materials;
  8.         private $styles;
  9.         public function __construct()
  10.         {
  11.         parent:: __construct();
  12.         $this->load->model('producers_model');
  13.         $this->load->model('materials_model');
  14.         $this->load->model('styles_model');
  15.     }  
  16.         public function index(){
  17.         $data['producers']=$this->producers;
  18.         $data['materials']=$this->materials;
  19.         $data['styles']=$this->styles;
  20.         return $data;
  21.         }
  22.         private function producer()
  23.         {
  24.         $this->producers=$this->producers_model->get();
  25.         }              
  26.         private function material()
  27.         {
  28.         $this->materials=$this->materials_model->get();
  29.         }
  30.         private function style()
  31.         {
  32.         $this->styles=$this->styles_model->get();      
  33.         }
  34. }
  35.  
imediasun Отправлено: 23 Октября, 2014 - 18:25:03 • Тема: Cannot modify header information - headers already sent by • Форум: Вопросы новичков

Ответов: 5
Просмотров: 216
ну как что - выводит пост на экран
imediasun Отправлено: 23 Октября, 2014 - 16:32:56 • Тема: Cannot modify header information - headers already sent by • Форум: Вопросы новичков

Ответов: 5
Просмотров: 216
Здравствуйте как мне перезагрузить страницу по другому?
PHP:
скопировать код в буфер обмена
  1.  
  2. public function __construct()
  3.          {
  4.         parent:: __construct();
  5.         header("Content-Type: text/html; charset=utf-8");
  6.         }
  7.         public function edit_text(){
  8.         print_r($_POST);
  9.         $row=$this->articles_model->get_obj($_POST["url"]);
  10.         $data['text']=$_POST['editor'];
  11.         $data['page']=$_POST['url'];
  12.         if(isset($_POST['editor']) && count($row)>0 && $row[0]['page']==$_POST['url'] ){
  13.         $this->articles_model->update($data,'page',$data['page']);
  14.         }
  15.         else{
  16.         $this->articles_model->insert($data);
  17.         }
  18.         Header("Location:".$_SERVER['PHP_SELF']);
  19.         }
  20.  
imediasun Отправлено: 27 Сентября, 2014 - 17:19:39 • Тема: Почему меняется тип данных в массиве • Форум: Вопросы новичков

Ответов: 4
Просмотров: 150
а почему когда я меняю тип пропадает значение
array(9) { ["id"]=> string(2) "21" ["type"]=> string(1) "6" ["id_resort"]=> string(2) "10" ["tourist_id"]=> string(1) "1" ["name"]=> string(12) "Майдан" ["date"]=> string(10) "2014-08-11" ["raiting"]=> string(1) "5" ["popularity"]=> string(2) "26" ["description"]=> string(0) "" }
PHP:
скопировать код в буфер обмена
  1.  
  2. if($prst){
  3. foreach($prst as $key=>$arr){
  4. $arr['raiting']=(int)$arr['raiting'];
  5. var_dump($arr);
  6. $data_popularity[$key]=$arr['raiting'];
  7. }
  8. array_multisort($data_popularity, SORT_DESC, $prst);
  9. return $prst;
  10. }
  11.  

array(1) { ["raiting"]=> int(0) }
и почему var_dump мне вывел только один ключ
imediasun Отправлено: 27 Сентября, 2014 - 17:04:38 • Тема: Почему меняется тип данных в массиве • Форум: Вопросы новичков

Ответов: 4
Просмотров: 150
Я получаю из базы массив таким образом
PHP:
скопировать код в буфер обмена
  1.  
  2. $prst=$this->places_by_resort_model->get_and($type,$resort,'type');
  3. var_dump($prst);
  4.  

Почему взде строки, а не интеджер?
что может поменять тип данных ? в базе все эти значения типа интеджер
array(9) { ["id"]=> string(2) "21" ["type"]=> string(1) "6" ["id_resort"]=> string(2) "10" ["tourist_id"]=> string(1) "1" ["name"]=> string(12) "Майдан" ["date"]=> string(10) "2014-08-11" ["raiting"]=> string(1) "5" ["popularity"]=> string(2) "26" ["description"]=> string(0) "" }
imediasun Отправлено: 27 Сентября, 2014 - 14:16:25 • Тема: Severity: Notice Message: Uninitialized string offset: 0 • Форум: Вопросы новичков

Ответов: 1
Просмотров: 142
Здравствуйте я понимаю что нотисы можно отключить но мне хочется чтобы все было правильно в коде, объясните что тут не так и что нужно сделать?

Severity: Notice

Message: Uninitialized string offset: 0
в этой строке
$data_popularity[$key]=$arr['raiting'];

PHP:
скопировать код в буфер обмена
  1.  
  2. function Get_places_by_rst($resort,$type){
  3. if(!empty($type)){
  4. $prst=$this->places_by_resort_model->get_and($type,$resort,'type');
  5. print_r($prst);
  6. }
  7. else{
  8. $prst=$this->places_by_resort_model->get_obj($resort);
  9. }
  10. if(!empty($prst)){
  11. foreach($prst as $key=>$arr){
  12. $data_popularity[$key]=$arr['raiting'];
  13. }
  14. array_multisort($data_popularity, SORT_DESC, $prst);
  15. return $prst;
  16. }
  17. }
  18.  
  19.  
imediasun Отправлено: 10 Сентября, 2014 - 14:56:39 • Тема: как правильно распарсить данные из формы • Форум: Вопросы новичков

Ответов: 3
Просмотров: 185
у меня ошибка в 11 строке
Parse error: syntax error, unexpected ')' in /var/www/clients/client12/web19/ web/application/controllers/admi n_tours.php on line 11
и ввобще я впервые вижу такое foreach(isset())
Может что то не так
imediasun Отправлено: 10 Сентября, 2014 - 12:35:49 • Тема: как правильно распарсить данные из формы • Форум: Вопросы новичков

Ответов: 3
Просмотров: 185
Здравствуйте, я получаю эллемент массива из JS в таком виде
[array] => group_name=1&country_0=UA&resort_0=11&country_1=HU&resort_1=105&country_2=HU&resort_2=103&editor=description&tours_name=name_of_tour&tours_prise=4444&tour_cur=2&tour_transport=2
я могу распарсить таким образом
PHP:
скопировать код в буфер обмена
  1.  
  2. parse_str($item['array']);
  3.         $data['group']=$group_name;
  4.         $data['price']=$tours_prise;
  5.         $data['tour_name']=$tours_name;
  6.         $data['transportation']=$tour_transport;
  7.         $data['description']=$editor;
  8.         $data['currency']=$tour_cur;
  9.  

Но остальные поля у меня идут номерные и неизвестно сколько номеров может быть
как мне составить отдельный массив такого вида
$data['tour_resorts'][0]=resort_0 //11
$data['tour_resorts'][0]=resort_1 //105
$data['tour_resorts'][0]=resort_2 //103
imediasun Отправлено: 01 Сентября, 2014 - 15:06:02 • Тема: Почему не выходит из цикла по break • Форум: Вопросы новичков

Ответов: 1
Просмотров: 124
не удевлюсь если я придумываю какую то функцию сортировки которая уже есть, но это даже интересно, кто нибудь поможет понять почему функция ничего не возвращает?
Буду очень признателен за свежий взгляд
imediasun Отправлено: 01 Сентября, 2014 - 12:41:48 • Тема: Почему не выходит из цикла по break • Форум: Вопросы новичков

Ответов: 1
Просмотров: 124
Есть цикл для сортировки мест достопримечательностей по популярности в зависимости от популярности курорта
PHP:
скопировать код в буфер обмена
  1.  
  2. //$z - общее количество мест достопримечательностей в стране
  3. //$resorts_by_cnt - массив содержащий курорты Франции
  4. $pcnt_fin=$this->cycle(0,0,$resorts_by_cnt,$z,0,$pcnt=array());
  5. echo "<pre>";
  6. echo "финальный массив места по стране отсортированные";
  7. var_dump($pcnt_fin);//нет значений массива - null почему???????
  8. echo "</pre>";
  9. }
  10. function cycle($c,$b,$resorts_by_cnt,$z,$n,$pcnt){
  11. $i=count($resorts_by_cnt);
  12. for($a=$c;$a<=$i;$a++){
  13. print('n='.$n);
  14. //когда индекс сравнялся с количеством мест по стране в базе получить массив и выйти из цикла
  15. if($n==$z){
  16. $w=1;
  17. }
  18. if($a==$i){
  19. echo "последний запрос предыдущие не выявили места";
  20. print('Надо вернуться к первому курорту и вывести последуещее место');
  21. $c=0;
  22. $this->cycle($c,$b+1,$resorts_by_cnt,$z,$n,$pcnt);
  23. }
  24.  
  25. $row[$a]=array();
  26. if(isset($resorts_by_cnt[$a])){
  27. print('просматриваем курорт '.$resorts_by_cnt[$a]['name'].' на наличие мест');
  28. $row[$a]=$this->places_by_resort_model->get__obj_order($resorts_by_cnt[$a]['id'],'popularity','desc');
  29. }
  30. if(isset($row[$a][$b]) && count($row[$a][$b])>0 ){
  31. if(isset($pcnt[$n-1]) && ($row[$a][$b]['id']==$pcnt[$n-1]['id'])){
  32. print('Этот курорт и это место уже цикл проходил - пропускаем!');
  33. continue;
  34. }
  35.  
  36. else{
  37. if(isset($row[$a][$b])){
  38. $pcnt[$n]=$row[$a][$b];
  39. echo "<pre>";
  40. echo "курорт ".$resorts_by_cnt[$a]['name']."";
  41. echo "index a ".$a."";
  42. print_r($pcnt[$n]);
  43. echo "</pre>";
  44. $n=$n+1;
  45. }
  46. continue;
  47. }
  48. }
  49. else{
  50. continue;
  51. }
  52. }
  53. if(isset($w) && $w==1){
  54. print_r($pcnt);//массив есть как надо
  55. return $pcnt;//возврата масива нет здесь почему?????????
  56. }
  57. }
  58.  

нет return , подскажите почему у меня уже голова кипит с этой сортировкой

Страниц (41): « 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