Seite 1 von 2

Seiten aus Datenbank mit Coldfusion einbinden

Verfasst: 09.05.2004, 12:37
von alesis
Hallo zusammen…

In letzter Zeit, setze ich mich mit der Programmiersprache Coldfusion auseinander.
Nun habe ich folgendes Problem… ich habe eine Datenbank erstellt.
In dieser Datenbank, habe ich eine Tabelle mit 3 Spalten

`id` int(4) NOT NULL default '0',
`titel` varchar(50) NOT NULL default '',
`page` blob NOT NULL,

Mein Ziel ist es, sämtliche Pages in die Datenbank zu speichern, so dass ich sie direkt aus der Datenbank einfügen kann.

Das Layout auf meiner ersten Seite (index.cfm) habe ich mit einer Tabelle mit 2 Spalten aufgebaut.
In der Linken Seite sind die Links zu den Seiten in der Datenbank, und in der rechten Seite, werden die Seiten die in der Datenbank gespeichert sind inkludiert, nachdem man den jeweiligen Link in der linken Spalte angeklickt hat.

So sieht die Seite aus!

<cfquery name="qhome" datasource="databox" username="root" password="root">
select titel
from verwaltung
</cfquery>

<cfquery name="qteam" datasource=" databox " username="root" password="root">
select titel
from verwaltung
</cfquery>

<cfquery name="qservices" datasource=" databox " username="root" password="root">
select titel
from verwaltung
</cfquery>

<cfquery name="qplanung" datasource=" databox " username="root" password="root">
select titel
from verwaltung
</cfquery>

<cfquery name="qproduktion" datasource=" databox " username="root" password="root">
select titel
from verwaltung
</cfquery>

<html>
<head>
<title>Test</title>
</head>
<body bgcolor="#9999CC">

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td width="15%" height="95">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="index.cfm?id=1">Home</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=2">Team</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=3">Services</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=4">Planung</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=5">Produktion</a></td>
</tr>
</table></td>
<td width="73%">

<cfif IsDefined("id")>
<cfif id 1>
<cfoutput>#qhome#</cfoutput>
</cfif>
<cfif id 2>
<cfoutput>#qteam#</cfoutput>
</cfif>
<cfif id 3>
<cfoutput>#qservices#</cfoutput>
</cfif>
<cfif id 4>
<cfoutput>#qplanung#</cfoutput>
</cfif>
<cfif id 5>
<cfoutput>#qproduktion#</cfoutput>
</cfif>
<cfelse>
<cfoutput>#qhome#</cfoutput>
</cfif>
</td>
<td width="12%">&nbsp;</td>
</tr>
</table>
</body>
</html>

Für euch wird es bestimmt ein Kinderspiel sein, ich bin halt noch am lernen!
:-?

Vielen Dank für eure Hilfe

MFG Alesis

Verfasst:
von

Verfasst: 09.05.2004, 12:44
von alesis
Uuuups ganz vergessen!!

Ich konnte nicht herausfinden wo ich den Fehler gemacht habe, vermutlich stimmen nicht einmal die Links in der Linken Seite.

Oder vielleicht werden die Seite die in der Datenbank sind anders inkludiert.

Vielen Dank für eure Hilfe!

Mit freundlichen Grüßen Alesis

Verfasst: 09.05.2004, 13:31
von alesis
Hallo zusammen...

irgendwie konnte ich mein Problem lösen. Es gibt bestimmt einen viel besseren Weg.
Ich wäre euch trotzdem sehr dankbar, wenn ihr mir diesen Zeigen könntet.



<cfquery name="qhome" datasource="databox" username="root" password="root">
select page
from verwaltung where id=1
</cfquery>

<cfquery name="qteam" datasource="databox" username="root" password="root">
select page
from verwaltung where id=2
</cfquery>

<cfquery name="qservices" datasource="databox" username="root" password="root">
select page
from verwaltung where id=3
</cfquery>

<cfquery name="qplanung" datasource="databox" username="root" password="root">
select page
from verwaltung where id=4
</cfquery>

<cfquery name="qproduktion" datasource="databox" username="root" password="root">
select page
from verwaltung where id=5
</cfquery>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#9999CC">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td width="15%" height="95">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="index.cfm?id=1">Home</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=2">Team</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=3">Services</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=4">Planung</a></td>
</tr>
<tr>
<td><a href="index.cfm?id=5">Produktion</a></td>
</tr>
</table></td>
<td width="73%">

<cfif IsDefined ("id")>
<cfif id is ("1")>
<cfoutput query="qhome">#qhome.page#</cfoutput>
</cfif>
<cfif id is ("2")>
<cfoutput query="qteam">#qteam.page#</cfoutput>
</cfif>
<cfif id is ("3")>
<cfoutput query="qservices">#qservices.page#</cfoutput>
</cfif>
<cfif id is ("4")>
<cfoutput query="qplanung">#qplanung.page#</cfoutput>
</cfif>
<cfif id is ("5")>
<cfoutput query="qproduktion">#qproduktion.page#</cfoutput>
</cfif>
<cfelse>
<cfoutput query="qhome">#qhome.page#</cfoutput>
</cfif>
</td>
<td width="12%">&nbsp;</td>
</tr>
</table>
</body>
</html>

Gruss Alesis

Verfasst:
von

Verfasst: 09.05.2004, 15:12
von innuendo
Grias Di,

oiso... das ist ziemlich schlimm was du gemacht hast, ziemlich, ehrlich!

Also:


du hast:
`id` int(4) NOT NULL default '0',
`titel` varchar(50) NOT NULL default '',
`page` blob NOT NULL,

Query+Anzeige Menü

<cfquery name="get_menu" datasource="....>
select id, titel from table
order by id
</cfquery>

<cfoutput query="get_menu">
<a href="index.cfm?id=#id#" title="#titel#">#titel#</a>
</cfoutput>


<cfif Isdefined('url.id')>

<cfquery name="get_content" datasource="....>
select content from table
where
id = #url.id#
</cfquery>

<cfoutput query="get_content">
#page#
</cfoutput>

<cfelse>
Dann tu irgendwas...
</cfif>


Ok, das schmeist du noch in deinen Table rein - und das müsste es gewesen sein. Du hast es ganz richtig erkannt - sehr kompliziert, da hättest du ja gleich PHP oder ASP nehmen können ;-)

Innuendo

Verfasst: 09.05.2004, 15:16
von alesis
Wow genial!

Ich liebe Coldfusion. ;-)

Merci viel mal!

Verfasst: 09.05.2004, 15:29
von innuendo
Bitte - gerne geschehen.

Coldfusion ist genial, speziell für Anfänger die etwas mit Datenbanken machen wollen. Sehr schnelle Ergebnisse, verständnisvoll aufgebaut.

Aber glaub mir - man kann damit auch Sachen machen, da wird dir anders :-)

Innuendo

Verfasst: 09.05.2004, 15:33
von alesis
Ja das denke ich mir, doch im Vergleich zu PHP ist es viel viel leichter.
Für meinen Gebrauch ist es mehr als gut.

Frage: Kannst du mir ein Buch empfehlen das Coldfusion mit SQL beinhaltet?

Vielen Dank

Gruzz Alesis

Verfasst: 09.05.2004, 15:43
von innuendo
Hallo Alesis,

ich kann dir ein Buch besonders empfehlen:

ColdFusion MX . Professionelle Anwendungsentwicklung fürs Web

https://www.amazon.de/exec/obidos/ASIN/ ... 56-8142935

bzw. ohne Referrer: https://www.amazon.de/exec/obidos/ASIN/ ... 56-8142935


Wenn's auch ein englisches Buch sein kann, dann nimm' eins von Ben Forta, DEM Coldfusion Guru!

Links für Coldfusion im deutschsprachigen Raum: https://www.cfml.de
Oder trage dich in die CFUG-Liste ein unter https://www.cfug.de
Coldfusion Blog: https://www.bloginblack.de
Coldfusion Blog II: https://www.cielen.com/blog

Ansonsten hier weiterfragen (aber ich denke, dass ich der einzige Coldfusion-Jünger bin, wenn nicht bitte melden!).

lg,
Innuendo

Verfasst: 09.05.2004, 15:49
von alesis
Vielen Dank für deine Infos...

Dieses Buch ist wircklich gut und ich habe es bereits!
Doch ich suche nach einem Buch das beide Thema hat.

Coldfusion & SQL

Oder findest du dass dieses Buch ausreicht um mit Datenbanken umgehen zu können?

Vielen Dank

Gruzz Alesis

Verfasst: 09.05.2004, 15:54
von innuendo
Ja, denke ich schon.

Was möchtest du mit Datenbanken machen? Ich glaube eher du bräuchtest dann ein reines SQL-Buch, denn wie man SQL-Queries in Coldfusion wiedergibt ist genug drinnen (imho).

Hier musst du aber wieder aufpassen, welches SQL? MySQL, MS-SQL, Jet-SQL, ...?

Innuendo

Verfasst: 09.05.2004, 16:06
von alesis
Klar... ich dacht MySQL.

Du hasst recht, es wird das Beste sein, ein MySQL Buch zu Kaufen.
Schlussendlich spielt es ja keine Rolle welches SQL Buch, ist die SQL Sprache nicht überall gleich?

Gruzz Alesis

Verfasst: 09.05.2004, 16:14
von innuendo
Nein, SQL ist nicht gleich SQL.

Ein Beispiel:
Du möchtest nur die ersten 3 Datensätze ausgeben:

MySQL
select * from table order by id limit 3

MS-SQL
select top 3 * from table order by id


Es gibt kleine Differenzen, die aber "nerven" können. Es gibt aber auch hier im Web sehr viele Infos zu MySQL.

Darf ich fragen, welchen Hoster du hast?

lg,
Innuendo

Verfasst: 09.05.2004, 16:18
von alesis
Alles klar!

Klar darfst du!

https://www.emni.ch (in Bern)

Gruss Alesis und danke viel mal

Verfasst: 09.05.2004, 17:30
von innuendo
Ich glaube, dass der Hoster ok ist (gibt ja nur wenige schwarze Schafe in der CF-Szene). Bist gut gelandet.

Was mich auch verzückt ist, dass die "kleine" Schweiz so auf Coldfusion setzt. Ich glaube dort programmieren mehr Leute mit Coldfusion als mit PHP ;-)

Innuendo

Verfasst: 09.05.2004, 17:42
von alesis
Danke fürs Kontrollieren.

Ich hätte gedacht es würden viel mehr Leute in PHP programmieren als mit CFM.
Ich hatte mit PHP angefangen, doch als ich sah wie schnell ich eine Formularvalidierung in Coldfusion machte, wusste ich dass die Zeit die ich mit PHP verbrachte, vergeben war!

Gruss Alesis