Seite 3 von 10

Verfasst: 04.11.2007 20:16
von andy3000
Muss doch noch ein Problem melden.
Bei mir lokal auf dem Rechner läuft alles ohne Probleme.
Wenn ich aber alles auf meinen Funpic-Webspace hochlade, bekomme ich Schwierigkeiten.
Da wird nichts angezeigt. Außerdem wird die Seite nur bis

Code: Alles auswählen

<div style="padding:3px;background-color:transparent;">
geladen. Ab da ist Schluss der Rest der Seite wird nicht geladen?
An was könnte es liegen?
Danke im Voraus!

Verfasst: 04.11.2007 22:11
von Kendoo
also die forum.xml wird ja automatisch erstellt, das hast Du schon selber erkannt,

wenn das bei funpic nicht funktioniert, könnte es daran liegen, dass die php Funktion simplexml_load_file nicht zur Verfügung steht,

müsstest Du mal in die phpinfo gucken ob xml Funktionen überhaupt vorhanden sind dort, wenn nicht wechsele den Hoster, :D

Pytalhost ist auf alle Fälle 1000 Mal besser als Funpic auch wenn es da auch Werbung gibt aber von den Funktionen her gibts da so gut wie alles

Verfasst: 05.11.2007 13:50
von andy3000
Alles klar, vielen Dank für die Information. :)
Ich werde schauen.

Edit: ich habe geguckt und folgendes gefunden:

XML Support active
XML Namespace Support active
EXPAT Version expat_1.95.8

Funpic scheint XML zu unterstützen. liegt es also nicht daran?

Edit2: Doch es liegt daran. ich habe im Forum von Funpic geguckt.
Dort steht als Antwort: Ist eine PHP5 Funktion, auf Funpic nicht möglich.
Tja, es scheint daran zu liegen. Vielen Dank!

Verfasst: 05.11.2007 16:26
von Kendoo
nun ja, ist nur für PHP5, aber man könnte es auch mit der Funktion
file_get_contents machen, dazu müsste man lediglich die function makeXML etwas ändern und das Auslesen dann in der last_topics.php

ist eigentlich auch nicht weiter wild, hätte es wahrscheinlich auch so gemacht, wenn es bei mir auch diese Probleme gegeben hätte, wenn ich Zeit habe passe ich diese Funktion mal an,

Verfasst: 05.11.2007 17:48
von andy3000
Danke, es wäre sehr nett, wenn du das ändern könntest.
Dann könnte ich die Statistik schon jetzt nutzen. :P
Also, ich hoffe, dass wenn du's geändert hast, man es hier finden kann.

Verfasst: 08.11.2007 18:30
von andy3000
Da Kendoo zurzeit anscheinend keine Zeit hat, den Mod umzuschreiben, wollte ich fragen, ob sich noch jemand damit auskennt. Ich wollte nämlich die Statistik sehr gerne verwenden und das kann ich bis jetzt nicht.
Danke!

Verfasst: 09.11.2007 04:19
von Kendoo
ich habs mir nochmal genauer angeguckt und so kompliziert ist es gar nicht, es gibt auch XML Parser Funktionen unter PHP 4,

die XML Datei forum.xml mit gültigen XML hast Du ja schon fertig, das heißt Du brauchst nur noch eine Funktion die Dir die Daten daraus wieder aufbereitet, mal sehen vllt komm ich jetzt am WE dazu aber ich kann nichts versprechen

Verfasst: 09.11.2007 06:43
von andy3000
Danke! :grin:
Die Statistik ist echt cool.

Verfasst: 10.11.2007 03:01
von Kendoo
So, hier hast Du :D

last_topics.php (für PHP4)

Code: Alles auswählen

<div style="padding:3px;background-color:transparent;">
<?php
$kendoo = "<a style=\"display:block;float:right;\" href=\"http://kfa-teampage.pytalhost.com/\" title=\"kfa-teampage\" onclick=\"window.open(this.href); return false;\"><span style=\"font-size:xx-small;color:red;\">© KenDoo</span></a>";
function xml2ary(&$string) {
$parser = xml_parser_create();
xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
xml_parse_into_struct($parser, $string, $vals, $index);
xml_parser_free($parser);
$mnary = array();
$ary = &$mnary;
foreach ($vals as $r) {
$t = $r['tag'];
if($r['type'] == 'open') {
if(isset($ary[$t])) {
if(isset($ary[$t][0])) $ary[$t][] = array();
else $ary[$t] = array($ary[$t], array());
$cv = &$ary[$t][count($ary[$t])-1];
}
else $cv = &$ary[$t];
if(isset($r['attributes'])) {
foreach ($r['attributes'] as $k => $v) $cv['_a'][$k] = $v;
}
$cv['_c'] = array();
$cv['_c']['_p'] = &$ary;
$ary = &$cv['_c'];
}
elseif($r['type'] == 'complete') {
if(isset($ary[$t])) {
if(isset($ary[$t][0])) $ary[$t][] = array();
else $ary[$t] = array($ary[$t], array());
$cv = &$ary[$t][count($ary[$t])-1];
}
else $cv = &$ary[$t];
if(isset($r['attributes'])) {
foreach ($r['attributes'] as $k => $v) $cv['_a'][$k] = $v;
}
$cv['_v'] = (isset($r['value']) ? $r['value'] : '');
}
elseif($r['type'] == 'close') { 
$ary = &$ary['_p'];
}
}
_del_p($mnary);
return $mnary;
}

function _del_p(&$ary) {
foreach ($ary as $k => $v) {
if($k === '_p') unset($ary[$k]);
elseif(is_array($ary[$k])) _del_p($ary[$k]);
}
}

$xml=xml2ary(file_get_contents('pfad zur/forum.xml'));

if(!$xml) {
echo "Keine Daten verfügbar";
}
else {
for($i=0;$i<5;$i++){
$typ = $xml['ResultSet']['_c']['topic'][$i]['_c']['typ']['_v'];
$subject = $xml['ResultSet']['_c']['topic'][$i]['_c']['subject']['_v'];
$zeit = $xml['ResultSet']['_c']['topic'][$i]['_c']['zeit']['_v'];
$starter = $xml['ResultSet']['_c']['topic'][$i]['_c']['starter']['_v'];
$poster = $xml['ResultSet']['_c']['topic'][$i]['_c']['poster']['_v'];
$colour = $xml['ResultSet']['_c']['topic'][$i]['_c']['colour']['_v'];
$p_id = $xml['ResultSet']['_c']['topic'][$i]['_c']['p_id']['_v'];
$t_id = $xml['ResultSet']['_c']['topic'][$i]['_c']['t_id']['_v'];
$f_id = $xml['ResultSet']['_c']['topic'][$i]['_c']['f_id']['_v'];
$views = $xml['ResultSet']['_c']['topic'][$i]['_c']['views']['_v'];
$replies = $xml['ResultSet']['_c']['topic'][$i]['_c']['replies']['_v'];

switch ($typ){
case 3: $icon = "announce_unread.gif"; $title = "Announcement"; break;
case 2: $icon = "announce_unread.gif"; $title = "Global Announcement"; break;
case 1: $icon = "sticky_unread.gif"; $title = "Sticky"; break;
default: $icon = "topic_unread.gif"; $title = "Topic";
}

echo "<img src=\"images/".$icon."\" width=\"14\" height=\"15\" alt=\"".$title."\" />&nbsp;<a style=\"color:#0B4A70;\" href=\"Pfad zum Forum/viewtopic.php?f=".$f_id."&t=".$t_id."&p=".$p_id."#p".$p_id."\" title=\"".$subject."\" onclick=\"window.open(this.href); return false;\">".((strlen($subject)>40)?utf8_substr($subject,0 , 40)."...":$subject)."<img src=\"images/pfeil.gif\" width=\"16\" height=\"7\" alt=\"zum Beitrag\" /></a><br />\n<span style=\"font-size:x-small;\">by: <strong><span style=\"color:".(($colour)?"#".$colour:"black").";\">".$poster."</span></strong> started by: ".$starter." (Replies: ".$replies.", Views: ".$views.")<br />\n".date("D d.M Y, H:i a", $zeit)."</span><br />\n\n";
}
}
print $kendoo;
?>
</div>
Wie Du siehst, war es echt ein Haufen Arbeit => Scheiß PHP4 :grin:
Wenn Du den Link zu meiner Page nicht willst, bitte ich Dich zumindest an anderer Stelle in Deiner Page einen Link zu meiner Page zu setzen, du weißt ja Backlinks kann man nie genug haben :wink:
ich würde auch einen zu Deiner setzen dann,



mfg kendoo

Verfasst: 10.11.2007 08:21
von andy3000
Hallo,

vielen Dank! Das war ja wirklich ein Haufen Arbeit, :grin:
Einen Link hast du natürlich auch verdient. Wie wär's unter Partner auf der Startseite? Hab vor so eine Partner-Box einzurichten. :wink: