Register  Login  
  February 4, 2012  
 Search
 
Foren      
DotNetNuke Forum der Deutschen DotNetNuke Community Minimize

Please be informed that all English forums are locked. You will find the new English forums while following the link.
www.schelian.com


Welcome Guest Search | Active Topics | Members

Profile: gb
About
User Name: gb
Rank: Member
Real Name:
Location Germany
Occupation:
Interests:
Gender: None Specified
Statistics
Joined: Sunday, December 18, 2005
Last Visit: Thursday, June 14, 2007 1:54:05 PM
Number of Posts: 22
[0.17% of all post / 0.01 posts per day]
Avatar
Last 10 Posts
Topic: ASP: XML to ASP to HTML
Posted: Friday, March 16, 2007 1:40:45 PM
Hallo,

ich bin leider nahezu frei von Programmierkenntnissen, hab mir schon einiges zusammengesucht.

Ich möchte folgendes machen:

Auf http://community.warsownews.net soll eine Liste von RSS feeds erscheinen, so wie es gerade ist. Zur Zeit läuft es so, dass ich mit einem ASP script die XML Daten abhole und in HTML umwandle. Hier der Code:
Code:
<%
Response.Expires = -1

' =========== RSS2HTML.ASP for ASP/ASP.NET ==========
' copyright 2005-2007 (c)[url=http://www.Bytescout.com]www.Bytescout.com[/url]
' version 1.21, 27 February 2007
' ===============================================
' ##############################################################
' ####### CHECK OUR COMMERCIAL PRODUCTS FOR ASP/ASP.NET: #######
' SWF Scout [[url]http://bytescout.com/swfscout.html[/url] ]- create, read, modify flash movies (SWF)
' PDFDoc Scout [[url]http://bytescout.com/pdfdocscout.html[/url] ]- generate PDF documents with security options (PDF)
' ##############################################################

' =========== configuration =====================
' ##### URL to RSS Feed to display #########
URLToRSS = "http://www.warsownews.net/v1/DesktopModules/DnnForge-NewsArticles/Rss.aspx?TabID=123&ModuleID=547&MaxCount=25"

' ##### max number of displayed items #####
MaxNumberOfItems = 5

' ##### Main template constants
MainTemplateHeader = "<div id='box'><ul>"
MainTemplateFooter = "</ul></div>"
' #####

' ######################################
Keyword1 = "" ' Keyword1 = "tech" - set non-empty keyword value to filter by this keyword
Keyword2 = "" ' Keyword1 = "win" - set non-empty keyword value to filter by this 2nd keyword too
' #################################

' ##### Item template.
' ##### {LINK} will be replaced with item link
' ##### {TITLE} will be replaced with item title
' ##### {DESCRIPTION} will be replaced with item description
' ##### {DATE} will be replaced with item date and time
' ##### {COMMENTSLINK} will be replaced with link to comments (if you use RSS feed from blog)
' ##### {CATEGORY} will be replaced with item category
ItemTemplate = "<li><a href=" & """{LINK}""" & ">{TITLE}</a></li>"

' ##### Error message that will be displayed if not items etc
ErrorMessage = "Error has occured while trying to process " &URLToRSS & "<BR>Please contact web-master"

' ================================================

Set xmlHttp = Server.CreateObject("MSXML2.XMLHTTP.3.0")
xmlHttp.Open "Get", URLToRSS, false
xmlHttp.Send()
RSSXML = xmlHttp.ResponseText

Set xmlDOM = Server.CreateObject("MSXML2.DomDocument.3.0")
xmlDOM.async = False
xmlDOM.validateOnParse = False
xmlDom.resolveExternals = False

If not xmlDOM.LoadXml(RSSXML) Then
ErrorMessage = xmlDOM.parseError.reason & vbCRLF & ErrorMessage
End If

Set xmlHttp = Nothing ' clear HTTP object

Set RSSItems = xmlDOM.getElementsByTagName("item") ' collect all "items" from downloaded RSS
Set xmlDOM = Nothing ' clear XML

RSSItemsCount = RSSItems.Length-1

' writing Header
if RSSItemsCount > 0 then
Response.Write MainTemplateHeader
End If

j = -1

For i = 0 To RSSItemsCount
Set RSSItem = RSSItems.Item(i)

for each child in RSSItem.childNodes

Select case lcase(child.nodeName)
case "title"
RSStitle = child.text
case "link"
RSSlink = child.text
case "description"
RSSdescription = child.text
case "pubdate"
RSSDate = child.text
case "comments"
RSSCommentsLink = child.text
case "category"
Set CategoryItems = RSSItem.getElementsByTagName("category")
RSSCategory = ""
for each categoryitem in CategoryItems
if RSSCategory <> "" Then
RSSCategory = RSSCategory & ", "
End If

RSSCategory = RSSCategory & categoryitem.text
Next
End Select
next

' now check filter
If (InStr(RSSTitle,Keyword1)>0) or (InStr(RSSTitle,Keyword2)>0) or (InStr(RSSDescription,Keyword1)>0) or (InStr(RSSDescription,Keyword2)>0) then

j = J+1

if J<MaxNumberOfItems then
ItemContent = Replace(ItemTemplate,"{LINK}",RSSlink)
ItemContent = Replace(ItemContent,"{TITLE}",RSSTitle)
ItemContent = Replace(ItemContent,"{DATE}",RSSDate)
ItemContent = Replace(ItemContent,"{COMMENTSLINK}",RSSCommentsLink)
ItemContent = Replace(ItemContent,"{CATEGORY}",RSSCategory)

Response.Write Replace(ItemContent,"{DESCRIPTION}",RSSDescription)
ItemContent = ""
End if
End If

Next

' writing Footer
if RSSItemsCount > 0 then
Response.Write MainTemplateFooter
else
Response.Write ErrorMessage
End If

'Response.End ' uncomment this for use in on-the-fly output
%>


Läuft alles prima, ich hab diesen Code in mehrere einzelne .asp Dateien ausgelagert und für jeden Feed eingestellt. Die einzelnen .asp Dateien fasse ich per include wieder zusammen in der getnews.asp und gebe die Daten aus.

Nun ist es ja so, dass bei jedem Aufruf die Daten neu abgeholt werden und das dauert. Daher würde ich gerne den Output der default.asp mit allen RSS feeds in eine feeds.html Datei auslagern, die ich dann in das Unterverzeichnis /cache/ schreibe. Die default.asp in community.warsownews.net/ soll dann die /cache/feeds.html per include einbinden. Die getnews.asp würde ich mit einem cronjob alle 60 Minuten ausführen. Sie schreibt dann jedesmal die feeds.html neu und so reduziere ich den Ladeaufwand und der User brauch nicht lange warten.

Im Prinzip ist mir die Abfolge klar:
1. Newsfeeds abholen mit getnews.asp
2. Speicherung der Ausgabedaten in einen array/variable (was auch immer)
3. Daten werden in cache/feeds.html geschrieben, dabei wird immer überschrieben
4. default.asp macht include cache/feeds.html

Wie Daten, die ich von einer fremden Seite hole und ausgebe, weiß ich:
Code:
<%
Private Function GetURL(URL)

' --- Instantiieren des Objekts MSXML2.ServerXMLHTTP
Set objHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")

    ' --- Einstellen der Timeouts in Millisekunden
    ' --- Es gibt 4 Parameter, die in der nachstehenden Reihenfolge angegeben werden müssen
    ' -----------------------------------------------------
    ' --- resolveTimeout - Auflösen des Hostnamens
    ' --- connectTimeout - Verbinden mit dem Host
    ' --- sendTimeout - Senden eines Datenpaketes an den Server
    ' --- receiveTimeout - Empfangen eines Datenpaketes vom Server
    ' -----------------------------------------------------
    objHTTP.SetTimeouts 1000, 1000, 1000, 1000000

    ' --- Erstellen des Requests mit folgenden Parametern
    ' --- bstrMethod - Request-Methode
    ' --- bstrURL - Adresse der Seite, die ausgelesen werden soll
    ' --- varAsync - Laden der Seite asynchron (Wenn false, wird synchron geladen)
    objHTTP.open "GET", URL, false

    ' --- Senden des Requests
    objHTTP.send

    ' --- Der gesamte Text der geladenen Seite steht jetzt in ResponseText
    ' --- und wird als Rückgabewert der Funktion GetURL zugewiesen.
    GetURL = objHTTP.ResponseBody

' --- Terminieren des Objekts
Set objHTTP = Nothing

End Function
%>
<html>
<head>
    <title>HTTP GET</title>
</head>
<body>
Hier kommt der Text der Seite[url]http://community.warsownews.net/getnews.asp<br>[/url]
<br>
<% Response.BinaryWrite GetURL("http://community.warsownews.net/getnews.asp") %>
</body>
</html>


Ich ahne, dass man das Scripting.FileSystemObject benutzen muss. Wie ich die Daten aber zwischenspeicher und das FSO benutze, ist mir schleierhaft.

Bin über jede Hilfe dankbar.

Grüße,
Georg
Topic: Google Custom Search Engine
Posted: Wednesday, January 10, 2007 2:14:59 PM
Hallo Daniel,

das mit dem Form ist sehr ärgerlich aber so scheint DNN nun mal gebaut zu sein. Also müsste ich die Suche in ein Modul bauen.

Wie meinst du das mit den Parametern? Ich brauche doch eine Eingabemaske auf der Hauptseite[url=http://www.warsownews.net]www.warsownews.net[/url]. Nen einfachen Link zu der Suche kann ich natürlich auch setzen, ist aber n bischen umständlich für den Benutzer.

Die Suchmaschine von Google umfasst noch weitere Seiten, ist sozusagen ein Angebot. Ich habe bei Google mehere Domains eingetragen und diese mit Tags versehen. So kann sich der Benutzer aussuchen, welche Seiten er in der Trefferliste haben möchte.
Topic: Google Custom Search Engine
Posted: Tuesday, January 09, 2007 10:03:21 AM
Hallo allerseits,

ich habe mir eine auf meine Bedürfnisse zugeschnittene Suchmaschein mit dem Google Co-op Programm gebaut:
http://search.warsownews.net/. Die funktioniert auch wunderbar und ich bin voll zufrieden.

Jetzt möchte ich auf meiner Hauptseite eine kleine Suchbox mit einem Go-Button einrichten, der dann die Suchseite aufruft.

Google liefert für die Suchbox und für die Ergebnisse einen einfachen form und javascript code:
Code:
<!-- Google CSE Search Box Begins -->
<form id="searchbox_007226671880494112939:pcvzatfmyh4" action="">
  <input type="hidden" name="cx" value="007226671880494112939:pcvzatfmyh4" />

  <input name="q" type="text" size="40" />
  <input type="hidden" name="hq" value="warsow"  />
  <input type="submit" name="sa" value="Search" />
  <input type="hidden" name="cof" value="FORID:9" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_007226671880494112939%3Apcvzatfmyh4"></script>
<!-- Google CSE Search Box Ends -->
<br/>
<!-- Google Search Result Snippet Begins -->
<div id="results_007226671880494112939:pcvzatfmyh4"></div>
<script type="text/javascript">
  var googleSearchIframeName = "results_007226671880494112939:pcvzatfmyh4";
  var googleSearchFormName = "searchbox_007226671880494112939:pcvzatfmyh4";
  var googleSearchFrameWidth = 600;
  var googleSearchFrameborder = 0;
  var googleSearchDomain = "www.google.com";
  var googleSearchPath = "/cse";
</script>

<script type="text/javascript" src="http://www.google.com/afsonline/show_afs_search.js"></script>
<!-- Google Search Result Snippet Ends -->


Da ich dafür ein Formular brauche, kann ich den Code nicht einfach in ein Text/HTML Modul kopieren. Ich habe im Xmodforum bereits eine Anfrage gestellt, da aber Xmod prinzipiell Formulare nachbaut, leider läuft das über eine PostBack und das ist laut einem sehr lesenswerten Artikel zum Bau einer ASPX-Seite nicht wünschenswert. Leider habe ich keine Ahnung wie ich den ASPX-Code in ein DNN Modul umwandle.

Hat jemand eine Idee oder sogar selber schon sowas gemacht? Bin für alle Vorschläge dankbar.

Grüße,
Georg
Topic: Modul Forum - Forumbenutzer können löschen? wie kann ich das abschalten
Posted: Friday, October 27, 2006 11:46:04 AM
DnnBB wird soweit ich weiß nicht mehr weiterentwickelt und auch der Support im Forum wurde eingestellt. Ich hatte das Modul im Einsatz und war eigentlich sehr zufrieden, bis auf die Tatsache, dass anstatt der UserNames FullNames in den Topics und Posts angezeigt wurden.

Ich benutze seitdem YAF -[url]http://www.yetanotherforum.net/[/url] - dieses Board wird auch auf dnnportal.de benutzt.

DotNetNuke-Implementierung:[url]http://www.yetanotherforum.net/dnnmodule.aspx[/url]

Ist recht einfach und dauert keine 10 Minuten wenn man der Anleitung folgt.

Einige Themes sind von Anfang an mit dabei.

Viel Erfolg damit!
Topic: Länderliste editieren
Posted: Monday, October 16, 2006 8:51:12 AM
War erfolgreich, vielen Dank!
Topic: Länderliste editieren
Posted: Friday, October 13, 2006 4:18:57 PM
Hallo,

bei mir läuft DNN 3.1.1 und ich würde gerne die Länderliste lokalisieren. Da wir hauptsächlich dt. Kunden haben werden, würde ich gerne "Germany" nach "Deutschland" ändern, "Austria" nach "Österreich" (wie kann man Umlaute einbauen?!) und "Switzerland" nach "Schweiz".

An welcher Stelle ich kann die Änderungen vornehmen?

Grüße,
Georg
Topic: IIS weiterleitung auf bestimmte TabID
Posted: Friday, September 15, 2006 9:10:42 AM
dmueller wrote:

Wenn ich Dich richtig verstanden habe, dann sollen beide Urls auf das gleiche Portal zeigen, lediglich eine anderer Startseite haben - richtig?


Jap so ist es. Bei Eingabe von von[url=http://www.server.de]www.server.de[/url] erscheint ganz normal die Splashpage. Bei Klick auf "weiter" auf der Splashpage gelangt man zu portal.server.de. Wenn man portal.server.de eingibt soll man direkt auf die "Startseite" des Portals gelangen.
Topic: IIS weiterleitung auf bestimmte TabID
Posted: Thursday, September 14, 2006 5:26:21 PM
Leider habe ich kein passenderes Forum gefunden, daher hier:

Ich möchte eine Subdomain auf eine ganz bestimmte Seite weiterleiten, so dass bei Eingabe von portal.server.de z.B. portal.server.de?tabid=xyz aufgerufen wird. Bei Eingabe von[url=http://www.server.de]www.server.de[/url] soll die Splashpage aufgerufen werden.

Wie kann ich das im IIS einrichten?

IIS Version 6.0, DNN 3.1.1
Topic: was genau ist xmod
Posted: Tuesday, September 12, 2006 3:45:06 PM
Xmod ist eine Datensammel und -ausgabestelle. Smile

Kurz umrissen: Per Xmod Formular gibt ein User oder ein Admin Daten ein. Diese werden im XML Format in einer Tabelle gespeichert und können an anderer Stelle mittels HTML+Platzhaltertechnik wieder ausgegeben werden.

Ein klassisches Beispiel wären z.B. ein Gästebuch oder ein Newsscript.

Einträge lassen sich durchsuchen und sortieren, allerdings nicht verknüpfen - und das ist der Punkt, an dem Xmod seine Schwächen hat. Du kannst zwar ein Newssscript damit schreiben, aber es wird nicht mit Kommentaren funktionieren, da sich zwei Xmod Datensätze nicht ohne weiteres verknüpfen lassen.

Zu deinen Anforderungen:

Es gibt einen XMod Calendar, der lässt allerdings nur im Design Änderungen zu.

Onlinebefragungen könnte man wohl nachbauen, allerdings würdest du mit den Daten wenig anfangen können. Du könntest sie lediglich exportieren und mit anderen Programmen grafisch darstellen. Zum Ausführen von Rechenoperationen eignet sich Xmod nicht!

Für Rückfragen bin ich jederzeit ansprechbar.

Grüße,
Georg
Topic: DNN Hosting
Posted: Thursday, August 03, 2006 10:50:22 AM
Ein Bekannter sagte mir, dass es MSDE gar nicht mehr zum Runterladen gibt, da SQL Express Edition 2005 nun von MS neuer Standard werden soll. Limitiert SQL Express alle verwalteten Datenbanken auf 1 GB oder jede einzelne DB auf 1 GB? Letzteres wäre ja noch erträglich, wenn man auf allumfassende Logfiles verzichten kann.

Ich werd mir das Angebot von Strato mal anschauen. Danke erstmal für eure Tipps.

Main Forum Rss Feed : RSS

Yet Another Forum.net version 0.9.9 running under DotNetNuke.
Copyright © 2003-2004 Yet Another Forum.net. All rights reserved.

  

  Home | Informationen | Verzeichnis | Downloads | Foren | Module | Weblog | Kontakt | Artikel  
  (c) 2002 - 2005 Schelian IT Beratung   Terms Of Use | Privacy Statement