kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: von Bild nur Ausschnitt Mitte anzeigen ?

    geschrieben von morphsuite

    Hallo

    Ich habe eine Box (DIV) für Bild-Ausgabe mit fester Größe: 150 x 150 Pixel

    Wenn jetzt das Bild aber größer/ kleiner ist als diese Box,
    dann soll es verkleinert / vergrößert ausgegeben werden
    aber ich möchte vom Bild nicht die obere linke Ecke
    sondern die Bild-Mitte (vertikal und horizontal zentriert) angezeigt bekommen.

    Beispiel:
    <div class="imgbox" style="margin:2px; padding:0; width:150px; height:150px; overflow:hidden; text-align:center;">
      <img src="meinbild.jpg" style="max-width:150px; max-height:150px;" alt="Mein Bild" border="0" /> 
    </div>


    mit dem "max-width" und "max-height"
    wird zwar die größere der Seiten angepasst, so dass das Verhältnis richtig bleibt,
    (so dass das Bild entweder 150px breit oder hoch ist und keine Verzerrung hat)
    aber ...wenn Bild nicht Quadratisch ist, ist eine der Seiten immer zu klein ...
    ---> Die Box (class="imgbox") soll aber immer voll ausgefüllt sein.

    a) BSP ... horizontal: (links/rechts)
    wenn das Bild in Original-Größe die Abmessungen: 300 x 600 Pixel hat
    dann wird so zwar die Höhe auf 150 angepasst, aber die Breite ist dann zu klein
    und die Box ist dann inks/rechts nicht voll ausgefüllt

    b) BSP ... vertikal (oben/unten)
    wenn das Bild in Original-Größe die Abmessungen: 600 x 300 Pixel hat
    dann wird so zwar die Breite auf 150 angepasst, aber die Höhe ist dann zu klein.
    und die Box ist dann oben/unten nicht voll ausgefüllt

    ... die Box (class="imgbox") soll aber immer voll mit dem Bild ausgefüllt sein.
    wobei die Bild-Mitte immer auch in der Box-Mitte sein soll.


    bzw so .... wenn das Bild kein Quadrat ist,
    dann soll die größere Seite nicht nur auf einer Seite (rechts oder unten) abgeschnitten werden, sondern es soll von jeder Seite (links+rechts oder oben+unten) jeweils die hälfte "fehlen", so dass man vom Bild einen mittigen Ausschnitt hat, also die Bild-Mitte soll immer auch in der Box-Mitte sein.

    ich hoffe mein Problem wurde verstanden ...

    ... wie kann ich mit CSS ein Bild in DIV mit fester Größe bringen,
    so dass die Box immer voll ausgefüllt ist und das Bild keine Verzerrung hat
    wenn eine Bild-Seite (im Verhältnis) zu groß ist,
    dann soll davon ein mittiger Auschnitt angezeigt werden.
    und nicht nur auf eier Seite abgeschnitten werden.

    EDIT
    noch ein BSP

    in CSS steht min-width:160px + min-height:160px
    Bild Original --> 302px × 456px (Skaliert zu 160px × 242px)
    ... wie dann von 242px mittiger Ausschnitt 160px ?


  • in: Download Zähler

    geschrieben von morphsuite

    Hallo

    einfach anstatt Link direkt zur Download-Datei vorher eine PHP-Datei aufrufen
    die dann zählt (Zählerstand auslesen, um 1 erhöhen und neuen Zahl speichern)
    und dann automatisch weiter-leitet zum eigentlichen Download

    1. der Link auf der Webseite:
    <a href="download.php?file=test.zip">herunterladen</a>


    2. die Datei download.php
    <?php 
    // --------------------------------------------------------- 
    
    // ---- config: Web-Adresse zu Deinem Download-Server ----
    $dnl_srv = 'http://download.lima-city.de/Dein_Benutzername/'; 
    
    // ---- config: Pfad zum Speichern der Log-Datei ----
    $logpath = 'dlog'; 
    
    // --------------------------------------------------------- 
    
    if (!empty($_GET['file'])) { 
    
    $go_file = $_GET['file']; 
    // ---- to-do: hier noch Filter einbauen gegen hacking ---- 
    
    $go_hash = md5($go_file); 
    
    $log_file = $logpath.'/'.$go_hash.'.txt'; 
    
    // ---- den Counter-Stand auslesen und um 1 erhoehen ---- 
    if (!file_exists($log_file)) { 
    $count = 1; 
    }
    else { 
    $read = file_get_contents($log_file); 
    $count = ($read + 1); 
    }
    
    // ---- den neuen Counter-Stand speichern ----
    $save = file_put_contents($log_file, $count, LOCK_EX); 
    
    // ---- Weiter-Leitung zur Download-Datei ----
    header('location: '. $dnl_srv.$go_file);
    exit; 
    
    
    }
    else { 
    
    print '<p> Fehler .... es wurde kein Dateiname zum Download angegeben ... '; 
    print '<a href="javascript:history.back()">zur&uuml;ck</a> </p>'."\n"; 
    
    }
    
    // --------------------------------------------------------- 
    ?>


    so hast Du zu jedem Download in Deinem $logpath eine .txt Datei
    dessen Dateiname der md5-Hash der Download-Datei ist
    und den aktuellen Download-Stand enthält (zumindest Klick-Stand)

    also es wird jeder Klick auf den Download-Link ge-loggt,
    ob der Besucher die Download-Datei wirklich ganz heruntergeladen hat
    ist mit dieser Methode nicht erfassbar (nur die Klicks auf Download-Link)

    für interne Auswertung kannst Du Dir eine Liste (CSV) anlegen
    in der zu jeder Download-Datei der dazu gehörige md5-hash steht
    alternativ könnte man das anstatt mit md5 hash auch mit IDs machen
    ... völlig egal
  • in: Eingabefelddaten in URI übernehmen

    geschrieben von morphsuite

    dunkeltuten schrieb:
    ... ein vollständiges Beispiel: ...


    ganau FALSCH .... eben nicht POST sondern GET
    .... um die Formular-Eingabe in URL zu übergeben

    <form action="zielseite.php" method="get">
        ID: <input type="text" name="padID" size="20" maxlength="40"> <br>
        <input type="hidden" name="apikey" value="abc123"> 
        OK: <input type="submit" name="go" value="Weiter">
    </form>


    hier siehst Du auch, wie Du den API-Key als hidden-field übergeben kannst.
    man muss also nur die ID eingeben (z.B. "4") und auf den "Weiter" Button klicken,
    dann kommt als URL dabei raus:
    zielseite.php?apikey=abc123&padID=4&go=Weiter



Login zum Webhosting ohne Werbung!