Hvordan legge inn javascript i php-sider?

En tråd i 'PHP, SQL og databaser' startet av Bjrl, 1 Jan 2009.

  1. Bjrl Medlem

    Innlegg:
    816
    Jeg skal legge in et javascript fra Ratix for å få statistikk i en netbutikk drevet med php (Zen Cart). Men jeg innbiller meg at det er noe jeg må gjøre med javascriptet for å få det "til å passe". Det blir i allefall bare feilmeldinger om jeg legger det inn uredigert.

    Hva gjør jeg...?

    Det jeg skal legge inn ser slik ut:

    <!-- START Ratix.no ratingskode -->
    <script type="text/javascript">
    <!--
    Nnv=navigator;Nna=Nnv.appName;Nd=document;Nd.cookie="b=b";Nc=0;if(Nd.cookie)Nc=1;
    Nn=(Nna.substring(0,2)=="Mi")?0:1;Ns=screen;Npx=(Nn==0)?Ns.colorDepth:Ns.pixelDepth;
    str='<img src="http://c.ratix.no/7341;'+Ns.width+'x'+Ns.height+';'+Npx+';'+Nc+';';
    str=str+escape(Nd.referrer)+';'+Math.random()+'" width="88" height="31" border="0">';
    document.write('<a href="http://www.ratix.no/" alt="Ratix.no Rating" target="_blank">'+str+'</a>');
    // -->
    </script>
    <noscript><a href="http://www.ratix.no/" target="_blank"><img src="http://c.ratix.no/7341;0x0;0;0;-;0" alt="Ratix.no Rating" width="88" height="31" border="0"></a></noscript>
    <!-- END Ratix.no ratingskode -->

    Hva må gjøres med dette for å få det lagt inn på et php-basert nettsted?

    Mvh
    Bjørn Jarle
     
  2. vidarlo Apache-junkie

    Innlegg:
    319
    Ingen verdens ting. PHP parser ikkje ting som er utanfor php-tagger (<?php ?>), og den teksten der inneholder ingenting som ser ut som php-tagger...
     
  3. Bjrl Medlem

    Innlegg:
    816
    Altså... Om jeg bruker den teksten rett inn i et html-dokument, fungerer det jo bra. Men i php får jeg feilmelding.

    Og jeg vet at andre nettbutikker med Zen Cart bruker Ratix, så på en eller annen måte må jo dette være mulig.

    Mvh
    Bjørn Jarle
     
  4. Magne Thyrhaug Medlem

    Innlegg:
    64
    Du får nesten vise litt hud^H^H^H^Hkode, så kanskje vi kan se hva som er feil.

    Som Vidar skrev, PHP har ingenting med Javascript å gjøre. Så lenge du ikke dytter den javascript-skiten inn i selve PHP-koden burde det bare være å kjøre på.

    Og hva er feilmeldingen?
     
  5. Bjrl Medlem

    Innlegg:
    816
    Feilmeldingen er at det er en feil i den linja der jeg begynner javascriptet.

    Alt jeg vil er å ha en Ratix-sak i nettbutikken. Og alt jeg ikke får til er å legge inn den koden Ratix krever at skal ligge der... :)

    Koden fra Ratix står i åpningsinnlegget. Hvordan får jeg dyttet den inn i en php-basert nettside?

    Jeg har prøvd å skrive <?php før koden fra Ratix og ?> etter, men feilmeldimgen er den samme - nettsidene blir klin hvite med en liten feilmelding på toppen av siden, og ikke noe annet innhold.

    Mvh
    Bjørn Jarle
     
  6. Bjørnar

    Bjørnar Gründer

    Innlegg:
    1.923
    men hva sier feilmeldingen ?

    at du får feilmelding der betyr vel at du har skrevet koden inn hvor det er ment å være php.
     
  7. Bjrl Medlem

    Innlegg:
    816
    Fo å spesifisere ytterligere:

    Jeg vil ha inn javascriptet etter <br /> i denne linja:

    define('FOOTER_TEXT_BODY', 'Kopirett &copy; ' . date('Y') . ' ' . STORE_OWNER . '<br />');

    Men får altså feilmelding hvis jeg skriver javascriptet rett inn etter '<br />' og også hvis jeg putter <?php foran og ?> bak selve javascriptet.

    Så jeg står litt fast på hva jeg skal gjøre for å få dette til.

    Mvh
    Bjørn Jarle
     
  8. Bjrl Medlem

    Innlegg:
    816
    Den sier:

    Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE or '$' in /home/nybutikk/public_html/includes/languages/norwegian.php on line 16


    Mvh
    Bjørn Jarle
     
  9. vidarlo Apache-junkie

    Innlegg:
    319
    PHP:
      define('FOOTER_TEXT_BODY', 'Kopirett &copy; ' . date('Y') . ' ' . STORE_OWNER . '<br />');
    ?>
    <!-- ratix kode her -->
    <?php
    That should do the trick
     
  10. Bjørnar

    Bjørnar Gründer

    Innlegg:
    1.923
    lim inn dette da, dirty, men ...

    Kode:
    echo "<!-- START Ratix.no ratingskode -->
    <script type=\"text/javascript\">
    <!--
    Nnv=navigator;Nna=Nnv.appName;Nd=document;Nd.cooki e=\"b=b\";Nc=0;if(Nd.cookie)Nc=1;
    Nn=(Nna.substring(0,2)==\"Mi\")?0:1;Ns=screen;Npx=(N n==0)?Ns.colorDepth:Ns.pixelDepth;
    str='<img src=\"http://c.ratix.no/7341;'+Ns.width+'x'+Ns.height+';'+Npx+';'+Nc+';';
    str=str+escape(Nd.referrer)+';'+Math.random()+'\" width=\"88\" height=\"31\" border=\"0\">';
    document.write('<a href=\"http://www.ratix.no/\" alt=\"Ratix.no Rating\" target=\"_blank\">'+str+'</a>');
    // -->
    </script>
    <noscript><a href=\"http://www.ratix.no/\" target=\"_blank\"><img src=\"http://c.ratix.no/7341;0x0;0;0;-;0\" alt=\"Ratix.no Rating\" width=\"88\" height=\"31\" border=\"0\"></a></noscript>
    <!-- END Ratix.no ratingskode -->";
    
    edit, for treig, og alt for kjip løsning. følg vidarlo sin løsning!
     
    Sist redigert: 2 Jan 2009
  11. Bjrl Medlem

    Innlegg:
    816
    Nei, dessverre (vidarlo sin løsning). Da får jeg denne feilmeldingen øverst på siden:

    Warning: Cannot modify header information - headers already sent by (output started at /home/nybutikk/public_html/includes/languages/norwegian.php:20) in /home/nybutikk/public_html/includes/languages/norwegian.php on line 224

    Warning: Cannot modify header information - headers already sent by (output started at /home/nybutikk/public_html/includes/languages/norwegian.php:20) in /home/nybutikk/public_html/includes/init_includes/init_templates.php on line 78

    I tillegg blir skriftstørrelsen bugga, og sideoppsettet ellers blir forvrengt - og ingen antydning til boksen med Ratix-merket på noe sted :(

    Mvh
    Bjørn Jarle
     
  12. Bjørnar

    Bjørnar Gründer

    Innlegg:
    1.923
    fjernet innlegg, kom med en dårlig ide .. ;)

    holder meg vekk jeg, når det er så seint på natta ;)
     
  13. Bjrl Medlem

    Innlegg:
    816
    Den første løsningen fra jebbis ga samme resultat som forslaget fra vidarlo.

    Den andre løsningen fra jebbisga helt hvit side med følgende feilmelding:

    Parse error: syntax error, unexpected T_STRING in /home/nybutikk/public_html/includes/languages/norwegian.php on line 21

    Mvh
    Bjørn Jarle
     
  14. Bjrl Medlem

    Innlegg:
    816
    Uff, jeg har prøvd ulike løsninger på dette med jevne mellomrom i flere måneder nå. Har lest drøssevis av innlegg på nettet på de merkeligste språk. Og kommer altså ingen vei.

    Det er jo rart at dette virker på så sinnssvakt mange andre nettsteder, men altså ikke hos meg :(

    Mvh
    Bjørn Jarle
     
  15. Magne Thyrhaug Medlem

    Innlegg:
    64
    I så fall skjer det noe magi relatert til HTTP-headeren etter at du prøver å skrive ut den fancy schmancy javascript-koden din. Og det forundrer meg ikke, for define(..)-metoden skriver ikke noe som helst til resultatet, den definerer bare en konstant.

    Finn ut hvor FOOTER_TEXT_BODY faktisk skrives til skjermen, og legg til javascript-koden der i stedet.
     

Del denne siden