28. februar 2009 - 20:08Der er
23 kommentarer og 1 løsning
load PHP fil i en ekstern HTML fil
Kære eksperter,
Jeg sidder med en .php fil, der indeholder javascript og PHP. Denne fil vil jeg gerne køre i en .html fil, men det er ikke lykkedes mig at få det til at virke igennem et <img> eller <script>.
Selve PHP filen er en statistik fil, som henter IP, Browser m.v. Derfor er de to sprog blandet.
Har i nogle forslag til hvordan dette kan gøres uden at benytte et iframe?
Så forklar mig lige hvordan chart.dk og nope.dk formår at køre .asp i et <script> og ligeledes i et <img>.
Jeg ved at det kan lade sig gøre at køre php i et <img>, jeg er bare usikker på om det skal være ren php eller om der gerne må være HTML og javascript i filen.
Ellers skal det køres via AJA(X) men det er der ingen ide i, sådan som jeg ser det.
Jeg ved faktisk ikke (men de gør de andre) og man kan inkludrer en php-fil via SSI ( <!--#include file="filnavn.php"--> ) men så skal du omdøbe filen til noget.shtml
PS husk at img sådan: <img src=test.php></img> ikke er vaild du skal skrive dette: HTML 4.01: <img src="fil.jpg"> XHTML: <img src="fil.jpg"> (men det vil stadig ikke hjælp dig)
-kenner- >> Når folk henter en asp-fil i et img-element, udskriver asp-dokumentet et billede on-the-fly - f.eks. med statistik resultater. Samtidig kan man sende statistikinformationer om den pågældende side - og browserne, der læser den - med til asp-dokumentet, som sætter dem ind i en DB.
I php-filen, der bliver hentet, vil $_SERVER['HTTP_REFERER'] indeholde URL'en til det dokument, der indeholder object elementet.
Grunden til at jeg ønsker en HTML venlig løsning er, at jeg er ved at lave et statistiksystem til alle mine sites. Så jeg ønsker at generere et stykke simpelt kode, der kan loade statistik filen der ligger på et andet domæne, uden at $_SERVER['HTTP_ADDR'] ændre sig, da reference sitet så vil gå tabt.
-kenner- >> Der er to muligheder fo, hvad det er, du prøver - og derfor to løsninger:
1) Du vil udskrive et billede med dynamisk indhold, efter du har fyldt data i databasen. 2) Du vil vise et standardbillede, efter du har fyldt data i databasen.
Løsning 1:
<?php // Fyld data i DB
// Lav dynamisk billedstreng
header("Content-Type: image/png");
// Undskriv billedstrengen ?>
Løsning 2:
<?php // Fyld data i DB
header("Location: sti/til/billede.png"); ?>
Så modtager dit php-dokument data, som indsættes i DB - og billedet vises i html-dokumentet
--------------- stats.js --------------- var loc = encodeURI(location.href), h = document.documentElement.clientHeight, w = document.documentElement.clientWidth, o = new Image(); o.src = "http://domain.dk/sti/til/stats.php?loc="+loc+"&h="+h+"&w="+w; --------------- /stats.js --------------
--------------- stats.php --------------- <?php // Gør noget med variablerne // $_GET["loc"], $_GET["h"] og $_GET["w"] ?> --------------- /stats.php --------------
document.URL er forlængst deprecated, så der er kun location.href - og nej, der er ikke andre i JS
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.