"Besuchte" Koordinaten eines Bildes

Oder so, ohne "do nothing", ziehe ich persönlich wegen der besseren lesbarkeit vor:

PHP:
if (event.x > 0 && event.y > 0 && event.x < breite && event.y < pichoehe) {
  cx.push(event.x);
  cy.push(event.y);
}


In der 2. Version von mir waren übrigens noch ein paar kleine Schönheitsfehler drinnen.
Gefixte Version im Anhang.
 

Anhänge

  • zeichnen.txt
    1,2 KB · Aufrufe: 42
Zuletzt bearbeitet von einem Moderator:
danke, ihr seit super programmierer ;)
jetzt habe ich schon fast ein super script!
jedoch hat es noch einen fehler:
Zeichne ich eine lange "Route", gibt es mir einen Fehler aus -> Ungültiger Syntax, Linie 33.....

Code:
....
<script type="text/javascript">
var breite = <? print "$Bild_Breite"; ?>;
var pichoehe = <? print "$Bild_Hoehe"; ?>;
var pressed = 0;

Zeile 33 -> var cx = new Array(), cy = new Array();

function checkit() {
  if (pressed == 1) {
    if(event.x > 0 && event.y > 0 && event.x < breite && event.y < pichoehe) {
      cx.push(event.x);
      cy.push(event.y);
    }
  }
}
function showvalues() {
  for (i=0; i<cx.length; i++) {
  window.document.coords.Werte.value += cx[i] + " : " + cy[i] +",";
  }
  window.document.coords.submit();
}
</script>
....

Kann ein Array nicht unendlich Werte speichern oder ist der Fehler nur bei mir?
Testen bitte unter:
http://www.ol4you.ch/Test/Index.php

-> Testkarte [Karte zeigen] klicken
-> [Route einzeichnen] klicken
-> ausfüllen und [Eintragen] klicken
-> Route einzeichnen
-> [Route übernehmen] klicken
-> [Übersicht] klicken
dann kann wieder die Testkarte gewählt werden und man muss komischerweise zuerst dann die seite reloaden, bevor man die Route sieht :(

danke
 
das sollte ja eigentlich für das was ich will reichen :rolleyes:
aber warum es bei langen Strecken nicht funktioniert... keine Ahnung...
weiss niemand Rat??

merci
 
So, ich hab das ganze nochmal angepackt und gleich ein paar Grundlagen der GD Library mitgelernt.

Das Problem das du hast, liegt an einem kleinen Tippfehler von mir:
Code:
<form methode="post" [...]
Wenn nichts angegeben wird, nehmen die meisten Browser automatisch GET, und da die GET-Methode auf (je nach Browser) 2Kb limitiert ist (was ja bei einer Aufzeichnung der Mausbewegungen schnell erreicht wird), gibt es schnell einen Fehler.



Ich hab jetzt ein komplettes Script incl. PHP gemacht, das dürfte funktionieren.

Beispiel: http://dj-stylez.sprintweb.de/nuin/coords/

Download: http://dj-stylez.sprintweb.de/nuin/coords/coords.zip


Die Einstellungen, die angepasst/vorgenommen werden müssen:
  • Datei data.txt benötigt Chmod 777
  • In der Datei colors.txt sind die Farben, die auf die jeweiligen Benutzer benutzt werden gespeichert. Und zwar in folgendem Format:
    rotwert,grünwert,blauwert
    Zeilenumbruch
  • In den meisten Dateien muss die größe Des Bildes eingegeben werden, musst einfach mal durchsuchen.
    Vielleicht mach ich ja noch ne automatische anpassung, mal schaun, wenn ich Lust hab

Have fun und sag, wenn was nicht funktioniert


//Edit: Fast vergessen:
Das Script ist leider immernoch IE only, allerdings nur die Eingaberoutine, das anzeigen des Bildes geht auch in andren Browsern.
 
Danke, ist ja fast wie meins ;-)
Ich habe jedoch nur "Punkte" gesetzt. Jedoch werde ich jetzt wie Du "Linien" verwenden.

Das war eine geile Arbeit, Danke
 
ehm noch eine frage:
wie kann ich die java-version des users erkennen (Denn das script läuft nur auf neueren versionen...)
 
Java != JavaScript

Dann: Meinst du Verschiedene Versionen des Internet Explorers, oder, dass es nicht im Mozilla und im Opera geht?
Falls ja: Ich hab ja dazu geschrieben, dass es IE only is.
 
ich weiss, dass es nur ie only ist. aber auc nicht jeder ie kann die daten verarbeiten.
-> (Auszug aus SelfHTML)
##
push()
Hängt ein oder mehrere Elemente an das Ende eines Arrays an. Erwartet als Parameter ein oder mehrere anzuhängende Elemente. Gibt in der JavaScript-Version 1.2 das letzte (neueste) Element zurück, in neueren JavaScript-Versionen dagegen die Länge des Arrays.
##

ich habe im geschäft einen PC mit NT und dem ie 5.0 und heir geht das script nicht.
jedoch auf anderen workstation mit ie 5.0 höher funktioniert es...

jetzt farge ich mich, ob ich etwas machen kann, damit der link "Route einzeichnen" angezeigt wird, wenn der ie höher als 5.0 ist...

-> if ($IE > 5.0) {
print "<a href=balbla.php>Route einzeichnen</a>";
}
else {
print "Du kannst die Route nicht einzeichnen, da du nicht IE 5.0 + hast!";
}
 

Neue Beiträge

Zurück