Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблема в выводе картинки в заданном месте на страничке

 PHP.SU

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


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

> Без описания
Lola
Отправлено: 27 Августа, 2007 - 14:52:20
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


Просмотрела много примеров, но так и не увидела моей проблемы, но в понимании проблемы немного туманно-->
может поэтому не нашла:
-не могу вникнуть как же отобразит диаграмму в заданном месте на страничке
1.Может нужно для картинки-диаграммы сделать отдельный tpl-файл и просто вызывать его:
PHP:
скопировать код в буфер обмена
  1.  
  2. text.....
  3. .... $smarty->fetch("diagramma.tpl");....  
  4. text.....
  5.  $smarty->assign("statistika.tpl");
  6.  

2.Но Есть ли другие варианты? у меня должна быть на одной страничке(statistika.tpl):
Статистика:
.....
диаграмма
.....
и ниже подробное описание всех результатов в виде текста:
.....
....
....

подскажите пожалуйста
Заранее спасибо.
 
 Top
evgenijj
Отправлено: 27 Августа, 2007 - 15:20:06
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




index.tpl
PHP:
скопировать код в буфер обмена
  1.  
  2. {include file='header.tpl'}
  3. {include file='statistika.tpl'}
  4. {include file='diagramma.tpl'}
  5. < p>подробное описание всех результатов в виде текста</p>
  6. {include file='footer.tpl'}
  7.  


PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. require_once(SMARTY_DIR . 'Smarty.class.php');
  4.  
  5. $smarty = new Smarty();
  6.  
  7. $smarty->template_dir = '/web/www.example.com/statistika/templates/';
  8. $smarty->compile_dir = '/web/www.example.com/statistika/templates_c/';
  9. $smarty->config_dir = '/web/www.example.com/statistika/configs/';
  10. $smarty->cache_dir = '/web/www.example.com/statistika/cache/';
  11.  
  12. $smarty->display('index.tpl');
  13. ?>
  14.  
 
 Top
Lola
Отправлено: 27 Августа, 2007 - 15:42:49
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
index.tpl
PHP:
скопировать код в буфер обмена
  1.  
  2. {include file='header.tpl'}
  3. {include file='statistika.tpl'}          
  4. {include file='diagramma.tpl'}
  5. < p>подробное описание всех результатов в виде текста</p>
  6. {include file='footer.tpl'}
  7.  


хммм....да это наводит на мысль что надо держаться
моего первого пункта ...


PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. require_once(SMARTY_DIR . 'Smarty.class.php');
  4.  
  5. $smarty = new Smarty();
  6.  
  7. $smarty->template_dir = '/web/www.example.com/statistika/templates/';
  8. $smarty->compile_dir = '/web/www.example.com/statistika/templates_c/';
  9. $smarty->config_dir = '/web/www.example.com/statistika/configs/';
  10. $smarty->cache_dir = '/web/www.example.com/statistika/cache/';
  11.  
  12. $smarty->display('index.tpl');
  13. ?>
  14.  


а вот это, если честно, не понятно -> зачем мне ему дир. прописывать ?,или вы просто для примера указываете...?

но в любом случае спасибо есть идея сделаю, посмотрим.

 
 Top
evgenijj
Отправлено: 27 Августа, 2007 - 15:55:08
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Lola пишет:

или вы просто для примера указываете

Для примера - код взял с официального сайта Smarty.
 
 Top
Lola
Отправлено: 31 Августа, 2007 - 11:34:31
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


Привет сделала графику без библиотеки GD,но все -таки для будуших проектов нужно добить это...
я немного не понимаю проблемы с выводом картинки:

здесь функция diagrammy:
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. //.............................function_DIAGRAMM...............................//
  4.  
  5.  
  6. function Diagramm($value,$value_text,$header_text,$type) {
  7.         //siize of the image
  8.         $W=ImageSX($im);                
  9.         $H=ImageSY($im);
  10.        
  11.         //color  of  the text:
  12.         $im=ImageCreate(500,300);
  13.         $fontcolor=ImageColorAllocate($im,0, 102, 51);
  14.        //count the number of legend content
  15.         $legend_count=count($value_text);
  16.             $max_length=0;
  17.         foreach($value_text as $v) if ($max_length<strlen($v)) $max_length=strlen($v);
  18.         $FONT=2;
  19.         $font_w=ImageFontWidth($FONT);
  20.         $font_h=ImageFontHeight($FONT);
  21.         $l_width=($font_w*$max_length)+$font_h+20;
  22.         $l_height=$font_h*$legend_count+20;
  23.                
  24.                 //header text
  25.                 $text_header_x=$font_h+200;
  26.                 $text_header_y=10;
  27.                 $FONT_HEADER=3;
  28.                         ImageString($im,$FONT_HEADER, $text_header_x,$text_header_y,$heading_text, $fontcolor);
  29.                
  30. //the type.......................................................................//
  31. //.................................................//                  
  32.                
  33.                         //legend and square
  34.                 $text_x=$font_h+10;
  35.                 $text_y=10;
  36.                 $square_x=10;
  37.                         $i=0;
  38. if($type=1) {          
  39.                                         foreach($value_text as $v) {
  40.                             $dy=$text_y+($i*$font_h);
  41.                             ImageString($im, $FONT, $text_x, $dy, $v, $fontcolor);
  42.                                 ImageFilledRectangle($im,
  43.                                                                          $square_x+1,$dy+1,$square_x+$font_h-1,$dy+$font_h-1,
  44.                                                                          $COLORS[$i+1]);
  45.                                 ImageRectangle($im,
  46.                                                $square_x+1,$dy+1,$square_x+$font_h-1,$dy+$font_h-1,
  47.                                                $fontcolor);
  48.                                         $i++;
  49.                         }
  50.             }
  51.  //.................................................//          
  52. //.................................................//
  53.            
  54.         $total=array_sum($value);
  55.     $anglesum=Array(0);
  56.     $angle_grad=Array(0);
  57.     $angle_percent=Array(0);
  58.     $i=1;
  59.  
  60.         // count the angels
  61.     while($i<count($value)) {
  62.         $part=$value[$i-1]/$total;
  63.         $angle_grad[$i]=floor($part*360);
  64.         $angle_percent[$i]=floor($part*100);
  65.         $anglesum[$i]=array_sum($angle_grad);
  66.         $anglesum_percent[$i]=array_sum($angle_percent);
  67.         $i++;
  68.         }
  69.         $anglesum[]=$anglesum[0];
  70.         $anglesum_percent[]=$anglesum_percent[0];
  71.         //esli type=2  
  72.         //.................................................//
  73.         //.................................................//
  74. if ($type==2)
  75. {
  76.                 foreach($anglesum_percent[$i-1] as $p) {                               
  77.                 ImageString($im, $FONT, $square_x+$font_h-1, $dy+$font_h-1, $p, $fontcolor);
  78.                 $i++;
  79.                 }
  80.                         foreach($value_text as $v) {
  81.                                     $dy=$text_y+($i*$font_h);
  82.                                     ImageString($im, $FONT, $text_x, $dy, $p, $fontcolor);
  83.                                     ImageFilledRectangle($im,
  84.                                                                                  $square_x+1,$dy+1,$square_x+$font_h-1,$dy+$font_h-1,
  85.                                                                                  $COLORS[$i+1]);
  86.                                         ImageRectangle($im,
  87.                                                        $square_x+1,$dy+1,$square_x+$font_h-1,$dy+$font_h-1,
  88.                                                        $fontcolor);
  89.                                 $i++;
  90.                                 }      
  91. }      
  92.         //.................................................//
  93.         //.................................................//
  94.                
  95.         $diametr =-110;
  96.     $circle_x = ($diametr/2)+200;
  97.     //using the height  of the image
  98.     $circle_y = $H/2-10;
  99.  
  100. //correct the diametr
  101.  
  102.     if ($diametr>($H*2)-20) $diametr=($H*2)-80;
  103. //................not...important................................//
  104.     //make a shadow
  105.      
  106.     for ($j=20;$j>0;$j--)
  107.                 for ($i=0;$i<count($anglesum)-1;$i++)
  108.             ImageFilledArc($im,$circle_x,$circle_y+$j,
  109.                            $diametr,$diametr/2,
  110.                            $anglesum[$i],$anglesum[$i+1],
  111.                            $SHADOWS[$i],IMG_ARC_PIE);
  112.  
  113. //.................................................//
  114.  
  115. //output the diagramm:
  116.                         for ($i=0;$i<count($anglesum)-1;$i++)
  117.                 ImageFilledArc($im,$circle_x,$circle_y,
  118.                            $diametr,$diametr/2,
  119.                            $anglesum[$i],$anglesum[$i+1],
  120.                            $COLORS[$i],IMG_ARC_PIE);
  121.  
  122.     }
  123. //.............................................................................................//
  124.  




здесь фаил рисуюший диаграмму:diagramma_2.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.         session_start();
  4.         require_once("config.inc.php");
  5.         connectdb();
  6.         check_admin();
  7.         header("Content-type: image/png");
  8.         $im=ImageCreate(500,500);
  9.         $type=2;
  10.         $header_text="Selbsteinsch&#228;tzung zu Ihren Kompetenzen - Gesamt&#252;berblick"
  11.         $value_text=("Aktivit&#228;ts und Kandlungskompetenz","Fach und Methodenkompetenz","Sozial kommunikative kompetenz","Personale Kompetenz" );
  12.         $value=sprintf("%d",$_SESSION['choice_value']);
  13.         Diagramm($value,$value_text,$header_text,$type);
  14.         ImagePNG($im);
  15.  
  16. ?>
  17.  


здесь файл выводяший диаграмму на страничку t.e. diagramma.tpl:
PHP:
скопировать код в буфер обмена
  1.  
  2. {include file="header.tpl" title=$viewgroup.viewgroup_text}
  3. <table>
  4. <tr>   
  5. <img src="diagramm_2.php">
  6. </tr>
  7. </table>
  8. {include file="footer.tpl"}
  9.  



этой функция рисования диаграммы вызываю из нужного места текушей страницы
PHP:
скопировать код в буфер обмена
  1.  
  2. function draw_my_diagramm()
  3. {
  4. $smarty = new SmartyFormsess;
  5.  
  6.         if(DEBUG == true) {
  7.                 $smarty->compile_check = true;
  8.                 $smarty->debugging = true;
  9.         }
  10.         $smarty->display("diagramm.tpl");
  11.        
  12. }
  13.  

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

подскажите пожалуйста если что-то увидете не то...но я думаю я не усвоила как именно выводить катинку но вроде сделала все что указано здесь:
http://www.php.su/functions/?cat=image

заранее спасибо
Скачать файл: dg.rar
Скачан раз: 133
 
 Top
Lola
Отправлено: 04 Сентября, 2007 - 10:12:51
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


Да...... , помощи я так и не дождалась, но уже сама нашла все ошибки.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB