Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: вставка функции в ячейку

Сообщения:  [1-8] 

 
 автор: P@Sol   (07.07.2006 в 09:46)   письмо автору
 
   для: Trianon   (06.07.2006 в 17:07)
 

100% - true, 0% - false :))) спасибо...тогда пробую исправить

   
 
 автор: Trianon   (06.07.2006 в 17:07)   письмо автору
 
   для: P@Sol   (06.07.2006 в 16:29)
 

Хорошо, я объясню.
echo " .... <td>".sm_cal(3,200)."</td> <td>".sm_cal(4,200)."</td> <td>".sm_cal(5,200)."</td> ...";
работает так.
Выполняется вычисление выражения из шести операций склеивания строк, и затем печать его.
Аргументами являются написанные куски текста а также значения возвращаемые вызываемыми функциями.
Естественно если сами функции тоже что-то печатают, то их вывод идет до вывода внешнего echo, поскольку выражение еще не вычислено. Если при этом явно функции ничего не возвращают, то неявно они возвращают false, которая приводится к пустой строке.
И в результате внутренние талицы выползают вперед внешней.

Это не фокусы и не чудеса. Тут нет 100% или 50%.

   
 
 автор: P@Sol   (06.07.2006 в 16:29)   письмо автору
 
   для: Trianon   (06.07.2006 в 15:46)
 

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

   
 
 автор: Trianon   (06.07.2006 в 15:46)   письмо автору
 
   для: P@Sol   (06.07.2006 в 15:44)
 

не понял? :)))

   
 
 автор: P@Sol   (06.07.2006 в 15:44)   письмо автору
 
   для: Trianon   (06.07.2006 в 15:42)
 

100% будет работать?

   
 
 автор: Trianon   (06.07.2006 в 15:42)   письмо автору
 
   для: P@Sol   (06.07.2006 в 15:35)
 


<? 
function sm_cal($a,$b)  

return 
"
<table....
?>

   
 
 автор: P@Sol   (06.07.2006 в 15:42)   письмо автору
 
   для: P@Sol   (06.07.2006 в 15:35)
 

работает если в index.php сделать так;)

<?
echo "<table border=1 width=750 cellspacing=20 cellpadding=0 align=center>
 <tr>
  <td>"
;
sm_cal(3,200);
echo 
"</td>
  <td>"
;
sm_cal(4,200);
echo 
"</td>
  <td>"
;
sm_cal(5,200);
echo 
"</td>
 </tr>
</table>"
;

   
 
 автор: P@Sol   (06.07.2006 в 15:35)   письмо автору
 
 

есть index.php

<?
require_once("fns.php");
require_once(
"sm_cal.php");
Error_Reporting(E_ALL & ~E_NOTICE);
echo 
"

<table border=1 width=750 cellspacing=20 cellpadding=0 align=center>
 <tr>
  <td>"
.sm_cal(3,200)."</td>
  <td>"
.sm_cal(4,200)."</td>
  <td>"
.sm_cal(5,200)."</td>
 </tr>
</table>
</body>"
;

?>

сама функция рисует еще одну таблицу

<?
function sm_cal($a,$b)
{

echo 
"
<table border=0 width=250 cellspacing=20 cellpadding=0 align=center style='border:1px black solid'>
 <tr>
  <td>
$a</td>
  <td>
$b</td>
  </tr>
</table>"
;
}
?>

так вот таблицы из функции появляются не в ячейках, как я хочу, а вообще в месте не зависимом от первой таблице.

help

   

Сообщения:  [1-8] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования