Page 1 of 2 1 2 LastLast
Results 1 to 15 of 16

Thread: CGI App

  1. #1

    Question CGI App

    Hai!

    Ben weer eens begonnen met CGI met Delphi, eerder nog geen tijd gehad...

    Maar nu snap ik toch ff iets niet...

    Stel he:

    Ik heb een frame pagina gemaakt en in het rechteronder frame moet een dynamische pagina worden geladen

    de frameset ziet er dus zo uit:

    <frameset rows="100%,*" border=0 framespacing="0">
    <frame name="mainpage" scrolling="auto" noresize src="location" >
    </frameset>
    <noframes><body bgcolor="#FFFFFF">
    </body></noframes>

    ------------------------------------------------------------------------------------------
    Die mijnpage.exe/dynapage heeft een pageproducer, aangezien ik eerst het document in html heb gemaakt en er maar een paar tabellen kunnen veranderen...

    Dus in dat html bestand staat zoiets van:

    <table cellspacing=0 cellpadding=0 width=100% height=100% border=0 background=images/background.gif >

    <tr>
    <td align=center class=pb width=300 height=200>

    <!-- spacing table -->
    <table border=0 width=250 height=30 >
    <tr>
    <td align=right>
    <a href=# class=leftnav>Bewerk</a>
    </td>
    <td align=right>
    <a href=# class=leftnav>Verwijder</a>
    </td>
    </tr>
    </table>

    <table border=0 width=246 height=140 align=right>

    <tr>
    <td valign=top class=ad>

    <#adtext>

    </td>
    <td>
    &nbsp;
    </td>
    </tr>
    </table>
    </td>

    Op de plaats van <#adtext> moet dus dynamische content komen... dat lukt wel!
    Alleen.... Alle plaatjes werken niet meer!

    in de status balk zoekt hij ook naar : http://localhost/cgi-bin/mijnpage.ex...background.gif !!!!1

    dat is verkeerd want de plaatjes staan in htdocs/images !!!

    zelfs al typ je <img src=http://localhost/images/background.gif> zoekt hij nog verkeerd?!!

    so what's wrong?!!?!
    Everybody lies, but it doesn't matter since nobody listens.

  2. #2
    Oeps..... Mijn fout... had de verkeerde dir in http://localhost/test/images/background.gif stond het plaatje!

    sorry!


    maar dan nog... Liever willen we natuurlijk niet zo'n statische url als source, maar een relatieve, anders moet je als je je pagina's verplaatst gelijk alles aanpassen!?

    iemand een idee!
    Everybody lies, but it doesn't matter since nobody listens.

  3. #3
    En toch is het ook niet echt wat ik moet hebben...

    ik wil nl. gewoon van af een bepaald punt in dat html bestand dingen uit de database ophalen en controleren of en wat er neergezet moet worden dat dan doen.. daarna weer stuk standaard html...

    any idea?!
    Everybody lies, but it doesn't matter since nobody listens.

  4. #4
    Hoi Insane,

    Als de pagina via je PageProducer naar je webserver wordt gestuurd verwijzen inderdaad alle relatieve paden naar je PageProducer. Als er dan ergens in je HTML staat: ..\Images\Image.gif, dan wordt die image in je CGI applicatie gezocht. Je zou die images dan in je CGI kunnen laden en dan doorsturen naar je server, je houdt dan één ingang, nl. je CGI app. Dit is de netste oplossing omdat alles door je CGI gaat, maar is wel wat meer werk.

    Als je kiest voor twee 'ingangen', dus gedeeltelijk via je CGI app en gedeeltelijk statisch van de server, heb je een aantal mogelijkheden maar die zijn afhankelijk van je webserver. Als je de mogelijkheid hebt om server side includes (SSI) te gebruiken is dat de beste optie. Je maakt je HTML bestanden aan en die roep je op de gewone manier aan, op punten waar je je CGI wilt gebruiken doe je dat via SSI. Meer info over SSI vind je op http://www.digitalauthors.com/author...?redirect=done

    Een tweede mogelijkheid is het gebruik van inline frames. Je maakt je pagina's weer op de gewone manier en je CGI gedeelte voeg je in m.b.v. IFRAME statements. Meer over inline frames vind je op http://echoecho.com/html40/present/frames.html#h-16.5
    Marcel

  5. #5
    Hai!

    Ik heb het geprobeerd met SSI dmv...

    <!--#exec cgi="/cgi-bin/test.exe"-->

    in een .shtml file te zetten.

    heb gewoon als output in delphi staan:

    writeln('test test test test');

    en als je dan dat bestand opent (via OMNIHTTPserver natuurlijk) geeft hij deze output:

    Status: 200 OK Content-Type: text/html Content: test test test test

    waarom zet hij al die onzin ervoor? ik wil alleen test test test test op mijn scherm krijgen!!!!
    Everybody lies, but it doesn't matter since nobody listens.

  6. #6
    Waarom doe je een writeln i.p.v. Response.Content := "Text"?

    Ik ben even aan het testen geslagen, includes gaan bij mij goed (In dit geval op een Appache server) als ik het volgende gebruik:
    Code:
    <!--#include virtual="/cgi_bin/nltracking.exe"-->
    Marcel

  7. #7
    writeln en response.content geven hetzelfde resultaat...


    apache geinstalleerd, weet alleen niet precies wat je precies aan moet passen in httpd.conf...

    heb wel een addtype .shtml etc uncomment... maar dan krijg ik helemaal niks op het scherm..

    cgi-dir staat goed want gewoon aanroepen van localhost/cgi-bin/test.exe geeft wel test test test op het scherm...

    wat moetje nog meer aanpassen om SSI te laten werken met Apache?!
    Everybody lies, but it doesn't matter since nobody listens.

  8. #8
    include virtual :

    als ik dat doe dan geeft hij de inhoud van test.exe op het scherm!

    met exec krijg ik nog het meeste resultaat alleen die onzin moet nog weg...

    PWS geinstallleerd.. heeft zelfde probleem...

    apache nog steeds niet gelukt, maar ligt volgens mij niet aan de server...

    ik moet toch standalone application pakken en niet die win-cgi ??? toch
    Everybody lies, but it doesn't matter since nobody listens.

  9. #9
    ik moet toch standalone application pakken en niet die win-cgi ??? toch
    Wat bedoel je hiermee? Je moet wel als eerste een CGI applicatie maken, geen gewone applicatie. Verder heb ik het idee dat je je virtual directory niet als scriptalias hebt aangegeven in Apache waardoor je CGI niet wordt uitgevoerd maar 'gedownload'. Dat doe je met het commando
    Code:
    scriptAlias /cgi_bin/ "d:/root/cgi-bin/"
    Marcel

  10. #10
    Originally posted by Marcel

    Als de pagina via je PageProducer naar je webserver wordt gestuurd verwijzen inderdaad alle relatieve paden naar je PageProducer. Als er dan ergens in je HTML staat: ..\Images\Image.gif, dan wordt die image in je CGI applicatie gezocht. Je zou die images dan in je CGI kunnen laden en dan doorsturen naar je server, je houdt dan één ingang, nl. je CGI app. Dit is de netste oplossing omdat alles door je CGI gaat, maar is wel wat meer werk.
    Het werkt nu dus allemaal.. Het lag inderdaad toch aan je pad.. je moest echt helemaal de dirs enzo ook meegeven src=/test/images/header.gif

    maar je hebt het erover om de plaatjes in je cgi te laden.. ik gebruik nu een pageproducer met als html-lines mijn bestand... zodat je dus geen html bestand meer hebt omdat hij dat uit de .exe haalt...

    is het dan ook mogelijk om je plaatjes meete compilen in je app. zodat je ook geen plaatjes meer hebt?

    en zo ja... kun je ze dan ook laten preloaden enzo?
    Everybody lies, but it doesn't matter since nobody listens.

  11. #11
    Ik denk dat je de plaatjes inderdaad als resources mee zou kunnen linken, je executable bevat dan je 'hele website'.

    Overigens zou ik zelf nooit voor de optie kiezen om de HTML in je programma te zetten. Je verliest dan één van de grootste voordelen van web programming nl. de ultieme scheiding tussen user interface en logica. Als je de HTML en images e.d. helemaal buiten je programma houdt kun je een grafisch eenvoudige versie van je programma opleveren die je gebruiker helemaal naar zijn eigen stijl kan inrichten. Het enige waar hij zich aan moet houden is de set van tags waar je programma iets mee kan. Als je alles in het programma zet is het toch weer één black box.
    Marcel

  12. #12
    over het algemeen is dat inderdaad waar... alleen ik heb ook nog wel de html bestanden om zelf te editten, maar het is natuurlijk cool als je dat in je exe zet allemaal, en als er iets mis is gaat kijken wat er is....

    Aanpassen wordt denk ik toch moeilijk met die tags enzo en waarschijnlijk zou heel de site toch maar vern***t worden, dus dat maakt dan niet meer uit...


    maar hoe zit dat met dat meelinken in de resource... mijn eigenljike vraag dus...
    Everybody lies, but it doesn't matter since nobody listens.

  13. #13
    Op About Delphi staat een artikel over hoe je met resources in je executable omgaat: http://delphi.about.com/library/weekly/aa113099a.htm Volgens mij staat daar alles in. Na het laden stream je de images naar je content. Weet je hoe dat werkt?
    Marcel

  14. #14
    nog niet...
    Everybody lies, but it doesn't matter since nobody listens.

  15. #15
    ik lees net dat artikel maar ze praten alleen over bitmaps... terwijl die dingen kei groot zijn enzo... en voor internet je toch meestal jpg, gif of png gebruikt... (of alledrie)

    kun je die ook resourcen dan?
    Everybody lies, but it doesn't matter since nobody listens.

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 9
    Last Post: 07-Feb-06, 17:50
  2. Geminmaliseerde app verbruikt minder geheugen
    By Hans Brenkman in forum Algemeen
    Replies: 2
    Last Post: 17-May-04, 11:13
  3. Setfocus voor mijn APP
    By SvG in forum Algemeen
    Replies: 2
    Last Post: 04-May-02, 19:41
  4. Van cgi naar dll ?
    By vzundert in forum Algemeen
    Replies: 13
    Last Post: 25-Jan-02, 11:47
  5. Background picture in CGI app
    By dbootsma in forum Algemeen
    Replies: 7
    Last Post: 05-Sep-01, 17:24

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •