Eigen twitter RSS

Hulp nodig bij een modificaties of op zoek naar een MOD?
Forumregels

LEES: Richtlijnen voor Support. Vul de support template in!
phpBB3.0.x
Verschaf iemand geen servertoegang tenzij het niet anders kan. Maak altijd eerst een volledige backup en verander de inloggevens na afloop. Eigen risico.
Plaats reactie
Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Eigen twitter RSS

Bericht door Microfacts » 19 nov 2010, 22:36

  • Modificatie & Versie:
    Directe link naar de modificatie:
    Adres van je forum: http://
    phpBB versie:
    Heb je onlangs een andere modificatie of stijl geïnstalleerd?

    Wat is het probleem?
Ik ben bezig om een script te maken om auto al ons nieuws uit de databace te trekken en in twitter te gooien verder als dit kom ik niet enige wat ik zie zijn errors:P

Wie ziet mijn fouten?

Code: Selecteer alles

<?php
// We willen GEEN php, maar xml:
header ('Content-Type: text/xml');
// Verbinden met de database
define ('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : 'forum_cms/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
//string htmlspecialchars  ( string $string  [, int $quote_style= ENT_COMPAT  [, string $charset  [, bool $double_encode= true  ]]] )
// Errors voorkomen:
if(empty($_GET['feed']))
$feed = 'Geen berichten';
else
$feed = $_GET['feed'];
// Begin maken:
echo "<?xml version=\"1.0\" encoding=\"windows-1252\"?>
<rss version=\"2.0\" xmlns:coop=\"http://www.google.com/coop/namespace\"> 
<channel>
    <title>Factscommunity.nl - Nieuws</title>
    <link>http://www.factscommunity.nl/</link>
	<description>Het laatste Gaming nieuws. Van XBOX tot Wii<description>
	<language>nl</language>";

// Nieuwsberichten
$sql3 = "SELECT DISTINCT( p.`post_id` ), `p`.`bbcode_uid`, t.`topic_id`, t.`topic_time`, t.`forum_id`, t.`topic_title`, t.`topic_first_poster_name`, t.`topic_replies`, f.`forum_name`
		FROM `Forum_topics` AS `t`, `Forum_posts` AS `p`, `Forum_forums` AS `f`
		WHERE `t`.`topic_id` = `p`.`topic_id`
		AND `t`.`forum_id` IN ('47', '48', '49', '50','57')
		AND `t`.`topic_first_post_id` = `p`.`post_id`
		AND `t`.`forum_id` = `f`.`forum_id`
		GROUP BY (p.`topic_id`)
		ORDER BY `p`.`topic_id` DESC";
	$result = $db->sql_query_limit($sql3, 0,20);
	while ($row = $db->sql_fetchrow($result))
	$delete_forum = array("`","'","~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","'","\"","\\","|",",","<",".",">","/","?");
	$forum_seo['forum_name'] = str_replace($delete_forum, '', strtolower($row['forum_name']));
	$forum_seo['forum_name'] = str_replace('  ', ' ', $forum_seo['forum_name']);
	$forum_seo['forum_name'] = str_replace(' ', '-', $forum_seo['forum_name']);
	
	$delete_topic = array("~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","\"","\\","|",",","<",".",">","/","?");
	$topic_seo['topic_title'] = str_replace($delete_topic, '', strtolower($row['topic_title']));
	$topic_seo['topic_title'] = str_replace(array("`","'"), '-', $topic_seo['topic_title']);
	$topic_seo['topic_title'] = str_replace('  ', ' ', $topic_seo['topic_title']);
	$topic_seo['topic_title'] = str_replace(' ', '-', $topic_seo['topic_title']);

	$row = preg_replace('/\:[0-9a-z\:]+\]/si', ']', $row);	
	$row = str_replace("\n", "\n<br />\n", $row);
	
	$time = date("d.m.Y H:i", $row['topic_time']);
	$title = stripslashes( $row['topic_title'] );
	
 		{
		$pubdate = ($time);
		$url = "http://www.factscommunity.nl/" . $forum_seo['forum_name'] . "-f" . $row['forum_id'] . "/" . $topic_seo['topic_title'] . "-t" . $row['topic_id'] . ".html";
		$titel = $row['topic_title'];
		$description = $row['post_text']; 
						
		echo "
		<item>
		<title>Nu op de site: <![CDATA[$titel]]></title>
		<guid>$url</guid>
		<coop:keyword><![CDATA[$titel]]></coop:keyword> 
		<link>$url</link>
		<pubDate>$date +21600</pubDate>
		<description><![CDATA[$description]]></description>
	</item>";
	}

echo "</channel>
</rss>";

?>

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Eigen twitter RSS

Bericht door Ger » 20 nov 2010, 08:25

Is het niet veel gemakkelijker om gebruik te maken van een bestaand wiel, ipv dat zelf opnieuw uit te vinden? ;)
>>Twitterfeed

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Eigen twitter RSS

Bericht door Paul » 20 nov 2010, 11:28

Daarnaast is je code zo onoverzichtelijk dat ik het niet ga lezen. Maar zo te zien mist er een while loop ergens.

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 10:47

Ger schreef:Is het niet veel gemakkelijker om gebruik te maken van een bestaand wiel, ipv dat zelf opnieuw uit te vinden? ;)
>>Twitterfeed
Nee wand daar voor heb je juist deze rss met schone urls nodig.
paul schreef:Daarnaast is je code zo onoverzichtelijk dat ik het niet ga lezen. Maar zo te zien mist er een while loop ergens.
Als we zo gaan doen kan je net zo goed niets posten ik vraag om hulp niet om iemand die mijn code afkraakt.

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Eigen twitter RSS

Bericht door Paul » 23 nov 2010, 10:51

Tja, jij verwacht hulp, maar wij moeten jouw zooi aan code opruimen voordat we je kunnen helpen, geloof je het zelf?

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 11:05

de code is redelijk. Ik weet alleen niet wat er fout is en waarom het niet werkt dacht dat dit een support forum was. Ik vraag om hulp en als iemand mij dat wil bieden dan graag maar zown reactie van je code is ruk en we doen er niets mee is nou niet de insteek waar gebruikers van dit forum op zitten te wachten. volgens mij moet er ergens gewoon een paar tekens en dan moet het werken.

Code: Selecteer alles

    <?php
    // We willen GEEN php, maar xml:
    header ('Content-Type: text/xml');
    
    // Verbinden met de database
    define ('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : 'forum_cms/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
    
    // Errors voorkomen:
    if(empty($_GET['feed']))
    $feed = 'Geen berichten';
    else
    $feed = $_GET['feed'];
   
   // Begin maken:
    echo "<?xml version=\"1.0\" encoding=\"windows-1252\"?>
    <rss version=\"2.0\" xmlns:coop=\"http://www.google.com/coop/namespace\">
    <channel>
        <title>Factscommunity.nl - Nieuws</title>
        <link>http://www.factscommunity.nl/nieuws-f46/</link>
       <description>Het laatste Gaming nieuws. Van XBOX tot Wii<description>
       <language>nl</language>";

    // SQL ophalen
    $sql3 = "SELECT DISTINCT( p.`post_id` ), `p`.`bbcode_uid`, t.`topic_id`, t.`topic_time`, t.`forum_id`, t.`topic_title`, t.`topic_first_poster_name`, t.`topic_replies`, f.`forum_name`
          FROM `Forum_topics` AS `t`, `Forum_posts` AS `p`, `Forum_forums` AS `f`
          WHERE `t`.`topic_id` = `p`.`topic_id`
          AND `t`.`forum_id` IN ('47', '48', '49', '50','57')
          AND `t`.`topic_first_post_id` = `p`.`post_id`
          AND `t`.`forum_id` = `f`.`forum_id`
          GROUP BY (p.`topic_id`)
          ORDER BY `p`.`topic_id` DESC";
          
       $result = $db->sql_query_limit($sql3, 0,20);
       
       while ($row = $db->sql_fetchrow($result))
       
       $delete_forum = array("`","'","~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","'","\"","\\","|",",","<",".",">","/","?");
       $forum_seo['forum_name'] = str_replace($delete_forum, '', strtolower($row['forum_name']));
       $forum_seo['forum_name'] = str_replace('  ', ' ', $forum_seo['forum_name']);
       $forum_seo['forum_name'] = str_replace(' ', '-', $forum_seo['forum_name']);
       
       $delete_topic = array("~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","\"","\\","|",",","<",".",">","/","?");
       $topic_seo['topic_title'] = str_replace($delete_topic, '', strtolower($row['topic_title']));
       $topic_seo['topic_title'] = str_replace(array("`","'"), '-', $topic_seo['topic_title']);
       $topic_seo['topic_title'] = str_replace('  ', ' ', $topic_seo['topic_title']);
       $topic_seo['topic_title'] = str_replace(' ', '-', $topic_seo['topic_title']);

       $row = preg_replace('/\:[0-9a-z\:]+\]/si', ']', $row);   
       $row = str_replace("\n", "\n<br />\n", $row);
       
       $time = date("d.m.Y H:i", $row['topic_time']);
       $title = stripslashes( $row['topic_title'] );
       
          {
          $pubdate = ($time);
          $url = "http://www.factscommunity.nl/" . $forum_seo['forum_name'] . "-f" . $row['forum_id'] . "/" . $topic_seo['topic_title'] . "-t" . $row['topic_id'] . ".html";
          $titel = $row['topic_title'];
          $description = $row['post_text'];
                
                //RSS Printen voor twitterfeed.com met SEO URLS    
          echo "
          <item>
          <title>Nu op de site: <![CDATA[$titel]]></title>
          <guid>$url</guid>
          <coop:keyword><![CDATA[$titel]]></coop:keyword>
          <link>$url</link>
          <pubDate>$date +21600</pubDate>
          <description><![CDATA[$description]]></description>
       </item>";
       }

    echo "</channel>
    </rss>";

    ?>

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Eigen twitter RSS

Bericht door Ger » 23 nov 2010, 11:40

Microfacts schreef:
Ger schreef:Is het niet veel gemakkelijker om gebruik te maken van een bestaand wiel, ipv dat zelf opnieuw uit te vinden? ;)
>>Twitterfeed
Nee wand daar voor heb je juist deze rss met schone urls nodig.
Ik heb het toch al eens gebruikt hoor. :?

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 12:42

Klopt maar je moet een RSS Feed toevoegen twitter feed kan niet zomaar alles auto uit je site trekken.

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Eigen twitter RSS

Bericht door Ger » 23 nov 2010, 12:50

Dan pak je toch gewoon de ATOM Feed van phpBB?

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 13:08

Nee want daar zit niet de clean seo in en wel in deze. En deze pakt van diverde forums wat af. Dus NEE! kan niet.

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Eigen twitter RSS

Bericht door Ger » 23 nov 2010, 13:31

Rustig maar hoor. Ik probeerde je tijd en moeite te besparen. Ik kan toch ook niet ruiken dat jij met een SEO MOD werkt als je dat niet verteld? :?

Succes...

PTish
Berichten: 73
Lid geworden op: 29 jul 2010, 16:03
Locatie: Asten-Heusden
Contacteer:

Re: Eigen twitter RSS

Bericht door PTish » 23 nov 2010, 13:44

paul schreef:Daarnaast is je code zo onoverzichtelijk dat ik het niet ga lezen. Maar zo te zien mist er een while loop ergens.
Halverwege staat er een while loop. De benodigde { en } volgen pas 10 regels later.....

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 14:06

Als je in de code kijkt staat het er 10 20 x en ptish jah en dat betekent?

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Eigen twitter RSS

Bericht door Paul » 23 nov 2010, 14:08

Waarom moeten wij moeite doen voor jou? Je mag blij zijn dat je nog support krijgt hier. Graag iets beleefder reageren.

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 23 nov 2010, 14:43

Al het simpele is al geprobeerd en aangezien paul zo leuk reageerd. leg ik het nog is uit. Ik heb een probleem dat script is om nieuws in de site tekrijgen heb het iets omgebouwt voor de rss zodat ik via twitter feed als het nieuws zo op twitter en andere media kan zetten.

nu werkt het niet en heb ik de helft al verbouwt en begin ik beetje gestrest te worden. Ik ben niet goed met php dat weet ik ken wat basics maar thats al.

http://www.factscommunity.nl/twitter.php < link zoals die nu werkt. + code.

Code: Selecteer alles

    <?php
    // XML in plaats van php
       header ('Content-Type: text/xml');
      // Verbinden met de database
    define ('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
 
    // Errors voorkomen:
    if(empty($_GET['feed']))
    $feed = 'Geen berichten';
    else
    $feed = $_GET['feed'];
   
   // Begin maken:
    echo "<?xml version=\"1.0\" encoding=\"windows-1252\"?>
    <rss version=\"2.0\" xmlns:coop=\"http://www.google.com/coop/namespace\">
    <channel>
        <title>Factscommunity.nl - Nieuws</title>
        <link>http://www.factscommunity.nl/nieuws-f46/</link>
       <description>Het laatste Gaming nieuws. Van XBOX tot Wii<description>
       <language>nl</language>";

    // SQL ophalen
    $sql3 = "SELECT DISTINCT( p.`post_id` ), `p`.`bbcode_uid`, t.`topic_id`, t.`topic_time`, t.`forum_id`, t.`topic_title`, t.`topic_first_poster_name`, t.`topic_replies`, f.`forum_name`
          FROM `Forum_topics` AS `t`, `Forum_posts` AS `p`, `Forum_forums` AS `f`
          WHERE `t`.`topic_id` = `p`.`topic_id`
          AND `t`.`forum_id` IN ('47', '48', '49', '50','57')
          AND `t`.`topic_first_post_id` = `p`.`post_id`
          AND `t`.`forum_id` = `f`.`forum_id`
          GROUP BY (p.`topic_id`)
          ORDER BY `p`.`topic_id` DESC";
          
       $result = $db->sql_query_limit($sql3, 0,20);
       
       while ($row = $db->sql_fetchrow($result))
        {
       $delete_forum = array("`","'","~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","'","\"","\\","|",",","<",".",">","/","?");
       $forum_seo['forum_name'] = str_replace($delete_forum, '', strtolower($row['forum_name']));
       $forum_seo['forum_name'] = str_replace('  ', ' ', $forum_seo['forum_name']);
       $forum_seo['forum_name'] = str_replace(' ', '-', $forum_seo['forum_name']);
       
       $delete_topic = array("~","!","@","#","$","%","^","&","*","(",")","-","_","=","+","[","{","]","}",";",":","\"","\\","|",",","<",".",">","/","?");
       $topic_seo['topic_title'] = str_replace($delete_topic, '', strtolower($row['topic_title']));
       $topic_seo['topic_title'] = str_replace(array("`","'"), '-', $topic_seo['topic_title']);
       $topic_seo['topic_title'] = str_replace('  ', ' ', $topic_seo['topic_title']);
       $topic_seo['topic_title'] = str_replace(' ', '-', $topic_seo['topic_title']);

       $row = preg_replace('/\:[0-9a-z\:]+\]/si', ']', $row);   
       $row = str_replace("\n", "\n<br />\n", $row);
       
       $time = date("d.m.Y H:i", $row['topic_time']);
       $title = stripslashes( $row['topic_title'] );
      
          
          $url = "http://www.factscommunity.nl/" . $forum_seo['forum_name'] . "-f" . $row['forum_id'] . "/" . $topic_seo['topic_title'] . "-t" . $row['topic_id'] . ".html";
          $titel = $row['topic_title'];
          $description = $row['post_text'];
                
                //RSS Printen      
          echo "
          <item>
          <title>Nu op de site: <![CDATA[$titel]]></title>
          <guid>$url</guid>
          <coop:keyword><![CDATA[$titel]]></coop:keyword>
          <link>$url</link>
          <pubDate>$time</pubDate>
          <description><![CDATA[$description]]></description>
       </item>";
       }

    echo "</channel>
    </rss>";

    ?>

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Eigen twitter RSS

Bericht door Ger » 23 nov 2010, 16:30

Haal eerst alles voor <?php eens weg. Nu heb je namelijk witruimte buiten de PHP-tags staan, waardoor je de fout headers already sent(); krijgt.

PTish
Berichten: 73
Lid geworden op: 29 jul 2010, 16:03
Locatie: Asten-Heusden
Contacteer:

Re: Eigen twitter RSS

Bericht door PTish » 24 nov 2010, 00:09

<description>Het laatste Gaming nieuws. Van XBOX tot Wii<description>
Je sluit de tag hier niet goed af.

Code: Selecteer alles

$description = $row['post_text'];
Ik geloof niet dat de key "post_text" bestaat, want die haal je niet uit de database in de SELECT query.

Code: Selecteer alles

$title = stripslashes( $row['topic_title'] );
$titel = $row['topic_title'];
Uiteindelijk gebruik je enkel $titel;

Microfacts
Berichten: 13
Lid geworden op: 06 nov 2009, 10:43

Re: Eigen twitter RSS

Bericht door Microfacts » 24 nov 2010, 09:44

PThis en ger tnks voor de hulp. moet nog wat dingen tweaken en als die klaar is wil ik best de code ter beschikking stellen voor gebruik want denk dat er meerderen zijn die dit willen gebruiken.

http://www.factscommunity.nl/twitter.php

Plaats reactie