Kordinaten eines Bildes

  • Hallo liebes Forum.

    Unsere Klasse hat eine Aufgabe bekommen.

    1. Erstelle eine Seite, indem ein Bild zu sehen ist.

    Das Bild darf als Img Tag eingebunden werden oder als Background-Bild in irgendein Element.

    2. Beim klick auf das Bild, soll die x und y Position des Mausklicks auf den Bild zum Server gesendet werden.

    Das PHP Script soll das Ergebnis nur als var_dump anzeigen.

    3. Der komplette Code darf nicht mehr als 800 Zeichen haben.

    4. Bibliotheken wie jQuery sind nicht erwünscht.

    Der Lehrer sagte: Der kürzeste Code gewinnt und die Aufgabe wird nicht benotet.

    Er möchte damit sehen wie wir das Lösen.

    Bis jetzt habe ich die 800 Zeichen überschritten.



    Wie viele Zeichen braucht ihr?

    Welchen Weg geht ihr da?

  • Zitat

    Der komplette Code darf nicht mehr als 800 Zeichen haben.

    ...

    Der kürzeste Code gewinnt und die Aufgabe wird nicht benotet.

    Das sind Vorgaben, die ins vergangene Jahrhundert gehören. Heute sollten Lesbarkeit, Übersichtlichkeit, Änderungsfreundlichkeit, Wartbarkeit etc. Priorität haben. Sprechende Variablen- und Funktionsnamen sind dabei unentbehrlich und machen zwangsläufig den Code etwas länger.

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von Sempervivum ()

  • Das sind Vorgaben, die ins vergangene Jahrhundert gehören. Heute sollten Lesbarkeit, Übersichtlichkeit, Änderungsfreundlichkeit, Wartbarkeit etc. Priorität haben. Sprechende Variablen- und Funktionsnamen sind dabei unentbehrlich und machen zwangsläufig den Code etwas länger.

    Das ist alles richtig

    So lernen wir es ja auch.

    Unser Lehrer hat gesagt das wir so weit sind, das wir diese aufgaben Lösen können.



    Einmal so wie sempevivum es geschrieben hat.

    Dann nochmal egal wie und so kurz wie möglich. Es soll nur laufen.

    Wir sollen auch mal um die Ecke schauen, nicht immer ist der erste Gedanke der beste.

  • Wie viele Zeichen braucht ihr?

    Welchen Weg geht ihr da?

    53. Allerdings entspricht das nicht ganz der Aufgabenstellung, um das Bild darzustellen habe ich ein input mit type=image verwendet, ein Klick darauf überträgt die Koordinaten des Klicks womit keinerlei Javascript notwendig ist. Valide usw. ist das natürlich überhaupt nicht, da mir die Aufgabe aber wohl in Richtung wie CSSBattle geht ist das in dem Fall schon ok.

  • Valide usw. ist das natürlich überhaupt nicht, da mir die Aufgabe aber wohl in Richtung wie CSSBattle geht ist das in dem Fall schon ok.

    Natürlich ist das valide, warum sollte es das nicht sein? Input mit type="image" ist valides HTML.

  • Zitat

    Wir sollen auch mal um die Ecke schauen, nicht immer ist der erste Gedanke der beste.

    Letzteres trifft sicher zu und es kann auch nie schaden, ein wenig über den Tellerrand zu schauen aber der Blick sollte dabei nicht unbedingt in die Vergangenheit gerichtet sein. Gibt so viel zu lernen, da ist solch ein Codegolfing wenig produktiv.

  • Natürlich ist das valide, warum sollte es das nicht sein? Input mit type="image" ist valides HTML.

    das input selbst ist grundsätzlich schon valide, meine gesamte Konstruktion aber nicht: es fehlt das HTML-Grundgerüst und z.B. das alt-Attribut des input. Wobei mir auffällt dass auch 49 Zeichen reichen: da waren noch 4 Anführungszeichen drin die man weglassen kann.

  • Wobei mir auffällt dass auch 49 Zeichen reichen:

    Wie schaffst du das ?

    1. Erstelle eine Seite, indem ein Bild zu sehen ist.
    2. Beim klick auf das Bild, soll die x und y Position des Mausklicks auf den Bild zum Server gesendet werden.
    Das PHP Script soll das Ergebnis nur als var_dump anzeigen.
    3. Der komplette Code darf nicht mehr als 800 Zeichen haben.

    Ich verstehe das so , das ein komplett laufener Code zu erstellen ist ,mit der php Ausgabe.

    ca so

    HTML
    1. <?php
    2. if(isset($_GET['k_x'])){
    3. print_r($_GET);
    4. }
    5. ?>
    6. <form>
    7. <input name="k" type="image" src="https://example.com/1.jpg">
    8. </form>

    Ca 153 Zeichen.

    Geht es noch kürzer ?


    Ohne Input , und mit <img> Tag ,wäre auch mal nee Aufgabe.Das werden dann einige Zeichen mehr

  • Geht es noch kürzer ?

    Klar: Zeilenumbrüche entfernen, </form> weglassen, name-Attribut weg, Anführungszeichen um Attributwerte weglassen, das Bild im gleichen Verzeichnis speichern und nur "b" nennen; zudem noch den PHP-Teil nach hinten (spart das »?>«), dort das if weglassen und die Kurzform des php-Tag verwenden (»<?=var_dump($_GET);«). var_dump() ist zum einen gefordert und zum anderen gibt print_r immer was zurück was - auf Kosten zusätzlicher Zeichen - unterdrückt werden müsste wenn man <?= verwenden will.