Ankündigung

Einklappen
Keine Ankündigung bisher.

und nochmal gallerie...

Einklappen

Neue Werbung 2019

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

  • und nochmal gallerie...

    wie schaff ich das jetzt am besten mit php, das keiner ein bild klauen kann?

    ich hatte da mal eine gallerie gesehen, wo man den link zum bild mit einem rechtsklick bekommen hat, wenn man dies aber direkt aufgerufen hatte, existierte es nicht und man konnte es auch nicht herunterladen.

    wie geht sowas?

  • #2
    Wasserzeichen:
    http://www.php4u.net/index.php?main=...psel&source=63

    Kommentar


    • #3
      Re: und nochmal gallerie...

      Zitat von Sclot
      wie schaff ich das jetzt am besten mit php, das keiner ein bild klauen kann?

      ich hatte da mal eine gallerie gesehen, wo man den link zum bild mit einem rechtsklick bekommen hat, wenn man dies aber direkt aufgerufen hatte, existierte es nicht und man konnte es auch nicht herunterladen.

      wie geht sowas?
      AFAIR kannst du über eine .htaccess das Bild freigeben falls der Referrer deine eigene Seite ist. Ist der Referrer eine fremde Seite, wurde das Bild fremdverlinkt. Ist der Referrer leer ist das Bild entweder direkt aufgerufen worden oder der Referrer wurde nicht übergeben weil der Client es nicht wollte....

      Oder - wenn das Bild durch eine PHP-Datei erstellt wird oder von einer PHP-Datei durch header() weitergeleitet wird könntest du auch im "Hauptdokument" eine Session starten dort eine Variable auf true setzen und das Bild nur ausliefern wenn diese auf true steht. (oder so ähnlich)

      hth
      werbegeschenk
      [URL="https://www.quizshow.io/"]Create your own quiz show.[/URL]

      Kommentar


      • #4
        was muss dann in die .htaccess rein?

        Kommentar


        • #5
          Re: und nochmal gallerie...

          Zitat von Sclot
          wie schaff ich das jetzt am besten mit php, das keiner ein bild klauen kann?
          Gar nicht. Damit das Bild angezeigt werden kann, muß es komplett zum Browser geschickt werden.

          Kommentar


          • #6
            das is auch weider wahr...

            Kommentar


            • #7
              kacke.. ich blick nicht durch...

              jetzt hab ich des script von Du-weisst-schon-wer eingebaut...
              funktioniert soweit auch...
              aber immer erst nach dem aktualisieren, sonst kommt da das alte bild.
              also seite wird aufgerufen, alte bild kommt, dann muss man aktualisieren und dann kommt das neue bild ;/

              ich will das doch so habend as das neue bild gleich kommt


              hier der code:

              Code:
              <html>
              <head>
              <link rel="stylesheet" type="text/css" href="../format.css" >
              </head>
              <body>
              <center><font size="3"><u>Bilder</u></font>
              
              <?
              function watermark($image, $watermark, $save_as, $position=5, $transparency=50, $t_x=0, $t_y=0) {
              
              if(!file_exists($image) || !file_exists($watermark))
              return FALSE;
              $infos_img = getimagesize($image);
              $infos_wat = getimagesize($watermark);
              if(!in_array($infos_img[2], array(2,3)) || !in_array($infos_wat[2], array(2,3)))
              return FALSE;
              if($infos_img[0]<$infos_wat[0] || $infos_img[1]<$infos_wat[1])
              return FALSE;
              if($infos_wat[0]<$t_x || $infos_wat[1]<$t_y)
              return FALSE;
              $transparency = 100 - $transparency;
              if($transpareny < 0 || $transpareny > 100)
              return FALSE;
              @unlink($save_as);
              
              // Position x 
              switch (($position-1)%3) {
              case 0: 
              $pos_x = 0;
              break;
              case 1:
              $pos_x = round(($infos_img[0]-$infos_wat[0])/2, 0);
              break;
              case 2:
              $pos_x = $infos_img[0]-$infos_wat[0];
              break;
              }
              // Position y
              switch (floor(($position-1)/3)) {
              case 0: 
              $pos_y = 0;
              break;
              case 1:
              $pos_y = round(($infos_img[1]-$infos_wat[1])/2, 0);
              break;
              case 2:
              $pos_y = $infos_img[1]-$infos_wat[1];
              break;
              }
              
              $img_image = imagecreatefromjpeg($image);
              $img_watermark = imagecreatefrompng($watermark);
              imagealphablending($img_image, TRUE);
              imagealphablending($img_watermark, TRUE);
              imagecolortransparent($img_watermark, imagecolorat($img_watermark, $t_x, $t_y));
              imagecopymerge($img_image, $img_watermark, $pos_x, $pos_y, 0, 0, $infos_wat[0], $infos_wat[1], $transparency);
              if(strtolower(substr($save_as, -3)) == "png") {
              if(imagepng($img_image, $save_as))
              return TRUE;
              else
              return FALSE;
              } else {
              if(imagejpeg($img_image, $save_as))
              return TRUE;
              else
              return FALSE;
              }
              return FALSE;
              }
              
              
              echo "<table width=\"90%\" border=0><tr><td>";
              echo "<a href=\"index.php\">Index</a> | <a href=\"album.php?album=$album\">$album</a> |$bild
              ";
              echo "</td></tr></table>
              
              ";
              echo "<table width=\"90%\" border=0><tr><td>";
              if(watermark("$album/$bild", "logo.png", "tmp.jpg", 9))
              echo "<center><img style=\"border: 1px solid #ffffff\" src=\"tmp.jpg\" witdh=\"700\" height=\"500\"></center>
              
              
              ";
              
              ?>
              </td></tr></table>
              
              </body>
              </html>

              Kommentar

              Lädt...
              X