Seite 2 von 2

Re: Eigene Funktion einbauen

Verfasst: 07.01.2013 12:04
von dieter99
BNa hat geschrieben:Ausgeführt ja, aber nicht doppelt ausgegeben. Darüber kann man gerne philosophieren. Jedenfalls hast Du nun ein Bild und kannst weiter über den Sinn und Unsinn von if else Switches sinnieren. Ich bedanke mich für meine Hilfe und verbleibe, viel Spaß beim weiteren programmieren. Abschliessend und um die Gedanken zu entwirren 'COOLE_VARIABLE' => my_cool(), geht natürlich auch, da innerhalb der Funktion schon abgefragt wird. Einen schönen Abend noch.
Du darfst mich nicht falsch verstehen. Ich bin schon froh das du mir weiter geholfen hast. Ich wollte nur zusätzlich wissen ob in deinem Beispielcode die Funktion zweimal ausgeführt wird.

Re: Eigene Funktion einbauen

Verfasst: 07.01.2013 13:12
von BNa
BNa hat geschrieben:War ja ein Beispielcode und wie ich schon abschliessend sagte: 'COOLE_VARIABLE' => my_cool(), reicht, da ja innerhalb der function() schon abgefragt und in Zweifelsfalle false ausgegeben wird. Je besser innerhalb einer Funktion emptys oder issets ausgeschlossen werden, desto weniger braucht später abgefragt, sondern kann die Funktion im Grunde "als solches" ausgegeben werden. Von daher scheint das Verständnis des OP um die genannte Materie ja höher als vorgegeben. Wunderbar.

Re: Eigene Funktion einbauen

Verfasst: 07.01.2013 15:00
von dieter99
Eine letzte Frage hätte ich noch:
In der Datei includes/functions.php wird in vielen Funktionen auf die Klasse $db zurückgegriffen.
Beispiel:

Code: Alles auswählen

$sql = 'SELECT test FROM tabelle';
                $db->sql_query($sql);

Wie kann ich nun ermitteln, wie viele Datensätze die SELECT-Anweisung gefunden hat? Ich kenne zwar die PHP-Funktion, doch es gibt bestimmt eine Methode in der db-Klasse, oder?

Re: Eigene Funktion einbauen

Verfasst: 07.01.2013 15:08
von BNa
ZB.

Code: Alles auswählen

$sql = 'SELECT COUNT(post_id) AS num_posts
    FROM ' . POSTS_TABLE . "
    WHERE topic_id = $topic_id
        AND post_time >= $min_post_time
    " . (($auth->acl_get('m_approve', $forum_id)) ? '' : 'AND post_approved = 1');
$result = $db->sql_query($sql);

$total_posts = (int) $db->sql_fetchfield('num_posts');. 
$total_posts gibt dann die Anzahl COUNT() aus

DBAL phpbb Wiki: https://wiki.phpbb.com/Database_Abstraction_Layer

Re: Eigene Funktion einbauen

Verfasst: 07.01.2013 18:26
von dieter99
BNa hat geschrieben:ZB.

Code: Alles auswählen

$sql = 'SELECT COUNT(post_id) AS num_posts
    FROM ' . POSTS_TABLE . "
    WHERE topic_id = $topic_id
        AND post_time >= $min_post_time
    " . (($auth->acl_get('m_approve', $forum_id)) ? '' : 'AND post_approved = 1');
$result = $db->sql_query($sql);

$total_posts = (int) $db->sql_fetchfield('num_posts');.
$total_posts gibt dann die Anzahl COUNT() aus

DBAL phpbb Wiki: https://wiki.phpbb.com/Database_Abstraction_Layer
Tausend Dank!!!!