|
|
|
| привет, столкнулся с такой проблемой
для удобства и сокращения кодов в файле решил использовать функцию которая к примеру выводит заголовок из БД (типа шаблонизатора)
Файл функций fun.php
<?php
function title(){
echo $row['title'].'<hr>';
}
?>
|
код файла отображения index.php
<?php
include 'fun.php';
$query = "SELECT title FROM mytable";
$res = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($res)) {
title();
}
mysql_close();
?>
|
почему не работает? видимо из за того что функция не может найти $row['title'] ?
как можно это исправить? | |
|
|
|
|
|
|
|
для: tima2010
(31.08.2011 в 16:01)
| | А вы передайте параметр функции
Файл функций fun.php
<?php
function title($row){
echo $row['title'].'<hr>';
}
?>
|
код файла отображения index.php
<?php
include 'fun.php';
$query = "SELECT title FROM mytable";
$res = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($res)) {
title($row);
}
mysql_close();
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(31.08.2011 в 16:36)
| | Спасибо! Подскажите пожалуйста разумно ли использовать данную схему в роли построения шаблонов сайта? | |
|
|
|
|
|
|
|
для: tima2010
(31.08.2011 в 16:48)
| | Довольно разумно... | |
|
|
|
|
|
|
|
для: tima2010
(31.08.2011 в 16:48)
| | именно эту функцию (и подобные ей) я считаю абсолютно неразумными
функция в общем понимании должна быть достаточно универсальной, а у вас она жестко привязана к выборке столбца title, не вижу смысла делать пятью строками то, что можно сделать одной
<?php
$query = "SELECT title FROM mytable";
$res = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($res)) {
$title=$row[title];
}
mysql_close();
echo "<title>$title</title>";
?>
|
| |
|
|
|
|
|
|
|
для: Valick
(31.08.2011 в 17:27)
| | спасибо но одна строка это только в примере! (весь код от 7 до 10 строк)
раз вы считаете это не разумным, тогда как лучше выводить отдельные функции в шаблоне?
все это задумано для удобства прописывать функции в шаблон | |
|
|
|
|
|
|
|
для: tima2010
(31.08.2011 в 17:35)
| | -- | |
|
|
|
|
|
|
|
для: tima2010
(31.08.2011 в 17:35)
| | да это понятно, я просто показал вам что там где можно обойтись одной переменной не нужна функция, и то что одна функция должна обрабатывать группу однотипных данных у вас же она завязана окончательно и бесповоротно только на title который прописан в самом теле функции.
просто не хватает у меня мозга донести русским языком до вас мою мысль :)
__
я считаю неразумным не сам вывод, а саму функцию (точнее неудачный пример), хотя я бы большую часть функций держал не в шаблоне, а за его пределами, а в шаблоне использовал бы переменные, но все зависит от функции | |
|
|
|