| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

17-07-2005, 21:39
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Template Parser - PHP einfügen?
Hi,
wie kann ich in dem Tutorial "Template Parser (Anfänger)"
http://www.tutorials.de/tutorials23173.html
einen PHP Code einfügen?
Diesen hier möchte ich gerne einbauen, was ja nicht in dem HTML Temlate geht:
Zitat:
$conn = mysql_connect("localhost", "xxxxxx", "xxxxxx");
mysql_select_db("xxxxxx",$conn);
$q = mysql_query("SELECT pic_id, pic_username FROM phpbb_album ORDER BY RAND()");
$data = mysql_fetch_array($q);
$id = $data['pic_id'];
$username = $data['pic_username'];
|
Zitat:
<?php echo $id; ?>
<?php echo $username; ?>
|
Also das ich die echo Ausgaben mit Platzhaltern im Template einfügen kann.
|

17-07-2005, 22:25
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Ich denke, das geht gar nicht. Ansonsten hätten die werten Kollegen ein derbes Sicherheitsproblem mit ihrem Server!
|

17-07-2005, 22:39
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
du musst die werte in das array speichern und das dann an die klasse übergeben. steht ja im tutorial. beispiele angucken.
@TobiaZ: Jo, wenn man es wörtlich nimmt, hast du vollkommen recht
|

17-07-2005, 23:08
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
@Shurakai
kannst du mir mal ein Beispiel posten wie ich meinen code hier einfüge?
Bin schon den ganzen Tag am hin und herprobieren:
PHP-Code:
<?php
//Script zum zeilenweisen Parsen von HTML Templates
//20.03.2003 Nils 'Jonathan' Adomeit LV1.2
//Einbinden der Template Klasse
include("tpl_parser.inc.php");
//Uservariablen für den Datenbankzugang
$mysql["host"] = "localhost";
$mysql["user"] = "xxxxxxxxx";
$mysql["password"] = "xxxxxxxx";
$mysql["database"] = "xxxxxxxx";
//Definition der KATEGORIE, Wenn keine KAT uebergeben wurde
//nimmt das System die Standard KAT
if(!isset($_GET["kat"])){ $kat = home; }
if(!isset($kat)){ $kat = $_GET["kat"];}
//Datenbankverbindung aufbauen und Datenbank auswaehlen
mysql_connect($mysql["host"],$mysql["user"],$mysql["password"]);
mysql_select_db($mysql["database"]);
//Datenbankabfrage zusammenstellen
$sql = "SELECT * FROM doc_desc, doc_text "
. "WHERE doc_desc.kat = doc_text.kat AND doc_text.kat = '".$kat."'";
//Datenbank wird abgefragt
$_result = mysql_query($sql) or die("Fehler: ".mysql_error()."<br>SQL-QUERY: ".$sql);
//Das Ergebniss wird in dem Feld ($_array) gespeichert
if(mysql_num_rows($_result) != 1)
{
$sql = "SELECT * FROM doc_desc, doc_text "
. "WHERE doc_desc.kat = doc_text.kat AND doc_text.kat = 'home'";
$_result = mysql_query($sql);
}
$_array = mysql_fetch_assoc($_result);
//Definition der Variablen durch die die Platzhalter ersetzt werden.
$title = $_array["title"];
$css = $_array["css"];
$template = $_array["template"];
$text = $_array["text"];
//Array mit den Platzhaltern (Keys) und den Inhalten.
$var_array = array("TITLE" => $title,
"CSS" => $css,
"TEXT" => $text);
//Initialisierung der Klasse und Parsen des Templates
$tpl = new parser($template, $var_array);
?>
|

18-07-2005, 10:45
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
Du musst $var_array erweitern mit den Platzhaltern + deren Daten.
Weißt du was ein Array ist? Dann weißt du auch wie man es erweitert, dürfte also kein Problem für dich sein
|

18-07-2005, 11:29
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Das Script nutzt eine andere Datenbank, wohin damit?
PHP-Code:
$conn = mysql_connect("localhost", "xxxxxx", "xxxxxx");
mysql_select_db("xxxxxx",$conn);
$q = mysql_query("SELECT pic_id, pic_username FROM phpbb_album ORDER BY RAND()");
$data = mysql_fetch_array($q);
Ich hatte das so eingefügt, und die arrays gesetzt, dann habe ich den
Platzhalter im Template angegeben, aber dann wurde nichts ausgegeben,
noch nichtmal der Platzhalter.
|

18-07-2005, 12:05
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Soo, habe jetzt alles gemacht was ich kann, aber der Inhalt(PICUSERNAME) und (PICID) wird nicht ausgegeben. Noch nichtmal die beiden Platzhalter werden ausgegeben. Das Template System läuft weiter wunderbar.
Was habe ich falsch gemacht?:
PHP-Code:
<?php
//Script zum zeilenweisen Parsen von HTML Templates
//20.03.2003 Nils 'Jonathan' Adomeit LV1.2
//Einbinden der Template Klasse
include("tpl_parser.inc.php");
//Andere Datenbank
$conn = mysql_connect("localhost", "DB2", "xxxxxx");
mysql_select_db("xxxxxx",$conn);
//Auswahl andere Datenbank
$q = mysql_query("SELECT pic_id, pic_username FROM phpbb_album ORDER BY RAND()");
$data = mysql_fetch_array($q);
//Uservariablen für den Datenbankzugang
$mysql["host"] = "localhost";
$mysql["user"] = "DB1";
$mysql["password"] = "xxxxxx";
$mysql["database"] = "xxxxxx";
//Definition der KATEGORIE, Wenn keine KAT uebergeben wurde
//nimmt das System die Standard KAT
if(!isset($_GET["kat"])){ $kat = home; }
if(!isset($kat)){ $kat = $_GET["kat"];}
//Datenbankverbindung aufbauen und Datenbank auswaehlen
mysql_connect($mysql["host"],$mysql["user"],$mysql["password"]);
mysql_select_db($mysql["database"]);
//Datenbankabfrage zusammenstellen
$sql = "SELECT * FROM doc_desc, doc_text "
. "WHERE doc_desc.kat = doc_text.kat AND doc_text.kat = '".$kat."'";
//Datenbank wird abgefragt
$_result = mysql_query($sql) or die("Fehler: ".mysql_error()."<br>SQL-QUERY: ".$sql);
//Das Ergebniss wird in dem Feld ($_array) gespeichert
if(mysql_num_rows($_result) != 1)
{
$sql = "SELECT * FROM doc_desc, doc_text "
. "WHERE doc_desc.kat = doc_text.kat AND doc_text.kat = 'home'";
$_result = mysql_query($sql);
}
$_array = mysql_fetch_assoc($_result);
//Definition der Variablen durch die die Platzhalter ersetzt werden.
$title = $_array["title"];
$css = $_array["css"];
$template = $_array["template"];
$text = $_array["text"];
$pic_id = $_array["pic_id"];
$pic_username = $_array["pic_username"];
//Array mit den Platzhaltern (Keys) und den Inhalten.
$var_array = array("TITLE" => $title,
"CSS" => $css,
"TEXT" => $text,
"PICID" => $pic_id,
"PICUSERNAME" => $pic_username);
//Initialisierung der Klasse und Parsen des Templates
$tpl = new parser($template, $var_array);
?>
|

18-07-2005, 12:14
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
Woher soll denn pic_id kommen? RICHTIG! Aus deinem SELECT. Und wo werden die Daten von deinem SELECT verarbeitet? Na? Na?
Und was für Daten verarbeitest du mit $_array? Na? Dämmerts?
|

18-07-2005, 16:23
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Jaaa es klappt
BIG THX
|

18-07-2005, 17:35
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Aber jetzt mal was anderes, ich möchte eine externe php datei miteinfügen.
Dort sind meine Partner gespeichert:
partner.php
Zitat:
<?php
$link[]='<a href="http://www.partner1.de" target="_blank">Partner1.de</a>';
$link[]='<a href="http://www.partner2.com" target="_blank">Partner2.com</a>';
$link[]='<a href="http://www.partner3.de" target="_blank">Partner3.de</a>';
// Diese Linkreihe kann man nach Belieben weiterführen
$anzahllinks=count($link); // Zählt die Anzahl der Werte im Array
srand((double)microtime()*1000000); // Startwert
shuffle($link);
for($i=0; $i<5; $i++) {
echo $link[$i]; // Gibt aus
}
?>
|
Ich denke mal ich muss die dann includen, also in die index.php:
Aber jetzt wird es wieder schwer für mich:
Zitat:
//Definition der Variablen durch die die Platzhalter
$title = $_array["title"];
$css = $_array["css"];
$template = $_array["template"];
.......
|
Wie würde das mit dem Partnerscript aussehen, also wie genau kommt das
dort rein?
|

18-07-2005, 19:26
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
Genau so wie die anderen, du musst es einer Variablen zuweisen und diese dem Template bekannt machen.
|

18-07-2005, 21:58
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Was ist denn eine Variablen ?
|

18-07-2005, 22:38
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Hopala... Grundlagen @ schattenbaum.net
|

18-07-2005, 22:56
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
Zitat:
Original geschrieben von TobiaZ
Hopala... Grundlagen @ schattenbaum.net
|
OffTopic: Mathe 5. Klasse
Ne, lies dir am besten mal Schattenbaum durch.
|

19-07-2005, 01:39
|
|
allstaR05
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 9
|
|
Kriegt man denn hier nur dumme Antworten oder Links zu anderen Seiten?
Kann mir denn keiner erklären wie ich "genau" den code da einfüge?
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|