Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вывод функции

48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Добрый вечер, хотел спросить как выводить функции?
285
29 июля 2009 года
Romik
479 / / 24.11.2002
поясните суть вопроса.
Вам нужно вывести результат выполнения функции?
... имя текущей функции?
... объявить функцию?
9
29 июля 2009 года
Lerkin
3.0K / / 25.03.2003
Да ему из организма вывести... :rolleyes:
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Цитата: Romik
поясните суть вопроса.
Вам нужно вывести результат выполнения функции?
... имя текущей функции?
... объявить функцию?



Цитата:
Код файла function.php


Код:
<?php
function mysql_connect_database() {
    $user = "block";
    $password = "bl0ck";
    $bd = "block";
   
    $link = mysql_connect("localhost", "$user", "$password")
    or die("Error connecting to database: ".mysql_error());
    mysql_select_db("$bd") or die("Could not select database: ".mysql_error());
}

//Настроики главной страницы
function mysql_request_page_settings () {
    $query = "SELECT title,teg_d,teg_k,text
              FROM settings WHERE page='index'"
;
    $request = mysql_query($query) or die("Error connecting to database: ".mysql_error());
    if ($request){
        $count = mysql_fetch_row($request);
        $myrow = mysql_fetch_array($request);
       
    }
}
?>




Цитата:
Код фаила index.php


Код:
<?php
require_once("incfiles/function.php");
mysql_connect_database();

mysql_request_page_settings ();
?>
<!DOCTYPE HTML PABLIC   "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<haed>
<meta name="description" content="<?php echo $myrow['teg_d']; ?>">
<meta name="keywords" content="<?php echo $myrow['teg_k']; ?> ">
<meta http-equiv="Content_Type" content=text/html; charset="windows-1251">
<title><?php echo $myrow['title'];?></title>
<link href="incfiles/style.css" rel="stylesheet" type="text/css" media="all">
</head>
<body &#111;&#110;Copy="return false">
<div id="gordi">
<?php
.....
.....
?>



Немогу вывести вторую функцию запроса к мускулу
Что я не правельно делаю... или сама функция написанна неправельно или что то еще?
1.9K
29 июля 2009 года
InterWen
331 / / 16.09.2006
Не можете? И не должны. Поскольку в mysql_request_page_settings() заполняете результатами запроса к БД сугубо локадбные по отношению к данной ф-ии переменные, которые "умирают" вне области видимости блока mysql_request_page_settings().

Что мешает воспользоваться возвратом массива в вызывающий код? return не пробовали?
353
29 июля 2009 года
Nixus
840 / / 04.01.2007
global?
return?
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Цитата: InterWen
Не можете? И не должны. Поскольку в mysql_request_page_settings() заполняете результатами запроса к БД сугубо локадбные по отношению к данной ф-ии переменные, которые "умирают" вне области видимости блока mysql_request_page_settings().

Что мешает воспользоваться возвратом массива в вызывающий код? return не пробовали?



Вы имеете в mysql_request_page_settings() воспоьзоватся return?

1.9K
29 июля 2009 года
InterWen
331 / / 16.09.2006
Да.
 
Код:
return $myrow;


Тогда в вызывающем коде писать:

 
Код:
$myrow = mysql_request_page_settings ();


и ничего более менять не придется.


Как вариант, еще можно возвращать значение(я) через аргумент ф-ии, переданный по ссылке, тода mysql_request_page_settings выглядела бы как:

 
Код:
function mysql_request_page_settings (&$myrow) {
    $query = "SELECT title,teg_d,teg_k,text  
              FROM settings WHERE page='index'"
;
    $request = mysql_query($query) or die("Error connecting to database: ".mysql_error());
    if ($request){
        $count = mysql_fetch_row($request);
        $myrow = mysql_fetch_array($request);
         
    }
}


а в вызывающем коде писать:

 
Код:
mysql_request_page_settings ($myrow);


Последний способ целесообразен, если надо возвратить в вызывающий код более одного значения.
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Извените за тупость.... Пожалуйста вы можете это на примере показать...
1.9K
29 июля 2009 года
InterWen
331 / / 16.09.2006
Переменная count нужна в контексте вызывающего кода? Если да, то все равно придется прибегнуть (хотя бы частично) ко второму способу (см. пост выше). Либо в ф-ии пихать все, что требуется возвратить в единый массив и тогда обойтись одним лишь return'ом.

З.Ы. а вообще, не буду излише груб, если напишу заветное РТФМ.
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Спасибо за советы поиду читать.... :)
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Всем спасибо Все зделал... Вот теперь другой вопрос..
 
Код:
$query = "SELECT title,teg_d,teg_k,text
              FROM settings WHERE page='article'"
;

Как в этом запросе можно зделать изменение усовия при переходе на другую страницу?
244
29 июля 2009 года
UAS
2.0K / / 19.07.2006
Легко, можно заместо page='article' написать page = 'ya_ne_lublu_RTFM_i_grammatiku_russkogo_yazyka' :D

Просто в условие подставляете другую страницу. Что непонятного-то? Ставьте понятные вопросы.
48K
29 июля 2009 года
wis3b0t
13 / / 29.07.2009
Знаете я не хочу создавать десять функции я хочу сделать что бы автоматически менялось условие при переходе на другую страницу...
1.9K
30 июля 2009 года
InterWen
331 / / 16.09.2006
[COLOR="Gray"]Чувствую, топик будет долгим, очень-очень долгим :)[/COLOR]

Ладно, прикинем, что под "другой страницей" подразумевается тот же самый скрипт с другим набором входных, в частности GET, параметров (переменных), значения которых могут быть использованы для генерации запроса.

Тогда можно написать что-то вроде:
 
Код:
$query = "SELECT title,teg_d,teg_k,text
              FROM settings WHERE page='"
.$_GET['page_name']."'";


При выполнении со "страницы", вызванной с GET-параметром page_name равным article запрос примет приведенный вами вид, соответственно, при выполнении с другим значением входного GET-параметра запрос примет другое значение и т.д., и т.п.
Например, URL для вызова:
 
Код:
http://domain_name/index.php?page_name=article
http://domain_name/index.php?page_name=somethingelse
http://domain_name/index.php?page_name=justanotherarticle
etc.
1.9K
30 июля 2009 года
InterWen
331 / / 16.09.2006
Цитата:
Просто в условие подставляете другую страницу. Что непонятного-то? Ставьте понятные вопросы.



Цитата:
Знаете я не хочу создавать десять функции я хочу сделать что бы автоматически менялось условие при переходе на другую страницу...



Резюмирую вышесказанное: пользуйтесь переменными, их для этого и придумали.


[COLOR="RoyalBlue"]З.Ы. напомню лишний раз о необходимости фильрации ЛЮБОГО пользовательского ввода; в т.ч. того же значения GET-переменной page_name во избежание SQL-инъекций.
С разъяснениями последнего сабжа радостно поможет дядюшка Яндекс.[/COLOR]

48K
30 июля 2009 года
wis3b0t
13 / / 29.07.2009
Большое человеческое спасибо.... Все работает прекрасно.....
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог