Template / function Problem

chriha

Mitglied
Tacho,
und zwar habe ich folgende Funktion in meine functions.php geschrieben:
PHP:
// Prüfen, ob User schon Stats hat
function stats()
    {
      global $connection, $userid;
      $sql = mysql_query ("SELECT mut, reaktion, ausdauer, intelligenz
                           FROM userdata
                           WHERE userid = '$userid'")
                           or die ("MySQL-Fehler" . mysql_error());
 	  $stats = mysql_result($sql, "mut, reaktion, ausdauer, intelligenz");
      if ($stats == 0)
            {
                echo '<form name="show_stats" method="post" action="GET">
                      </form>';
            }
      elseif ($stats >=1)
            {
                echo "Stats werden angezeigt";
            }
    }
Die functions.php wird in meine game.php included und dort gebe ich dann meiner Funktion eine Variable:
PHP:
$show_stats = stats();
Nun weiß ich jedoch nicht, wie ich diese Funktion in mein Template (game.html) einfüge.

Für Hilfe wär ich dankbar!
 
Sorry, muss pushen, sonst wird da heut nix mehr draus ;)

Vielleicht hilft das ja was:
PHP:
eval("dooutput(\"".gettemplate("templates/game")."\");");
Damit include ich mein Template

Hab es auch schon mit einem Kommentar in der Template versucht
Code:
<!-- BEGIN $show_stats -->Inhalt<!-- END $show_stats -->
Hat aber nix gebracht
 
Is wohl doch nix mehr draus geworden ...bitte, das is sehr wichtig für mich!

Ich hab mir nun ein anderes Template gebastelt. Ausgegeben werden meine Werte in der game.html nun so: {tag}

Mein Problem jedoch besteht immer noch darin, alle benötigten Formulare in der game.html einzufügen, sie aber nur dann aufzurufen, wenn nach ihnen gefragt wird.
 
Ich find diese Form-Deklaration ein wenig merkwuerdig.
PHP:
echo '<form name="show_stats" method="post" action="GET"></form>';
Du gibst der Form einen Namen, das ist in der Regel zwar nicht noetig, aber okay. Dann gibst Du per method an, dass das Formular per POST uebertragen werden soll, dass ist auch okay. Aber in der Action gibst Du GET an, was meiner Meinung nach nicht das ist was Du wirklich willst. Dort muss der Name des Scripts rein an das Du uebergibst.
 
OK, sollte also dann das Formular in meiner Template so ausschauen?
Code:
<form method="POST" action="$PHP_SELF?show_stats=yes">Formular</form>

Noch ne Frage:
Ich habe in meiner Tempate verschiedene Tabellen / Formulare. Jetz sollen aber nur die Tabellen / Formulare angezeigt werden, nach denen auch gefragt wird. Ich habe also eine Funktion
PHP:
// Stats des User prüfen und ausgeben
function stats()
    {
      global $connection, $userid;
      $sql = mysql_query ("SELECT mut, reaktion, ausdauer, intelligenz
                           FROM userdata
                           WHERE userid = '$userid'")
                           or die ("MySQL-Fehler" . mysql_error());
 	  $stats = mysql_result($sql, "mut, reaktion, ausdauer, intelligenz");
      if ($stats == 0)
            {
                echo $stats_no;
            }
      elseif ($stats >=1)
            {
                $sql = mysql_query ("SELECT mut, reaktion, ausdauer, intelligenz
                                     FROM userdata
                                     WHERE userid = '$userid'")
                                     or die ("MySQL-Fehler" . mysql_error());
                $stats_yes = mysql_result($sql, "mut, reaktion, ausdauer, intelligenz");
                echo $stats_yes;
            }
    }
Hat also der User keine Stats, soll das Formular angezeigt werden (Formular). Hat er welche, sollen nur die Stats angezeigt werden (Tabelle) ... ich hab leider keine Ahnung, wie ich das anstellen soll. Wär cool, wenn mir da jemand helfen könnte!
 
Ich bräuchte echt mal Eure Hilfe! Es geht immer noch um das Problem über diesem Post

Ich habe folgende Funktion gefunden:
PHP:
    function fetchBlock($blockName)
	{
	    if (isset($this->bl[$blockName]))
		return $this->bl[$blockName];
	    else
		return false;
	}
So rufe ich den Block in der PHP Datei auf:
PHP:
$tpl -> fetchBlock('show_tab');
eingebunden hab ich den Block in mein Template so:
Code:
<!-- BEGIN show_tab --> hallo <!-- END show_tab -->
angezeigt wird aber nur {show_tab}

Kann mir da jemand weiterhelfen?
 
Könnte mir wenigstens jemand schreiben, wie ich patTemplate benutze? Die Doku is ja zum kotzen und es wird nirgends erklärt wie ich das Template in meine Seite einbaue ...
Ich wär beeindruckt, wenn mal jemand helfen würde ...
 
Zuletzt bearbeitet:
Zurück