seite ohne include() anzeigen geht nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • seite ohne include() anzeigen geht nicht

    Hallo

    Ich versuche gerade eine Art Adserver selber zu schreiben.

    es gibt impress.php (auf dem Server 1)
    und index.php (auf dem Server 2)

    In der index.php soll die Seite impress.php eingebunden werden.

    Die Seite impress.php hat einige Abfragen, die bestimmen welcher Banner angezeigt werden soll.

    Ich habe das Problem, dass in der index.php kein Banner angezeigt wird.



    index.php eingebunden mit:
    HTML-Code:
    <img src="http://www.Server2.de/adserver/impress.php?banner=123">


    impress.php sieht so aus:
    PHP-Code:

    <?

    $IP = $_SERVER['REMOTE_ADDR'];
    $Datum = date("Y-m-d H:i:s");
    $Timestamp = time();


    $abfrage = "SELECT * FROM banner WHERE BannerID NOT IN (SELECT BannerID FROM impressionen WHERE IP='$IP' AND Reload>'$Timestamp') AND NochMenge>'0' AND Frei='1' AND BannerArt='Kunde' ORDER BY RAND() LIMIT 1";
    $ergebnis = mysql_query($abfrage);
    while($row = mysql_fetch_object($ergebnis))
       {
    $BannerID = "$row->BannerID";
    $Groesse = "$row->Groesse";
    $BannerUrl = "$row->BannerUrl";
    $Klicks = "$row->Klicks";
    $Views = "$row->Views";
    $Reloadsperre = "$row->Reloadsperre";
    $BannerArt = "$row->BannerArt";
    $BezahlteMenge = "$row->BezahlteMenge";
       }
       
    if ($BannerID == '')
    {

    $abfrage = "SELECT * FROM banner WHERE BannerID NOT IN (SELECT BannerID FROM impressionen WHERE IP='$IP' AND Reload>'$Timestamp') AND Frei='1' AND BannerArt='Ersatz' ORDER BY RAND() LIMIT 1";
    $ergebnis = mysql_query($abfrage);
    while($row = mysql_fetch_object($ergebnis))
       {
    $BannerID = "$row->BannerID";
    $Groesse = "$row->Groesse";
    $BannerUrl = "$row->BannerUrl";
    $Klicks = "$row->Klicks";
    $Views = "$row->Views";
    $Reloadsperre = "$row->Reloadsperre";
    $BannerArt = "$row->BannerArt";
    $BezahlteMenge = "$row->BezahlteMenge";
       }
       
    $Reload = $Timestamp + $Reloadsperre;

    $eintrag = "INSERT INTO impressionen 
    (BannerID, Datum, IP, Reload)
    VALUES
    ('$BannerID', '$Datum', '$IP', '$Reload')";
    $eintragen = mysql_query($eintrag);

    $sql="UPDATE banner SET Views=Views+1 WHERE BannerID='$BannerID' LIMIT 1";
    mysql_query($sql);


    echo $BannerUrl;


    }
    else   
    {   
       
    $Reload = $Timestamp + $Reloadsperre;

    $eintrag = "INSERT INTO impressionen 
    (BannerID, Datum, IP, Reload)
    VALUES
    ('$BannerID', '$Datum', '$IP', '$Reload')";
    $eintragen = mysql_query($eintrag);

    $sql="UPDATE banner SET Views=Views+1 WHERE BannerID='$BannerID' LIMIT 1";
    mysql_query($sql);

    $sql="UPDATE banner SET NochMenge=NochMenge-1 WHERE BannerID='$BannerID' LIMIT 1";
    mysql_query($sql);


    echo $BannerUrl;


    }

    ?>
    Was mache ich falsch?

    Danke schon mal im vorraus

    Kreze

    PS: wenn ich die impress.php selber aufrufe wird der Banner angezeigt
    Zuletzt geändert von Kreze; 04.08.2009, 14:41.

  • #2
    Zitat von Kreze Beitrag anzeigen
    index.php eingebunden mit:
    HTML-Code:
    <img src="http://www.Server2.de/adserver/impress.php?banner=123">
    Wenn der Browser auf so etwas trifft, ohne das PHP im Spiel ist, was erwartet er dann vom Server?

    Genau, binäre Bilddaten.



    impress.php sieht so aus:
    PHP-Code:
    //...

    echo $BannerUrl
    Sind das binäre Bilddaten?

    PS: wenn ich die impress.php selber aufrufe wird der Banner angezeigt
    Was wird dir dann angezeigt - ein Bild, oder lediglich eine Bildadresse?
    Wenn nicht letzteres, dann wäre die Variable $BannerUrl ja höchst irreführend benannt.

    Was mache ich falsch?
    Vermutlich nur das, was fast alle Newbees falsch machen, wenn sie Bilddaten dynamisch ausgeben wollen. Nicht in der Lage, zwischen der Adresse einer Ressource und ihrem Inhalt zu unterscheiden, bzw. nicht im Klaren darüber, was wo hingehört (da werden dann oft die Binärdaten innerhalb eines HTML-Dokumentes direkt ausgegeben).
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Was wird dir dann angezeigt - ein Bild, oder lediglich eine Bildadresse?
      Wenn nicht letzteres, dann wäre die Variable $BannerUrl ja höchst irreführend benannt.
      Der normale Banner der auch angezeigt werden soll.

      in der $BannerUrl ist folgendes drin z.B.:
      HTML-Code:
      <img src="adserver/bild.gif">
      Zuletzt geändert von Kreze; 04.08.2009, 15:36.

      Kommentar


      • #4
        Zitat von Kreze Beitrag anzeigen
        Der normale Banner der auch angezeigt werden soll.

        in der $BannerUrl ist folgendes drin z.B.:
        HTML-Code:
        <img src="adserver/bild.gif">
        Dann weißt du sicher auch, das das hier völliger Tinnef ist.
        PHP-Code:
        <img src="http://www.Server2.de/adserver/impress.php?banner=123"
        Reicht da nicht ein simples
        PHP-Code:
        include('impress.php'); 
        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Reicht da nicht ein simples
          PHP-Code:
          include('impress.php'); 
          Peter
          Nein reicht leider nicht, da impress.php auf einem anderen Server liegt und das include() nur auf dem gleichen funktioniert.
          Weiterhin benutzt die impress.php ganz andere Datenbank somit ist der Zugriff auch nicht möglich.

          Keiner ne Idea?
          Ganzen Banneranbieter nutzen das ja auch so, nur haben die was besonderes in der impress.php stehen, nur was?

          Kommentar


          • #6
            Entweder lieferst du wirklich Bilddaten aus - oder du leitest mit entsprechendem Header auf einen anderen URL weiter, wo dein Bild sich dann wirklich befindet.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Zitat von wahsaga Beitrag anzeigen
              Entweder lieferst du wirklich Bilddaten aus - oder du leitest mit entsprechendem Header auf einen anderen URL weiter, wo dein Bild sich dann wirklich befindet.
              und wie mache ich das mit Link?

              Kommentar

              Lädt...
              X