Abschnitte:
Internetauftritte
Webhosting
yalst-LiveSupportTool
Linux und Open-Source
regionale Onlinedienste
Welche Produkte und Dienstleistungen bietet rostock-digital an?
Seit wann gibt es rostock-digital?
Wo finde ich den Kundenbereich?
PHP-Quellcode:
<?
/*
faq.php
FAQs auslesen und auf einer eigenen Seite darstellen
als Beispiel für den Einsatz der yalst-API
Copyright (c) 2005 by Dr. Markus Jasinski, rostock-digital
http://www.rostock-digital.com - http://www.yalst.de
dieses Skript dürfen Sie anpassen und auf Ihrer Homepage verwenden
es benötigt yalst 3.05 oder höher!!
*/
// XML-RPC-Bibiothek für PHP einlesen
// diese Bibliothek finden Sie unter
// http://keithdevens.com/software/xmlrpc
include("xmlrpc.inc.php");
// yalst-Site, API-Kennwort und Server zuweisen
$site="";
// tragen Sie die Nummer Ihres yalst-Zugangs ein (z.B. "27000-1")
$passwd="";
// tragen Sie Ihr API-Kennwort ein
// (dieses Kennwort wird im Kundenbereich festgelegt)
$server="";
// dieser Wert lautet bei Mietlösungen "rd.livesupportserver.de"
// und bei Kauflösungen "www.IhreYalstDomain.de"
// ("www.IhreYalstDomain.de" bitte entsprechend anpassen)
// aus Sicherheitsgründen werden diese drei Werte aus einer Include-Datei
// gelesen, damit wir den Quellcode dieses Skripts zeigen können, die
// folgende Zeile MÜSSEN SIE DAHER AUSKOMMENTIEREN
include("faq.inc.php");
// Parameter einlesen
$faqmode=$_GET["faqmode"]; // "article" für Beitrag oder "category" für Abschnitt
$faqitem=$_GET["faqitem"]; // Nummmer des Abschnitts oder des Beitrags
// Parameter prüfen
$error="";
if (($faqmode!="article") and ($faqmode!="category"))
{$faqmode="category";}
$faqitem=intval($faqitem);
// API-Aufruf
if ($faqmode=="category")
{$result=XMLRPC_request($server,'/yalst/api.php','faq.category',array(XMLRPC_prepare($site),XMLRPC_prepare(md5($passwd)),XMLRPC_prepare($faqitem),XMLRPC_prepare("de")));}
else
{$result=XMLRPC_request($server,'/yalst/api.php','faq.article',array(XMLRPC_prepare($site),XMLRPC_prepare(md5($passwd)),XMLRPC_prepare($faqitem),XMLRPC_prepare("0")));}
// API-Aufruf erfolgreich?
if (!$result[0])
{$error=$result[1]["faultString"];}
?>
<html>
<head>
<title>FAQs</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<!-- auf die Definition von Stylesheets wurde aus Platzgründen verzichtet -->
</head>
<body bgcolor="#ffffff">
<?
if ($error)
{echo "Fehler: $error";}
else
{
if ($faqmode=="category")
{
if ($faqitem>0)
{
// Name des Unterabschnitts und Link zum Elternabschnitt ausgeben
echo "<p>";
echo "<b>".htmlentities($result[1][0]["category"])."</b> ".
"[<a href=\"faq.php?faqmode=category&faqitem=".$result[1][0]["pid"].
"\">eine Ebene höher</a>]\n";
echo "</p>\n";
}
// Liste der Unterabschnitte ausgeben
if ($result[1][0]["categories"]>0)
{
echo "<p>\n";
echo "Abschnitte:<br>\n";
for ($i=0; $i<$result[1][0]["sum"]; $i++)
{
if ($result[1][0][$i+1]["type"]=="category")
{
echo "<a href=\"faq.php?faqmode=category&faqitem=".$result[1][0][$i+1]["id"].
"\">".htmlentities($result[1][0][$i+1]["name"])."</a>";
}
if (($i<($result[1][0]["sum"]-1)) and ($result[1][0][$i+1]["type"]=="category"))
{echo "<br>\n";}
}
echo "</p>\n";
}
// Liste der Beiträge ausgeben
if ($result[1][0]["articles"]>0)
{
echo "<p>\n";
for ($i=0; $i<$result[1][0]["sum"]; $i++)
{
if ($result[1][0][$i+1]["type"]=="article")
{
echo "<a href=\"faq.php?faqmode=article&faqitem=".$result[1][0][$i+1]["id"].
"\">".htmlentities($result[1][0][$i+1]["name"])."</a>\n";
}
if (($i<($result[1][0]["sum"]-1)) and ($result[1][0][$i+1]["type"]=="article"))
{echo "<br>\n";}
}
echo "</p>\n";
}
}
else
{
// Beitrag ausgeben
echo "<p>\n";
if ($result[1][0]["category"])
{
echo "[<a href=\"faq.php?faqmode=category&faqitem=".$result[1][0]["cid"].
"\">".htmlentities($result[1][0]["category"])."</a>]\n";
}
else
{echo "[<a href=\"faq.php?faqmode=category&faqitem=0\">zurück</a>]\n";}
echo "</p>\n";
echo "<p>\n";
echo "<b>".htmlentities($result[1][0]["question"])."</b>\n";
echo "</p>\n";
echo "<p>\n";
echo $result[1][0]["answer"];
echo "</p>\n";
// Link zum gleichen Beitrag im yalst-FAQ-Fenster
echo "<p>\n[".$result[1][0]["link"]."]\n<p>\n";
}
}
// Quellcode zeigen (diese Zeilen bitte für den Praxiseinsatz entfernen!!!)
echo "<hr>\n";
echo "<p>\n";
echo "PHP-Quellcode:<br>\n";
show_source($_SERVER["SCRIPT_FILENAME"]);
echo "</p>\n";
?>
</body>
</html>