Archiv verlassen und diese Seite im Standarddesign anzeigen : VB3 MapHack
Hallo,
so, ich hab nun alles Installiert. Läuft auch ganz okay, es gibt bei mir noch en Problem.
User die sich neu Registrieren und ihre Postleitzahl eingeben und ihr Land auswählen werden angezeigt, leute die schon Registriert sind und nachträglich die Daten angeben, haben das zwar im Profil stehen tauschen aber nicht auf der Karte auf!
Wieso? :)
Cheers, Don
Ich möchte ja nicht nerven, wäre aber doch schon wichtig :)
Sieht so aus als ob Dein neuer Server ein Problem mit GD hat bzw. die Funktion imagecreate nicht unterstützt.
Weist Du welche GD Version installiert ist bzw. ob überhaupt GD installiert ist ?
wo sehe ich das?
der server is neu und es kann sein das ich einiges selbst installieren muss :)
Onkel_Tom
15.06.2004, 00:12
Erstelle einfach ein neue .php Datei mit folgendem Inhalt:
<?php
phpinfo();
?>
Lade sie auf den Server hoch und führe die Datei im Internetbrowser aus.
Du findest dann alle PHP Informationen und auch die GD Informationen falls es installiert ist.
Ich möchte ja nicht nerven, wäre aber doch schon wichtig :)
Keine Ahnung. Sollte eigentlich klappen. Sorry... :(
@Bierhasser: Sicher das die allen von der Karte kommen? Ist ja schon recht viel.
Erstelle einfach ein neue .php Datei mit folgendem Inhalt:
<?php
phpinfo();
?>
Lade sie auf den Server hoch und führe die Datei im Internetbrowser aus.
Du findest dann alle PHP Informationen und auch die GD Informationen falls es installiert ist.
:) super das hab ich jetz gemacht link: http://board.galbadia-garden.de/phpinfo.php
aber bei dem meisten versteh ich nur bahnhof
könnt ihr mal gucken?
Onkel_Tom
15.06.2004, 14:16
Da ist kein GD installiert und deshalb wirst Du auch die Mitgliederkarte nicht zum Laufen bringen.
Wenn es Dein eigener Server ist, wie ich das verstanden haben, dann solltest Du erstmal auf PHP 4.3.6 updaten und dann die GD2 Module einbinden.
Wie das geht ?
Naja, wenn Du das nicht weist ist wohl ein eigener Root Server der falsche für Dich. Ein Managed oder Ready to run Server wäre dann wohl das richtige.
Bei welchem Provider hast Du den Deinen Server ?
Sieht mir alles ein wenig veraltet aus, Apache ist auch noch in der Version 1.3.26 drauf obwohl dieser Release für seine Sicherheitslücken bekannt ist.
@Bierhasser:
Danke für die member.png und deine Mühe ;)
Gefällt mir gut, habe ich auch schon eingebaut :D
VLG Shelaby
Da ist kein GD installiert und deshalb wirst Du auch die Mitgliederkarte nicht zum Laufen bringen.
Wenn es Dein eigener Server ist, wie ich das verstanden haben, dann solltest Du erstmal auf PHP 4.3.6 updaten und dann die GD2 Module einbinden.
Wie das geht ?
Naja, wenn Du das nicht weist ist wohl ein eigener Root Server der falsche für Dich. Ein Managed oder Ready to run Server wäre dann wohl das richtige.
Bei welchem Provider hast Du den Deinen Server ?
Sieht mir alles ein wenig veraltet aus, Apache ist auch noch in der Version 1.3.26 drauf obwohl dieser Release für seine Sicherheitslücken bekannt ist.
es ist kein root server sondern ein virtueller ;)
Gruß
Falco
Onkel_Tom
16.06.2004, 13:35
Dann frag mal Deinen Hoster warum solche grundlegenden Module nicht installiert sind :D
hat jemand lust mir den hack einzubauen? :eek:
was soll ich dazu sagen...
der meinte die machen das update nur mit nem techniker der pro 15 mins 20€ kostet...dann fragte ich was ich machen muss wenn ich das selbst machen will, dann meinte der das kann er nich erklären aber irgendwas von kompilieren oder so...
xxxxxxxxxxxxx
tja, nun weis ich echt nich weiter...
Onkel_Tom
17.06.2004, 11:16
Sorry, aber vBulletin-germany.com ist jetzt wirklich das falsche Forum für Dein Problem. Ich an Deiner Stelle würde den Provider wechseln, da dieser ja definitiv schlecht konfigurierte "Server" zur Verfügung stellt. Aber mal davon abgesehen, was soll er den bieten können für die paar Öre im Monat...
Ich bezahle für meinen Server fast 400,-€ im Monat und da darf ich schon verlangen das der Server auf einem aktuellen Stand ist und funktioniert.
Schau doch mal nach einem Linux Forum, vielleicht können die Junx dort Dir helfen. Hier ist definitv das falsche Forum für LAMP (Linux Apache MySQL PHP) Probleme.
es gibt aber noch leute die sich 400€ im monat nicht leisten können ;) und naja, du hattest gefragt ;)
könnt ihr mir nen linux forum empfehlen wo man mir das schritt für schritt erklärt?
Onkel_Tom
17.06.2004, 14:01
Das war auch nicht so gemeint !
Ich wollte damit nur sagen das es unter Umständen besser ist einen etwas teureren Hoster zu nehmen damit auch die Maschine entsprechend auf dem aktuellsten Stand ist anstelle nur auf den Preis zu schauen.
naja, ich bin schüler und kann mir halt nur soetwas leisten, glaub mir ich hätte sicher gerne noch etwas besseres aber da stimmts halt in da brieftasche nicht :)
@Dodonna
Hattest du dich im Gespräch im Chat nur über das Update unterhalten?
oder hast du dich auch nach der GD2.dll gefragt?
(in der PHP.ini)
Erkundige dich mal danach
;extension=php_gd.dll (alte Version)
;extension=php_gd2.dll
das Semikolion sagt aus, das sie abgeschaltet sind!
Mastermaik
21.06.2004, 21:45
Hallo Leute,
ich habe diesen Thread leider nur zum Teil verfolgt, daher meine Frage, inwieweit dieser Hack denn ohne Probs läuft !?
Ich weiß ja, Hoffi ist ein Meister, aber wie aktuell ist der downloadbare File und inwieweit ist der Einbau einfach oder zu schaffen !?
Danke mal für die Info !?
PS: Welche Voraussetzungen brauche ich für den Hack !?
PPS: Auch ist dieser Hack voll lauffähig auf einem MAC ?! Ich habe den Link von Hoffi angeschaut, aber mit Safari passiert nichts, wenn ich mit der Maus über die Punkte fahre ! ?
LG
Maik
EDIT: Alles in Englisch !? Gibt es dazu eine deutsche Anleitung ?
EDIT2: Und welche Root-Zugriffe brauche ich zwingend ?
Du meinst ob die Karte auf einem Mac-Browser läuft? Keine Ahnung. Es gibt zwischendrin ein Updatefile wenn ich mich nicht irre. 18 Seiten sind schon ne Menge... Mann, Mann da kommt schön was zusammen. Markus hatte glaub ich was zusammengefasst, er müsste das am besten wissen.
Mastermaik
22.06.2004, 10:43
Darum ja meine Frage, 18 Seiten zu durchforsten usw ist schon was aufwendig. Vielleicht könnte man solche Threads weiter laufen lassen und die neuesten Files / Updates in einem geschlossenen Thread mit Anleitung bringen, somit kann der User die Files separat vom Thread herunterladen und behält die Übersicht, was die Files angeht !?
Danke & LG
Maik
Der müsste es sein: http://www.vbulletin-germany.com/forum/showpost.php?p=64264&postcount=85
ThreeTears
26.06.2004, 09:03
Hallo erst einmal an alle ..
Nachdem ich mich nun durch diesen Thread durchgearbeitet und auch die Zusammenfassung genauestens studiert habe, habe ich versucht, diesen Hack auf einem Testboard einzubauen. Neben den allgemeinen Fehlermeldungen, die meist durch eine weitere Anpassung des absoluten Pfades zu korrigieren waren, hänge ich nunmehr an einer Fehlermeldung fest, bei der ich auf Teufel-komm-raus nicht weiter weiß:
Fatal error: Call to undefined function: setrange() in /absoluter/Pfad/zur/Datei/membermap.php on line 97
Die membermap.php weist an der angegebenen Stelle folgende Zeile(n) auf:
95
96 $map2 = Geo::setupMap('map/members.png');
97 $map2->setRange(5.8, 17.2, 45.8, 55.1);
98 //$map2->setRange(5.5, 15.5, 47.2, 55.1);
99 $a = 1;
Da ich ja bereits vorstehend geschrieben habe, dass die absoluten Pfade angepasst wurden, ist natürlich auch klar, dass ich einen Web-Account nutze, der einen Zugriff auf das "includedir" nicht ermöglicht; insofern habe ich die Änderungen von Hoffi mit aufgegriffen. Alle anderen Voraussetzungen (GD usw.) sind gegeben.
Frage: Kann mir jemand weiterhelfen?
Ein herzliches Dankeschön vorab *und_die_grauen_haare_zur_seite_kämme*
Onkel_Tom
28.06.2004, 13:25
Hi,
Die Funktion "setrange" ist in der Datei Map.php definiert die sich in Deinem /forum/includes Verzeichnis befinden soll.
Wieso kannst Du auch dieses Verzeichnis nicht zugreifen ????
Du musst es doch sowieso mit der vB Installation erst anlegen und das hat doch nichts mit "Web Account" zu tun.
Die Datei sollte natürlich für das System ausführbar sein.
ThreeTears
30.06.2004, 12:49
Es ist so wie ich geschrieben habe, Onkel_Tom: Ich kann mich auf den Kopf stellen, es erscheint immer wieder dieselbe Fehlermeldung. Die Dateien sind alle in den richtigen Ordnern, die Rechte sind entsprechend gesetzt. Ich habe jetzt sogar eine ganz frische Installation zum Testen durchgeführt - die Fehlermeldung bleibt.
Nun ja ... ich hab jetzt genug Stunden damit zugebracht und bin am Ende mit meinem Latein; irgendwo sitzt mit Sicherheit ein kleiner Wurm drin. Vielleicht erbarmt sich ja noch mal jemand und stellt die wirklich lauffähigen Dateien nochmal zusammen (wo dann nur noch die absoluten Pfade geändert werden müssen) ... *seufz*.
Hi,
Vielleicht erbarmt sich ja noch mal jemand und stellt die wirklich lauffähigen Dateien nochmal zusammen (wo dann nur noch die absoluten Pfade geändert werden müssen) ... *seufz*.
Jepp, das währe was :)
Habe mich auch schon durch alle Threads gelesen, aber irgendwie trau ich mich doch noch nicht so daran :)
KarateKid
02.07.2004, 10:52
wenn mir jemand eine PN schickt mit fertiggestellter Beschreibung, dann passe ich gerne mein erstes Post in diesem Thread an. Für mehr reicht meine Zeit momentan nicht, da ich mitten im Klausurstreß bin.
Gruß
Sebastian
Ähm sagt mal, ich nur Bahnhof verstehen... läuft das auch wenn man keinen eignen ganzen Webserver hat? Sprich nur Webspace.
MFG Pagan
Ähm sagt mal, ich nur Bahnhof verstehen... läuft das auch wenn man keinen eignen ganzen Webserver hat? Sprich nur Webspace.
Gute Frage.
Hi,
wenn ich mich recht erinnere hatte glaube ich Hoffi das so umgestrickt, das es auch nur auf Webspace läuft.
Stand in irgendnem Beitrag mal.
VB-Fanatiker
17.07.2004, 21:09
Hat sich eigentlich inzwischen mal jemand Gedanken gemacht, wie man die Vielzahl von Datenbankabfragen minimieren könnte. Die Ladezeiten sind bei ein paarhundert Einträgen ja katastrophal laaangsam... :(
was kann das für ein fehler sein?
http://www.freaky-forum.de/membermap.php
"open_basedir" verhindert, dass das Web/der User auf das Verzeichnis zugreifen kann, das er braucht:
Warning: main(): open_basedir restriction in effect. File(/usr/share/php/PEAR.php) is not within the allowed path(s): (/srv/www/htdocs/web1/) in /srv/www/htdocs/web1/html/Geo/Geo.php on line 31
So, wie es da halt steht ;) Entweder die Dateien woanders hinkopieren, oder open_basedir ändern/löschen (apache-Einstellung).
ok, ich habe einen root server! wie kann man das denn abstellen / umändern?
Entweder du gibst einen anderen Pfad in der Datei Geo.php (line 31) an. Dort wo du PEAR.PHP hast (muss dann aber innerhalb /srv/www/htdocs/web1 sein). Oder du nimmst in der Einstellung vom Apache (vhost.conf, httpd.conf, vhost/*hostname*.conf), je nachdem was für einen Apache Du hast, mit dem open_basedir raus (einfach ein #) davor. Apache neustarten, fertig. Oder benutzt Du confixx oder sowas?
Dann schau mal ob du unter http://www.rootforum.de ne Lösung findest. Kann gut sein, dass wenn du das händisch rausmachst, das confixx wieder reinmacht. Probiers mal aus.
]|fre$h-LoRd|[
24.07.2004, 13:02
Der Hack sieht doch sehr nett aus, ich werde mich mal dran versuchen...........thx erstmal zum Bereitstellen.
Hi,
habe nunmal den Hack eingebaut, nach der Anleitung von Markus und Hoffi.
Bekomme aber immer eine Fehlermeldung.
Hat sich erledigt,
in der Membermap.php mußte nur in Zeie 53 was geändet werden :9
Hi,
nachdem ja jetzt der Hack läuft, wollte ich mal im Namen meiner USer fragen, ob man das nicht auch auf die angrenzenden Länder ausweiten kann?
Also Europaweit?
Das ist eine gute Frage. NL, Belgien, Polen, Dänemark, usw.
Kann man die Map eingentlich ändern (also Farbgebung u.ä.) wenn man die grösse so lässt wie sie ist? muss man da auf irgendwas achten?
Danke schonmal & angenehme Nacht noch ;)
Kann man die Map eingentlich ändern (also Farbgebung u.ä.) wenn man die grösse so lässt wie sie ist? muss man da auf irgendwas achten?
Danke schonmal & angenehme Nacht noch ;)
also wie das mit der Größe ist weiss ich nicht, die grafik ist aber eine PNG datei und somit auch mit Pain / paint-shop / Photo-shop Veränderbar.
Ich denke wenn du die Grafik in Größe veränderst musst du in der entsprechenden datei die Positionen ändern da es sonst leicht versvchoben sein wird, jeh nach vergrößerungs grad.
gruß
Hi,
habe da noch eine Idee, weiß aber nicht ob soetwas zu realisieren ist ;)
Da sich im Laufe der Zeit ja doch einige User ansammeln, und dadurch auch einige Punkte nebeneinanderliegen, kann man nicht so eine Art Autozoom integrieren?
Sprich wenn ich z.B. über NRW fahre mit der Maus, das sich dann alles vergrößert, oder bei einem Klick auf das Bundesland ;)
Java / javascript oder Flash
Anders wird dies sonst nicht Realissierbar sein.
Ich habe sowas mal versucht mittels flash, bin kläglich gescheitert weil flash die arrys nicht auslesen kann.
Hallo zusammen!
Habe gerade den MapHack erfolgreich installiert und möchte ein grosses DANKESCHÖN an alle Entwickler loswerden - ihr habt wirklich ganze Arbeit geleistet!
Gruss und Dank,
BinLine
Hi,
habt ihr auch die Probleme, das Orte nicht richtig zugeordnet werden???
Bisher habe ich das Problem bei 2 Usern.
Einmal in Östereich.
Soll Klagenfurt PLZ 9020
ist Ebental wwelches aber 9025 hat, aber als 9020 angezeigt wird.
Und Deutschland
Soll Neuburg nähe wismar
ist Blowatz
Hallo MrD,
ich habe sieselben Probleme - nicht nur bei Klagenfurt, sondern auch bei einigen anderen österr. Städten. Ich denke, dass da einfach die Datenbank-Einträge für die Zuordnung von PLZ zu Ort inkorrekt sind.
Gruss,
BinLine
Hallo erst einmal an alle ..
Nachdem ich mich nun durch diesen Thread durchgearbeitet und auch die Zusammenfassung genauestens studiert habe, habe ich versucht, diesen Hack auf einem Testboard einzubauen. Neben den allgemeinen Fehlermeldungen, die meist durch eine weitere Anpassung des absoluten Pfades zu korrigieren waren, hänge ich nunmehr an einer Fehlermeldung fest, bei der ich auf Teufel-komm-raus nicht weiter weiß:
Fatal error: Call to undefined function: setrange() in /absoluter/Pfad/zur/Datei/membermap.php on line 97
Die membermap.php weist an der angegebenen Stelle folgende Zeile(n) auf:
95
96 $map2 = Geo::setupMap('map/members.png');
97 $map2->setRange(5.8, 17.2, 45.8, 55.1);
98 //$map2->setRange(5.5, 15.5, 47.2, 55.1);
99 $a = 1;
Da ich ja bereits vorstehend geschrieben habe, dass die absoluten Pfade angepasst wurden, ist natürlich auch klar, dass ich einen Web-Account nutze, der einen Zugriff auf das "includedir" nicht ermöglicht; insofern habe ich die Änderungen von Hoffi mit aufgegriffen. Alle anderen Voraussetzungen (GD usw.) sind gegeben.
Frage: Kann mir jemand weiterhelfen?
Ein herzliches Dankeschön vorab *und_die_grauen_haare_zur_seite_kämme*
20 Seiten weiter :-)
Dito, bei mir läuft auch alles, bis auf diese Fehlermeldung. Gibt es schon einen weiteren Lösungsansatz?
Viele Grüße
Stefan
Hi,
änder mal in der Membermap.php folgende Zeile
Zeile 53
require_once('Geo/Geo.php');
in
require_once('includes/Geo.php');
Das war bei mir der Fehler.
Da die Geo.php ja im includes Verzeichnis liegt
Danke für Deine Antwort, wenn ich dies verändere habe ich nur neue Fehlermeldungen. Ich glaube es liegt an:
$map2 = Geo::setupMap('map/members.png');
aber ich komm nicht auf die Lösung :-(.
Was macht diese Funktion eigentlich?
$map2->setRange(5.8, 17.2, 45.8, 55.1);
Was wird dort definiert? Kann es auch an MEINEN Daten in der Datenbank liegen?
Außerdem fällt mir auf, dass es zwei map.php gibt, einmal im normalen Verzeichnis einmal im helpers Bereich.
Viele Grüße Stefan
Hi,
wie kann man es einstellen, das Gäste/unregistrierte User keinen Zugriff auf die Map haben.
Onkel_Tom
25.08.2004, 14:29
Hallo MrD,
Wenn Du ein geschlossenes Forum für Gäste/Besucher betreibst kann die Mitgliederkarte nicht von diesen eingesehen werden. Sollte Dein Forum für Gott und die Welt offen sein dann musst Du folgenden Code in der membermap.php ändern.
Suche in der Datei membermap.php nach:
<?php
// get permissions to view forumhome
if (!($permissions['forumpermissions'] & CANVIEW))
{
print_no_permission();
}
Ersetze es mit:
<?php
// Show membermap only to registered Members
if ($bbuserinfo['userid'] == 0)
{
print_no_permission();
}
ungetestet, müsste aber so funktionieren ;)
Warning: imagecreate(): Invalid image dimensions in /homepages/333/1234455/htdocs/forum/includes/Geo/helpers/map.php on line 54
Warning: imagecolorallocate(): supplied argument is not a valid Image resource in /homepages/333/1234455/htdocs/forum/includes/Geo/helpers/map.php on line 148
Ein tolles Add-On, ich habe noch nie soviele unterschiedliche Fehlermeldungen gesehen. Immer wenn ich eine weg habe kommt die nächste :cool: .
Noch ein Tip für mich? :o
Stefan
Onkel_Tom
26.08.2004, 17:09
Warning: imagecreate(): Invalid image dimensions in /homepages/333/1234455/htdocs/forum/includes/Geo/helpers/map.php on line 54
Warning: imagecolorallocate(): supplied argument is not a valid Image resource in /homepages/333/1234455/htdocs/forum/includes/Geo/helpers/map.php on line 148
Ein tolles Add-On, ich habe noch nie soviele unterschiedliche Fehlermeldungen gesehen. Immer wenn ich eine weg habe kommt die nächste :cool: .
Noch ein Tip für mich? :o
Stefan
Welche GD Version hat Dein Server installiert ?
würde jemand den Hack auf meinem Board installieren? Krieg es einfach net hin
GD Version 2 oder höher :-).
Also ich bin ja schon soweit, dass folgendes Beispiel funktioniert:
http://www.neurope.de/includes/Geo/gee.php?id=16964&q=Germaringen
aber eben leider nicht:
www.neurope.de/membermap.php
Bin also bei 98% Erfolg ;-)
Viele Grüße und Danke für Eure Hilfe
Stefan
Onkel_Tom
30.08.2004, 13:52
Wie ich sehe verwendest Du andere Pfade in Deiner Installation anstelle der im Hack vorgeschriebenen. Hast Du auch alle Dateien geprüft und die entsprechenden absoluten und relativen Pfade an Deine Installation angepaßt ???
Speedman-xxl
01.09.2004, 22:18
habe da auch mal ne frage in dem install txt steht
das ich die sachen von GeoClass in dieses verzeichniss tuen soll:
- Install GeoClass to your !!!!PHP Include Directory!!!!
allerdings exestiert bei mir so ein verceichnis net php iss klar aber dort gibt es kein include ordner ...... oder wie meinen die das ??
Onkel_Tom
01.09.2004, 23:36
Probier mal die Installationsanleitung aus diesem Beitrag hier. Ich glaube M@rcus hat diese Zusammenfassung gemacht, da steht nix von PHP Include dir ;)
Das ganze Geo-Gedöns kommt alles ins Verzeichnis /includes, /includes/helpers und /includes/sources
gibt es freiwillige, sonst such ich mir einen aus? :)
kann mir das nicht bitte jemand einbauen???
hoi - wo muss ich was editieren damit da:
http://www.ratweb.com/pics/map.png
das steht was in meiner membermap phrase steht ? :confused:
danke schonmal :)
@ Daveone: Das schaffst du schon! Ist nicht schwer! Bevor du nen Adinzugang, FTP-zugang und so weiter eingerichtet hast, kannste das eben auch selbst montieren ;)
@ Ich weis RAT: das was du eingekreist hast, ist das Navbar-Template. Aber das was da steht, kommt glaube ich unter anderem aus der functions_online.php ?? Kann das sein? :confused:
Und wieso ziehst du aus Köln weg?????? Ich bin extra '95 hierher gezogen - aus dem Westerwald... ;)
@ Ich weis RAT: das was du eingekreist hast, ist das Navbar-Template. Aber das was da steht, kommt glaube ich unter anderem aus der functions_online.php ?? Kann das sein? :confused:
Und wieso ziehst du aus Köln weg?????? Ich bin extra '95 hierher gezogen - aus dem Westerwald... ;)
hm, Navbar template? mal schauen ...
Wenn da was stände, könnte ich ja wenigstens danach suchen ...
Frauen .... :D
EDIT: Hab's gefunden: http://www.vbulletin-germany.com/forum/showthread.php?p=65227&highlight=%24navbits%5Blastelement%5D#post65227
Hi,
@ Daveone: Das schaffst du schon! Ist nicht schwer! Bevor du nen Adinzugang, FTP-zugang und so weiter eingerichtet hast, kannste das eben auch selbst montieren ;)
im Prinzip ja, aber dazu müßte man erstmal eine vernünftige Ordnerstruktur auf dem Server haben ;)
Und nicht 2 mal das includesverz. und alles durcheinander.
So kann das nicht gehen ;)
stratula
23.09.2004, 22:01
Hallo,
tolle Arbeit.
Ich bekomme aber immer die Fehlermeldung das die PLZ nicht den Bestimmungen entspricht wenn ich ^[0-9]{1,5}$ als Regulärer Ausdruck eingebe.
Was ist Falsch??
stratula
27.09.2004, 13:23
Hallo,
tolle Arbeit.
Ich bekomme aber immer die Fehlermeldung das die PLZ nicht den Bestimmungen entspricht wenn ich ^[0-9]{1,5}$ als Regulärer Ausdruck eingebe.
Was ist Falsch??
anybody???????
Creasure
28.09.2004, 22:40
Hallo Leute,
da habt ihr ja ein schönes Teil zusammengebastelt.
Ich habe jetzt erst die Beiträge hier gelesen und es nicht selber installiert. Ein Frage habe ich noch, die ich so nicht richtig beantwortet gefunden habe.
Erzeugt Ihr die PNG jedesmal neu on the Fly mit GD?
Ist es nicht sinnvoller das per cron in regelmäßigen Abständen zu machen? Oder zumindest nur eine neue Map erstellen lassen, wenn auch wirklich ein neuer User mit PLZ hinzugekommen ist?
Ich überlege nämlich ob das nicht ein Problem werden kann.
Gruß
Creasure
VB-Fanatiker
28.09.2004, 22:52
Hallo Leute,
da habt ihr ja ein schönes Teil zusammengebastelt.
Ich habe jetzt erst die Beiträge hier gelesen und es nicht selber installiert. Ein Frage habe ich noch, die ich so nicht richtig beantwortet gefunden habe.
Erzeugt Ihr die die PNG jedesmal neu on the Fly mit GD?
Ist es nicht sinnfoller das per cron in regelmäßigen Abständen zu machen? Oder zumindest nur eine neue Map erstellen lassen, wenn auch wirklich ein neuer User mit PLZ hinzugekommen ist?
Ich überlege nämlich ob das nicht ein Porblem werden kann.
Gruß
Creasure
Endlich mal jemand der sich Gedanken macht! Ich habe das ja schon mehr als einmal gepostet, jedoch leider keine Reaktion erhalten. Auf meiner Map sind inzwischen eine vierstellige Zahl an User eingetragen: Ladezeit mehre Minuten, so dass ich schon Mails mit dem Hinweis bekomme, das Teil funktioniere nicht. Technisch habe ich leider keine Ahnung davon, aber das was Du schreibst klingt schonmal ganz gut... :rolleyes: :)
Creasure
29.09.2004, 18:46
Ich habe das Teil nun mal zum Testen zum Laufen gebracht.
Ich denke das sollte definitv später von einem Cronjob generiert werden. Dazu müsste man das jedoch so umschreiben, dass die Image-Map auch irgendwo zwischengespeichert wird. Naja, ist alles machbar ... Mal sehen, wenn ich ein bisschen mehr Zeit habe.
Bevor ich mich jedoch totsuche, kann mir mal einer verraten, wiese die Usernamen bei mir in der Karte nicht angezeigt werden?
Muss ich das noch irgendwo extra aktivieren, oder lief das bei euch allen sofort?
Da habe ich die Anleitung wohl nicht genau durchgelesen, in der ganz deutlich steht, dass da eine Funktion ausgetauscht wird *g*
http://www.eidosforum.de/membermap.php
Achja, ich habe das Template mal angepasst, damit nicht eingeloggte User die Karte nicht sehen. Da war auch noch irgendwie der Wurm drin.
$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
$headinclude
</head>
<body>
$header
<table border="0" width="90%" align="center">
<tr><td>
$navbar
</td></tr></table>
<!-- main -->
<if condition="$show['guest']">
<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" align="center">
<thead>
<!-- guest welcome message -->
<tr>
<td class="tcat" colspan="6"><phrase 1="$vboptions[bbtitle]">$vbphrase[welcome_to_the_x]</phrase></td>
</tr>
<tr>
<td class="alt1" colspan="6">
<phrase 1="faq.php?$session[sessionurl]" 2="register.php?$session[sessionurl]">$vbphrase[first_visit_message]</phrase>
</td>
</tr>
<!-- / guest welcome message -->
</thead>
</table>
</if>
<!-- /main -->
<if condition="$show['member']">
<br>
<center>> <a href="memberlist.php?do=search">zur Mitgliedersuche</a></center>
<br />
$html
<center><img src="map/usermap.png" width="600" height="750" usemap="#Map" border="0"></center>
</if>
<br />
<br />
$footer
</body>
</html>
Gruß
Nils
Creasure
30.09.2004, 10:54
So,
nur zur Info, wie ich es nun mache:
Ich habe ein weiteres Template angelegt "maphtml". Weiterhin einen Cronjob im vbulletin-admin angelegt. Einmal die Stunde erzeugt der Cronjob nun ein neues Bild und schreibt die Variable $html in das Template.
Da ich das im Augenblick nur so zusammengeschustert habe, veröffentliche ich das mal lieber nicht. Bei Interesse helfe ich sonst gerne aus, oder wenn ich mal ganz viel Zeit habe oder zu viele Anfragen kommen, räum ich das auf und häng das mal dran ;)
editiert___________
Das habe ich erstmal wieder verworfen, da die neue MAP-Funktion zu viele Hochkommata hatte, und ich das dadruch nicht richtig in die Datenbank bekommen habe. Code ist auskommentiert noch in der Datei, falls sich jemand daran mal versuchen will. Dann könnte man das schreiben in ein extra File verwerfen.
Seit Anbeginn verfolge ich das Thema mit dem Map-Hack mit großem Interesse, total gierig *ggg*, es endlich auf der eigenen HP einbauen zu können und immer darauf hoffend, dass endlich Licht in'S Dunkel kommt.
Inzwischen, auf Seite 22 dieses Threads, bin ich aber irgendwie verwirrter denn je und trau mich immer weniger daran.
Darum meine ganz ketzerischen Fragen:
1. Wer hat eine stabil und schnell laufende Version online zum angucken?
2. Woooo finde ich bzw. hat jemand eine Zusammenfassung mit allen notwendigen Teilen samt i......-sicherer step-by-step Anleitung?
3. Bzw. ist das alles in diesem Posting hier zusammengefasst http://www.vbulletin-germany.com/forum/showpost.php?p=64264&postcount=85? Ist das die "final"?
Und als letztes noch, bevor ich mir evt. völlig umsonst den Kopf zerbreche, was "muss der Webspace alles können bzw. haben"?
Vielen DAnk schon mal ;)
Jana
Creasure
01.10.2004, 00:23
Die Anleitung ist soweit komplett und sollte funktionieren.
Wieso es bei mir Probleme gab, ist weil ich das ganze ein bisschen umgebaut habe. Ich wollte nicht, dass die Karte und User jedesmal wieder aus der Datenbank zusammengebastelt werden.
Bei mir wird die Karte nun Einmal in der Stunde geupdatet.
Da ich die es komischerweise nicht geschaft habe, die Daten korrekt in ein Template zu schreiben (adslashes - doppelt und keine Zeit für einen anständigen ereg) habe ich die Map einfach in eine Datei geschrieben.
Weiterhin wollte ich die geo und pear nicht im include Verzeichnis haben. Hätte sich zwar auch einfach ins PHP Include-Verzeichnis schieben können, dachte mir aber, dass es für viele einfacher ist, falls diese Modifikation gefallen findet ;)
Und hier oder da noch eine Mini-Änderung. ( Wer Zeit und Lust hat kann den Code ja aufräumen ...)
Zusammenfassung:
- Besorge dir die geo-Datenbank aus dem ersten POST von KarateKit.
- Lade mein Attachment herunter
- Wenn Du willst, benutze mein modifiziertes Template 3 Posts weiter oben.
- Mach deine Änderungen in der membermap.php bis Zeile 21
- Richte einen Cronjob ein mit dem Aufruf der membermap.php?mm_action=c
Und alles was hier nicht steht, steht in der Anleitung von M@rkus.
Kaputt machen kannst Du eigentlich nichts, da nun alles in einem Verzeichnis ist.
Good Luck ;)
Anlage habe ich vorübergehend mal entfernt ... sind zwei kleine Fehler drin. Habe es bemerkt, als ich jemandem geholfen habe das ins Forum zu implementieren. Ich habe sie dann in einem neuen Beitrag erneut hochgeladen.
http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339
Creasure
Creasure
07.10.2004, 13:08
Hallo,
ich bin's wieder.
@KarateKit: Wenn ich die Datenbank mit der offiziellen von opengeodb vergleiche, dann sind in dieser irgendwie 1500 mehr Orte, wie kommt das? Worauf hast Du da zurückgegriffen? Oder gibt es eine aktuellere Version irgendwo anders?
Ich hab jetzt eigentlich alles so weit gemacht wie in dem ersten Post beschrieben war. Hab jetzt aber das Membermappack von Creasure verwendet.
Doch noch einige Fragen:
- Wie mach ich das das die Memberliste (also den Link) auch oben im Menü angezeigt wird?
- Ich habe eine Fehlermeldung: Warning: file_get_contents(/www/htdocs/v128943/map/imap.html) [function.file-get-contents]: failed to create stream: No such file or directory in /www/htdocs/v128943/forum/membermap.php on line 170
- Ich hab bei meinem Profil bereits die PLZ und Land eingeben aber es wurde noch nix in die Map eingetragen! [CHMOD is für die zwei Bilder gesetzt auf 777]
hoffentlich könnt ihr mir helfen.
Creasure
11.10.2004, 09:40
Zur Fehlermeldung: Das Script liest die Datei $filename aus.
Scheint so, als ob Du die Datei noch nicht erstellt hast. Das tust Du, indem Du
membermap einmal wie folgt aufrufst: membermap.php?mm_action=c
Du benötigst Schreibrechte für diese Datei.
Am besten Du gibst dem Gesamten Verzeichnis 777 Rechte. Und in die Unterverzeichnisse legst Du dann am besten eine .htaccess Datei.
Den Menupunkt musst Du in den Templates einrichten. Irgendwo in den Antworten steht genau beschrieben wo. Musst nur einmal durchblättern. (Auf Seite 13)
VB-Fanatiker
13.10.2004, 00:09
@Creasure
Ich finde es lobenswert, dass Du Dir die Mühe gemacht hast, den Hack "aufzupolieren". :) Wäre es Dir möglich noch kurz (für einen Doofi wie mich) eine Punkt für Punkt-Anleitung zu schreiben, welche Änderungen jemand machen muss, der den ursprünglichen Hack schon eingebaut hat? Habe Dein Posting abermals durchgelesen, aber werde echt nicht schlau draus und in Deiner Zip konnte ich keine Anleitung finden - sorry und danke. ;)
Schöne Grüße
VB-Fanatiker
Creasure
13.10.2004, 09:40
@VB-Fanatiker: ui, dann müsste ich mir ertseinmal wieder anschauen, wie die Grundinstallation aussah... Das schaffe ich jetzt nicht, sorry.
Das einfachste wären dann einfach den kompletten inhalt meiner ZIP zu benutzen, weil dort bereits alle Dateien angepasst sind.
Ich habe ja zwei Modifikationen vorgenommen.
1. Alle weiteren benötigten Dateien liegen im map verzeichnis und nicht im include oder sonstwo.
2. mempermap.php so modifiziert, dass sie nicht bei jedem Aufruf neu berechnet wird. Das wird nun von einem Cronjob (den kann man auch im vbulletin einstellen) erledigt, indem die datei membermap.php mit der Variable
mm_action=c also: membermap.php?mm_action=c
Nur dann wird eine Datei im Verzeichnis map erstellt, oder aktualisiert. Diese Datei wird ganz unten in der memebermap.php included, damit das template auf die variable zugreifen kann.
Wenn Du Probleme hast, beschreibe einfach am besten die Probleme, und ich kann versuchen zu sagen woran es liegt.
Viel Erfolg :)
Also ich hab die Datei membermap.php?mm_action=c aufgerufen dann hab ich diesen Fehler mit der Datenbank (DB Error: connect failed).Da ist aber alles korrekt eingetragen.In der membermap steht $dbname_prefix = 'vb3_'; den
hab ich freigelassen weil ich keinen prefix verwende.
In der Datenbank ist alles eingetragen hab extra nochmals nachgeschaut.
An was kann der Fehler liegen???
Vielen Dank.
Mfg crespo
Creasure
13.10.2004, 12:33
Also ich hab die Datei membermap.php?mm_action=c aufgerufen dann hab ich diesen Fehler mit der Datenbank (DB Error: connect failed).Da ist aber alles korrekt eingetragen.In der membermap steht $dbname_prefix = 'vb3_'; den
hab ich freigelassen weil ich keinen prefix verwende.
In der Datenbank ist alles eingetragen hab extra nochmals nachgeschaut.
An was kann der Fehler liegen???
Vielen Dank.
Mfg crespo
Schwer zu sagen, wenn die Fehlermeldung nicht etwas genauer ist.
Aber scheinbar hat er bei die die config.php nicht korrekt included. Dort stehen ja die Datenbank-Daten drin. Und bei Dir scheint die connection nicht zu funktionieren. Zu einem Query ist das Script ja noch garnicht gekommen.
(Sonst tippe mal in Zeile 47 die Daten direkt ein.)
___
Da fällt mir gerade auf, dass die Zeile mit dem prefix eh blödsinn ist, da der prefix ja im confic.php bereits angegeben ist. Da muss man dann nur schnell die Querys anpassen. (Mini-Aufgabe für demnächst *g*)
Garfield01
18.10.2004, 14:03
Erstmal Glückwunsch zu dem tollen Hack. Ich habe jetzt etliche Stunden damit zugebracht, das ganze zu installieren, bisher leider erfolglos.
Ich habe es in allen Varianten versucht und habe diverse Pfadprobleme gelöst, bis ich schliesslich hier hängeblieb:
Fatal error: Cannot redeclare class pear in /xxx/xxx/xxx/xxx/Foren/map/pear/PEAR.php on line 70
Die besagt
class PEAR
{
// {{{ properties
Ich habe keine Ahnung mehr, hat zufällig jemand eine Idee oder hat etwas Zeit ;)
Garfiled
Creasure
18.10.2004, 14:08
sorry, keine Ahnung :(
Hast Du Pear evtl. schon auf deinem Server drauf? Kann das evtl. das Problem sein?
Auf jeden Fall bedeutet die Fehlermeldung, dass die Klasse zum zweiten mal deklariert wird, was aber natürlich nicht erlaubt ist. (So ungefähr :))
Nils
Garfield01
18.10.2004, 14:40
Aha.......... :confused:
Und das bedeutet? Wie stell ichs fest? Oder: Kann ich das Problem umgehen??
Garfiled
Creasure
18.10.2004, 14:43
Hast Du meine Änderungen genommen oder die Ursprüngliche Version von Karatkit?
Ich vermute, dass Pear auf deinem Server bereits irgendwo im PHP-Include rumliegt. Dann müsstest Du Karate-Kits Version nehmen...
Garfield01
18.10.2004, 14:47
Achso, ich habe eigentlich deine genommen. Dann versuch ich es nochmal mit der alten
Garfield01
18.10.2004, 15:46
Hmm, der funzt noch weniger
Fatal error: main(): Failed opening required '/includes/Geo/geo.php' (include_path='.:/usr/local/lib/php')
Datei ist definitiv da
Ich glaube ich geb es auf........
Creasure
18.10.2004, 15:52
Sorry, aber ist immer ein bisschen schwer zu helfen, wenn man garnicht so genau weiss wo das Problem ist ...
wenn ich wüsste wie, würde ich dir sonst helfen ;)
nils
Garfield01
18.10.2004, 16:08
Und wenn ich dir mal nen Zugang gebe und du vielleicht, falls du eh grad langeweile hast, mal reinschaust :D ?
Möchte mich bei Creasure und KarateKit für den tollen Hack bedanken.
Es läuft alles super, den Fehler den ich ein paar Threads weiter oben erwähnt hatte, ging auf meine Kappe.
Mfg crespo!!!!
Creasure
19.10.2004, 13:38
Hallo,
anbei die aktuelle Version meiner Modifikation. Ich habe noch zwei kleine "include" Fehler behoben.
Leider hatte ich noch keine Zeit, den Code aufzuräumen und eine Anleitung zu schreiben.
Hier die Kurz-Version:
- Templates, GeoDB Datenbank und vbulletin-Einstellungen wie von Karate-Kit beschrieben einrichten.
Alle anderen benötigten sind im Anhang:
- mmap.zip entpacken und ins Forum verschieben.
- Zeile 16,17,18 von membermap.php anpassen
- chmod 777 für map/usermap.png und map/imap.html
cronjob einrichten, so dass die membermap.php (zB einmal in der Stunde) wie folgt aufgerufen wird: membermap.php?mm_action=c
Leider funktioniert das mit der vbulletin-Funktion für zeitgestuerte Aufgaben nicht so dolle. Einige php-Versionen erlauben keine http request und ausserdem ist das Feld auch bei längeren URLs nicht ausreichend.
Daher empfehle ich crontab einrichten!
Ohne Gewähr, da mal wieder nicht getestet :) Ich habe kein Testserver und Testboard ;)
Ich brächte mal Hilfe von euch.
Enweder bin ich wirklich zu blöd das es nicht läuft oder ich habe einen Fehler gemacht.
Nun die Karte wird angezeigt aber nicht die Orte der User also nichts nur die Karte.
Nun meine Frage wenn ich jemanden einen Zugang gebe der mir helfen wurde wer wäre bereit es zu machen.
Es ist alles chon hochgeladen smat Datenbank aber irgendwie ist ein Fehler drinn.
http://www.forum.an650.de
http://www.forum.an650.de/membermap.php
auch bei der Akualsierung bekommeich Fehlermeldungen
besten dank im voraus toni
Hallo und danke an KarateKid und Creasure.
Ich hab das Ding im AquariumForum (http://www.aquariumforum.de) auch eingebaut.
Nach einigen Modifikationen funktioniert soweit alles ganz gut.
Leider hat der Hack einen großen Nachteil - durch die reine orientierung an der Postleitzahl treten verhäuft Fehler bei den Ortsnamen auf. Er nimmt halt immer den ersten Ort, den er zu einer PLZ findet - das ist leider oft nur ein kleiner "Vorort" oder ähnliches weshalb die User teilweise sehr verwirrt sind.
Trotzdem eine feine Sache - danke für Eure Arbeit.
Evtl. macht sich ja jemand der sich damit auskennt mal die Arbeit und baut eine erweiterte Integration der GeoDB - für das WBB2 gibts sowas schon. Dort muss der User halt unter eingabe von PLZ oder Ortsnamen manuell das richtige Ergebnis aus der DB bestätigen.
Grüße,
Helmi
Creasure
21.10.2004, 09:26
Hallo Lufter,
das hier ist ja deine Fehlermeldung:
Fatal error: Failed opening required '/home/f/forum.an650.de/puplic_html/map/include/geo/Geo.php' (include_path='.:/usr/share/php') in /home/f/forum.an650.de/public_html/membermap.php on line 68
Ich nehme nicht an, dass
'/home/f/forum.an650.de/puplic_html/map/include'
wirklich dein map Verzeichnis ist, oder?
Ändere mal in der Zeile 16 der membermap.php das Verzeichnis und entferne das "/include" am Ende.
Gruß
Creasure
Könnte jemand die Mod. auch auf Luxemburg ausweiten? Leider habe ich dazu die Kenntnisse nicht, die passende Landkarte aber schon. ;) :D
http://212.48.100.52/ADCH.png
Creasure
01.11.2004, 09:57
Dazu würde man alle PLZ und eine dazugehörige Längen- und Breitengrad benötigen.
Wenn du eine kostenlose Datenbank kennst, ist es möglich, dass das mit aufgenommen werden kann. Dann muss nur irgendjemand die Zeit finden das umzubasteln ;)
Gruß
Nils
Servus zusammen,
ich hab zwar jetzt so 100 von den 337 Postiongs gelesen, aber ich hab noch nicht rausgelesen, ob der Hack evtl. auch auf einem shared Server ohne Root-Zugang installierbar ist.
Der Hack ist super-interessant und ich würd den ja nur zu gerne installen.
Kann mir da jemand ne kurze Auskunft geben ?
Gruß & Dank,
Marvin.
Shaochun
05.11.2004, 12:51
Jo, bei mir ist es genauso,
Habe versucht ales nachzuvollziehen,aber das ist fast nicht möglich. Könnte nicht jemand eine Abschließende Zusammenfassung ohne " lade dir diese Anlage aus diesem Thread,von diesem User runter...", sondern wo alles enthalten ist, mit Step by Step Anleitung, machen ? Dann wäre der Hack perfekt :)
Jo, bei mir ist es genauso,
Habe versucht ales nachzuvollziehen,aber das ist fast nicht möglich. Könnte nicht jemand eine Abschließende Zusammenfassung ohne " lade dir diese Anlage aus diesem Thread,von diesem User runter...", sondern wo alles enthalten ist, mit Step by Step Anleitung, machen ? Dann wäre der Hack perfekt :)
Das würde ich mir auch wünschen :)
Creasure
05.11.2004, 13:10
Immer sich was wünschen ist einfach ... wieso macht nicht einer von euch das, wenn ihr die Zeit habt ... gerne unterstütze ich euch mit Infos ... habe aber keine Zeit das niederzuschreiben ...
Gruß
Nils
Immer sich was wünschen ist einfach ... wieso macht nicht einer von euch das, wenn ihr die Zeit habt ... gerne unterstütze ich euch mit Infos ... habe aber keine Zeit das niederzuschreiben ...
Gruß
Nils
Weil wir das selbe Problem wie du haben. ;)
Shaochun
05.11.2004, 15:09
Naja, vieleicht hat ja irgendjemand mal Zeit. ich selber habe keine PHP Erfahrung deswegen kann ich s´net machen :(
Aber ich bin zuversichtlich,dass jemand die vB Sucht packt :D ...
Immer sich was wünschen ist einfach ... wieso macht nicht einer von euch das, wenn ihr die Zeit habt ... gerne unterstütze ich euch mit Infos ... habe aber keine Zeit das niederzuschreiben ...
Hi Nils,
mir ging es nicht darum, hier ein fix und fertiges Skript vorzufinden. Meine Frage bezog sich einzig darauf, ob es
irgendwo in diesem ewig langen Thread auch eine Version odrr Modifikationen veröffentlicht wurden, die den Hack auf einem shared Server ohne Root-Zugang lauffähig machen. Wenn ja, wäre es natürlich nett und hilfreich einen Fingerzeig zu bekommen, wo genau - aber das kann man natürlich auch selbst heraus suchen.
Mehr wollte ich doch gar nicht wissen - und bin immer noch genauso schlau wie vorher :confused:
Gruß & Dank,
Marvin.
hallo ist es möglich auf der seite mit der karte nen button drauf zumachen mit (Daten eintragen) wo man sofort in sein profile kommt um die daten einzutragen?
Creasure
10.11.2004, 15:58
@Marvin: meine modifikation sollte eigentlich auf managed servern laufen. Siehe einfach mal ein paar Beiträger vorher.
Sei mir nicht böse, aber zu sagen: mir sind die 300 Posts hier zu viel, ich habe keine Lust zu lesen - wo finde ich die Lösung genau, ist nicht gerade produktiv und fair.
Ich müsste nun selber wieder suchen ... (Beitrag 339)
@Joe: ja das geht. Einfach einen Link in deinem membermap Template zum Kontrollzentrum setzen.
kann man eigentlich auch ein feld dort hinpacken wo man die PLZ eingibt und die wird automatisch im profile eingetragen?
dann brauch man nicht extra ins progile :)
@Marvin: meine modifikation sollte eigentlich auf managed servern laufen. Siehe einfach mal ein paar Beiträger vorher.
Ja, Dein Skript läuft auf einem (zumindest meinem) Managed Server. Vielen Dank für Dein Skript. Die Idee mit der Cron-Steuerung gefällt mir gut und bringt eine deutlich schnellere Ladzeit der Karte und spart Server-Performance.
Damit die Karte durch ein Cronjob über die Forensoftware stündlich aktualisiert werden kann, habe ich eine weitere Datei erstellt, die nur das Erstellen der Karte beinhaltet. Dann komme ich ohne Parameter beim Skript-Aufruf aus. Andernfalls funktioniert es über die Cronjobs in der Forensoftware nicht.
Gruß + Danke,
Chriss
Hallo Forum,
größere Städte haben bekanntlich mehrere verschiedene Postleitzahlen. Die geodb-Daten berücksichtigt dies allerdings bekanntlich nich mit unterschiedlichen Koordinaten. D. h. wenn ich mehrere Mitglieder z. B. in Düsseldorf habe, diese aber in unterschiedlichen PLZ-Gebieten wohnen, so werden nicht mehr alle Namen auf der Karte angezeigt, weil mehrere Punkte übereinander gelegt werden und nur noch der letzte angezeigt wird.
Hat schon jemand eine Lösung zu dieser Problematik? Im Prinzip müsste man alle Postleitzahlen, die die selben Koordinaten in der geodb haben, zusammenfassen, damit nur noch ein Punkt mit alle Namen auf der Karte ausgegeben wird (statt mehrerer übereinander liegender Punkte).
Gruß,
Chriss
So, nun habe ich das Problem selbst gelöst!
Wenn man die von vb vorgegebenen Profilfelder für die PLZ nutzt, so kann hier standardmäßig nur ein Textfeld eingesetzt werden. Deswegen kommt es zu folgendem Problem bei der Mitgliedskarte:
Über folgende Anweisung werden alle Mitglieder ausgewählt, die eine PLZ und ein Land im Profil eingegeben haben. Die Ausgabe erfolgt sortiert nach der PLZ:
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username FROM ".$dbname_prefix."userfield LEFT JOIN ".$dbname_prefix."user ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid WHERE $fieldname_plz != '' AND $fieldname_country != '' ORDER BY $fieldname_plz";
Über folgende Anweisung können - unabhängig von der Postleitzahl - einem Ort mehrere Benutzer zugerodnet werden:
if( $wohnort[$i] == $wohnort[$i-$a] ) {
$userdata[$i-$a-$ct] .= ", $link";
$a++;
}
Entspricht der aktuell betrachtete Ort dem zuvor betrachteten, so wird kein neuer Punkt erzeugt, sondern dem zuvor betrachteten Ort das aktuell betrachtete Mitglied hinzugefügt. Die Idee ist richtig und funktioniert auch in den meisten Fällen, da die Postleitzahlen normalerweise sortiert hintereinander wegkommen.
Kommen aber bei einem Ort nicht alle Postleitzahlen hintereinander weg, so funktioniert der obige Algoritmus nicht mehr, d. h. es werden zwei Punkte für eine Stadt angelegt. Da diese übereinander liegen (die geo-DB gibt für jedes PLZ eines Ortes die selben Koordinaten aus), werden die "unten liegenden" Mitglieder unterschlagen.
Dies ist z. B. in Düsseldorf der Fall; hier passt die Sortierung nicht mehr:
40001 Düsseldorf Deutschland
4021 Linz Österreich
40211 Düsseldorf Deutschland
Die Sortierung erfolgt nicht numerisch. So kann sich Linz zwischen die Düsseldorfer Postleitzahlen "mogeln" und es werden anschließend zwei Punkte für Düsseldorf auf der Karte gesetzt, womit alle Mitglieder auf dem unteren Punkt auf der Karte nicht mehr angezeigt werden.
Deswegen muss die Sortierung geändert werden, d. h. es muss numerisch sortiert werden. Dazu muss aus dem STRING PLZ eine INTEGER-Zahl gemacht werden. Addiert man einfach eine Zahl zur PLZ dazu, so ändert MySQL schlauerweise den Datentyp für die PLZ-Variable von STRING in INTEGER. Sortiert man dann nach dem neuen Datentyp INTEGER, so ist das Problem gelöst:
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, ($fieldname_plz + 1) AS Dummy, $fieldname_country, username FROM ".$dbname_prefix."userfield LEFT JOIN ".$dbname_prefix."user ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid WHERE $fieldname_plz != '' AND $fieldname_country != '' ORDER BY Dummy ASC";
Die eingeführte "Dummy"-Variable ist also vom Datentyp INTEGER und entspricht der PLZ. Wird nun über Dummy sortiert, sieht das oben erwähnte Beispiel nun wie folgt aus:
4021 Linz Österreich
40001 Düsseldorf Deutschland
40211 Düsseldorf Deutschland
Nun ist die Liste wieder korrekt und der Algoritmus funktioniert wie gewünscht. Jetzt bleibt nur noch zu klären, ob tatsächlich alle Postleitzahlen der einzelnen Städte hintereinander weg folgen. Denn gäbe es die folgende Kombination, so würde der Algoritmus wieder nicht funktionieren:
12345 Stadt1
12346 Stadt1
12347 Stadt2
12348 Stadt1
Wahrscheinlich etwas kompliziert mein Beitrag, aber ich hoffe es ist einigermaßen verständlich...
Gruß,
Chriss
Creasure
15.11.2004, 09:53
Hi,
vielen Dank für den Gedankenanstoss ;)
Wenn Du Recht hast (ich habe es nicht überprüft), und es liegt an der Sortierung der PLZ, dann sollte man doch lieber erst nach Land und dann nach PLZ sortieren. Eine 1 an die PLZ zu hängen ist meiner Meinung nach nicht so schön.
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username
FROM ".$dbname_prefix."userfield
LEFT JOIN ".$dbname_prefix."user
ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid
WHERE $fieldname_plz != '' AND $fieldname_country != ''
ORDER BY $fieldname_country,$fieldname_plz";
Oder habe ich da nun total schief gedacht?
Gruß
Nils
Hi,
vielen Dank für den Gedankenanstoss ;)
[...]
Wenn Du Recht hast (ich habe es nicht überprüft), und es liegt an der Sortierung der PLZ, dann sollte man doch lieber erst nach Land und dann nach PLZ sortieren.
Das Einfache liegt so nah! So funktioniert es natürlich auch. Aber meine Methode den String quasi in einen Integer umzuwandeln, hat noch den Vorteil, dass gleich alle Falsch-Eingaben mit aussortiert werden. Es kann ja sein, dass jemand als PLZ "59xxx" o. ä. eingibt. Diese Werte würden normalerweise mit einsortiert und führen zum gleichen Problem. Addiert man allerdings die "1" so hat man wirklich alle Postleitzahlen hintereinander weg.
Gruß,
Chriss
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username
FROM ".$dbname_prefix."userfield
LEFT JOIN ".$dbname_prefix."user
ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid
WHERE $fieldname_plz != '' AND $fieldname_country != ''
ORDER BY $fieldname_country,$fieldname_plz";
Oder habe ich da nun total schief gedacht?
Servus zusammen,
das Problem haben ja nun mehrere. Könntet ihr mal näher erläutern, wo man welche eurer Änderungen durchführen muß ? Hab zig Mitglieder aus Großstädten und von denen erscheinen zahlenmäßig auch immer nur Bruchteile in der Karte..
Ich hab hier mal alle Dateien nach dem String $sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username durchsucht, finde den aber nirgends. *kopfkratz*
Ist das bei anderen evtl auch so, daß die Karte Österreich gar nicht funktioniert :confused: Mitglieder aus .at werden bei mir in der Karte überhaupt nicht dargestellt..
Insgesamt ein prima Hack - hätte nicht gedacht, daß ich den eingebaut bekomme ;)
Gruß & Dank,
Marv.
Servus zusammen,
das Problem haben ja nun mehrere. Könntet ihr mal näher erläutern, wo man welche eurer Änderungen durchführen muß? Hab zig Mitglieder aus Großstädten und von denen erscheinen zahlenmäßig auch immer nur Bruchteile in der Karte..
Ich habe doch eine Lösung gepostet! Sie funktioniert einwandfrei, d. h. dass nun alle Mitglieder einer Stadt ausgegeben werden und nicht nur ein paar wenige.
in membermap.php suche folgenden Code:
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username FROM ".$dbname_prefix."userfield LEFT JOIN ".$dbname_prefix."user ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid WHERE $fieldname_plz != '' AND $fieldname_country != '' ORDER BY $fieldname_plz ASC";
und ersetze es mit
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, ($fieldname_plz + 1) AS Dummy, $fieldname_country, username FROM ".$dbname_prefix."userfield LEFT JOIN ".$dbname_prefix."user ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid WHERE $fieldname_plz != '' AND $fieldname_country != '' ORDER BY Dummy ASC";
Gruß,
Chriss
Ich habe doch eine Lösung gepostet!
Chriss, kein Grund sauer zu werden, oder ? Ich sagte ja:
Ich hab hier mal alle Dateien nach dem String $sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, $fieldname_country, username durchsucht, finde den aber nirgends. *kopfkratz*
Der Editor hatte den String schlicht nicht gefunden (vermutlich wegen den Leerzeichen). UltraEdit hingegen jetzt schon.
Sie funktioniert einwandfrei, d. h. dass nun alle Mitglieder einer Stadt ausgegeben werden und nicht nur ein paar wenige.
Ich hab die Änderungen jetzt mal durchgeführt und die Map mit membermap.php?mm_action=c neu erstellen lassen - allerdings führte das bei mir zu keiner Veränderung. Die Mitglieder haben die PLZ 22083, 22087 und 20259, wobei jetzt nur das Mitglied aus 20259 Hamburg in der Map erscheint.
Hat vielleicht noch jemand eine Idee, was da bei mir schief gegangen sein könnte?
Gruß,
Marv.
Chriss, kein Grund sauer zu werden, oder ?
Ich bin nicht sauer, hörte es sich so an??
Ich hab die Änderungen jetzt mal durchgeführt und die Map mit membermap.php?mm_action=c neu erstellen lassen - allerdings führte das bei mir zu keiner Veränderung. Die Mitglieder haben die PLZ 22083, 22087 und 20259, wobei jetzt nur das Mitglied aus 20259 Hamburg in der Map erscheint.
Komisch... Das Symptom, wieso nicht alle Mitglieder ausgegeben werden, habe ich bereits weiter oben beschrieben. Und mit meiner Änderung ist dieses Symptom behoben. Also muss es noch eine andere Schwierigkeit geben. Hast Du eine Idee, woran es liegen könnte, dass nicht alle Namen ausgegeben werden?
Vor meiner Änderung gab es Beschwerden von Mitgliedern meines Forums, dass sie sich nicht auf der Karte wieder finden. Nach meiner Änderung, konnten sich alle Mitglieder auf der Karte finden und es gibt diesbzgl. keine weitere Beschwerde mehr.
Anbei ein Screenshot von meiner Karte. Ich habe die Maus mal über Berlin stehen gelassen. Hier gibt es zahlreiche verschiedene PLZ und ich hoffe, dass alle Mitglieder ausgegeben werden.
Gruß,
Chriss
Die Mitglieder haben die PLZ 22083, 22087 und 20259, wobei jetzt nur das Mitglied aus 20259 Hamburg in der Map erscheint.
Hat vielleicht noch jemand eine Idee, was da bei mir schief gegangen sein könnte?
Ich habe es mir noch mal angeschaut und auch bei mir werden nicht alle Hamburger ausgegeben. Problem ist hier, dass die Hamburger Postleitzahlen nicht sortiert hintereinander wegkommen. Und dann funktioniert das Skript leider nicht.
So sind z. B. 20149 und 22765 Hamburger Postleitzahlen. Dazwischen liegt dann dummerweise z. B. Wentorf mit der PLZ 21465.
Diesen Umstand korrekt zu berücksichtigen wird wohl etwas aufwändiger werden...
Gruß,
Chriss
Creasure
23.11.2004, 09:31
Hallo Marvin,
doch Österreich müsste ohne Probleme laufen. Überprüf mal ob die User auch Österreich im Kontrollzentrum ausgewählt haben, oder ob Du in der membermap.php die richtigen Felder angegeben (field(x) und field(y)) hast.
Das mit den Großstädten ist immer noch ein Problem. Habe mir nun mal das Script angeschaut. Leider sind die PLZ in Großstädten nicht fortlaufend. Da kann es passieren, dass eine PLZ einer anderen Stadt die stetige Reihenfolge unterbricht.
Um dieses Problem zu lösen, hilft leider kein einfacher SQL-Query. Ich denke die einzige Möglichkeit wäre, ersteinmal alle Userdaten in einem Array zwischenspeichern, und dann nach Ort sortieren. Wenn ich mal gaaanz viel Zeit habe, guck ich mir das genauer an. Aber vielleicht ist ja jemand in derzeit clever genug ;)
Gruß
Nils
KarateKid
23.11.2004, 14:20
vielleicht schafft es ja jemand meinen Hack zu updaten und als neuen Thread zu posten. Dabei sämtliche Verbesserungen und Updates zu berücksichtigen, die in diesem Thread gepostet wurden. Wenn sich jemand dazu bereit erklärt könnte ja jeder, der hier eine Änderung gepostet hat, demjenigen nochmal die Änderung per PN zuschicken, so dass er nicht den ganzen Thread durchforsten muss!?
Grüße
Sebastian
Beide Varianten des Hacks funzen bei mir (alter Managed Server bei 1und1), außer das mit dem Cronjob wie Creasure es beschrieben hat.
so steht der Cronjob bei mir drin:
# membermap aktualisieren
*/30 * * * * /usr/local/bin/php4 /homepages/absoluterPfad/forum/membermap.php?mm_action=c
Was läuft da schief ?
Versuche es mal so:
*/30 * * * * curl http://URL_zum_Script/membermap.php?mm_action=c
Danke damit funzt das Teil von Creasure 1a.
Mensch mensch,
ich habe mich wirklich durch alle 25 Seiten hier gekämpft. Nach und nach sind so einige Fehlermeldungen bei mir verschwunden (meist durch Ändern der Pfade in den Dateien auf absolute Pfade).
Nun bleibt noch immer folgende Fehlermeldung:
Fatal error: Call to undefined function: setrange() in /www/htdocs/v037339/membermap.php on line 97
Hat jemand eine Idee, einen Tipp?
Außerdem zwei andere, offenbar eher nebensächliche Fragen:
In der Datei Soap.php wird auf eine Datei Client.php verwiesen - wo soll die sein? Und woher?
Außerdem habe ich aus den Quell-Zips noch eine sessions.php übrig. Muss die noch irgendwohin?
Es grüßt
Claudia
Hallo Forum,
ich würde gerne mein Forum um eine Umkreissuche erweitern. D. h. nach Eingabe einer PLZ und eines Umkreis in km sollen alle Mitglieder im Umkreis ausgegeben werden. Um die Rechenzeit zu begrenzen, müsste der max. Umkreis auf ca. 100 km begrenzt werden.
Die Umkreissuche ansich ist nicht das Problem, da das opengeo-Projekt bereits standardmäßig eine Umkreissuche anbietet. Über die Umkreissuche kann man dann auch wirklich alle Mitglieder in der Nähe ausgeben lassen und es werden nicht Mitglieder - so wie es aktuell auf der Mitgliederkarte der Fall ist - ausgelassen.
Nur habe ich von der Grafik-Programmierung keine rechte Ahnung. Deshalb meine Frage: Wie kann ich auf der karte um einen Ort einen Umkreis einzeichnen?
Hat hier schon jemand eine Umkreissuche mit ins Forum intergiert?
Gruß,
Chriss
Ist euch mal aufgefallen, dass das Dingen nicht auf PHP 5 läuft?
Find ich schade :(
Das ganze klappt hier hinten und vorne nicht!
Da is was veraltet, da gibts was neues, da fehlen dateien und und und.
Kann hier mal wer ne aktuelle laufende gezippte Version posten? Oder mir per Email schicken? Ich bekomm es nicht zum laufen!
Die ganzen Pfadangaben im Geoordner is falsch. Pear.php gibts dort glei gar ned.
Würde mich freuen wenn mir hier einer damit helfen könnte. So bringts mir nix, weil die Versionen der einzelen Daten wieder ganz unterschiedlich sind und es dann 3 mal ned laeuft.
MfG Enzio
Och Enziooooo ^^
Ich hab dir schon so oft gesagt, dass du mich per ICQ anschreiben sollst ;)
Du kennst mich doch ^^
http://www.oc-tec.de/membermap.php?
Bei mir geht sie ;)
Da ich auch an diesem Hack verzweifel, wär es wirklich gut hier mal eine aufgeräumte Version zu posten.
Danke
Wenn ich die Tage Zeit habe, mache ich das mal für Euch :)
Das ist doch ein Wort Stussi. :)
Danke
stormblast
05.01.2005, 17:13
Ich bekomme ein:
Fatal error: Call to undefined function: setrange() in /var/www/vb/membermap.php on line 97
Woran könnte das liegen?
Php 5? :p
Ich hab Euch übrigens nicht vergessen ;) Arbeite grad aber an recht vielen Dingen...
EDIT:
versucht es mal so:
http://www.vbulletin-germany.com/forum/showpost.php?p=64264&postcount=85
So hab ich das auch gemacht, sollte so funktionieren ;)
Sparkiller
10.01.2005, 12:16
Php 5? :p
Ich hab Euch übrigens nicht vergessen ;) Arbeite grad aber an recht vielen Dingen...
EDIT:
versucht es mal so:
http://www.vbulletin-germany.com/forum/showpost.php?p=64264&postcount=85
So hab ich das auch gemacht, sollte so funktionieren ;)
Hat ja eventuell nichts zu bedeuten, aber auf der Seite desjenigen spuckt die Memberkarte nur eine Fehlermeldung aus... :D
http://www.e34m5.de/board/membermap.php
http://www.oc-tec.de/membermap.php?
Bei mir nich ;)
Sparkiller
10.01.2005, 14:42
http://www.oc-tec.de/membermap.php?
Bei mir nich ;)
Ok, dann trau ich mich da jetzt auch mal ran. :)
Onkel_Tom
10.01.2005, 15:59
@ Stussi
Kannst Du Deine map.png mit den schönen Beschriftungen der Länder auch den anderen zur Verfügung stellen oder ist die schon irgenwo verlinkt ?
Mir gefällt die Beschriftung gut und wenn jeder zu diesem Hack etwas beiträgt wird er doch noch perfekt ;)
Klar kann ich!
War hier mal *irgendwo* verlinkt...
Ich häng sie einfach mal an :)
Sparkiller
10.01.2005, 17:06
*hust*
Nordrein-Westfalen?
*hust*
Ich hab die nich gemacht ^^
Ich weiß sehr wohl, wie man mein eigenes Bundesland schreibt ^^
Sparkiller
10.01.2005, 17:39
Oh, Oberhausen, stimmt ja. :D
Der Einbau des Scriptes hat übrigens einwandfrei geklappt, vielen Dank schon einmal!
Mir ist nur aufgefallen, dass die Benutzer kein ' im Benutzernamen verwenden sollten, sonst kommt da schon einmal was durcheinander.
Und eine Anfrage hätte ich auch.
Ist es möglich, auch das Bundesland in dem Pop-Up-Fenster anzuzeigen? (Ist ein User-Wunsch, wobei ich ja der Meinung bin, dass man ungefähr wissen sollte, wo was liegt... ;) )
http://www.projektstarwars.de/forum/membermap.php
Edit: Noch eine Frage, ganz oben wird nicht angezeigt, auf welcher Seite ich mich da befinde. Weiss jemand, wie man dies beheben kann?
Noch eine Frage, ganz oben wird nicht angezeigt, auf welcher Seite ich mich da befinde. Weiss jemand, wie man dies beheben kann?
Das geht so:
öffne die Membermap.php
SUCHE
// draw nav bar
$navbits = array();
$parentlist = array_reverse(explode(',', substr($foruminfo['parentlist'], 0, -3)));
foreach ($parentlist AS $forumID)
{
$forumTitle = $forumcache["$forumID"]['title'];
$navbits["forumdisplay.php?$session[sessionurl]f=$forumID"] = $forumTitle;
}
// pop the last element off the end of the $nav array so that we can show it without a link
array_pop($navbits);
$navbits[''] = $foruminfo['title'];
$navbits = construct_navbits($navbits);
und LÖSCHE es.
Dann SUCHE
eval('$navbar = "' . fetch_template('navbar') . '";');
Und füge DARÜBER ein:
$navbits = construct_navbits(array('' => Membermap'));
Sparkiller
10.01.2005, 19:01
Hat geklappt, Dankeschön!
Onkel_Tom
10.01.2005, 19:27
$navbits = construct_navbits(array('' => 'vBGarage'));
Genau, am Besten mit vBGarage :D
Ich würde da Mitgliederkarte oder Benutzerkarte verwenden ;)
Das kommt davon, wenn man das mit anderen Hacks vergleicht ^^
Sparkiller
10.01.2005, 20:30
Noch eine, nicht ganz so wichtige Frage.
Ein Benutzer hat die PLZ 96515, für welche in der Datenbank sowohl die Stadt "Judenbach" als auch "Sonneberg" gespeichert ist.
Jetzt wird er auf der Karte als Einwohner von Judenbach angezeigt, wobei er aber zur anderen Stadt gehört. Ohne weiteres kann man sowas nicht korrigieren, oder?
(Kann aber auch als allgemeiner Bug gesehen werden, da andere Benutzer das selbe Problem haben.)
Noch ein etwas wichtigeres Problem: Da einige Benutzer in meinem Forum ein ' in ihrem Namen verwenden, kommt dadurch das Script arg durcheinander, und zeigt deren Eintrag zusammen mit einer Fehlermeldung gar nicht erst an.
Soweit ich es sehen kann, liegt es an der Stelle, wo der overlib-Mouseover erzeugt wird.
Wäre toll, wenn dies jemand korrigieren könnte.
Beispiel anhand der Membermap in meinem Forum (der Eintrag links von Essen macht z.B. Probleme):
http://www.projektstarwars.de/forum/membermap.php
Update 2: Unter Opera und Firefox scheint es auch noch Probleme bei der Darstellung der Farben zu geben.
Onkel_Tom
11.01.2005, 06:31
Guten Morgääähn zusammen,
Ich habe mir heute Nacht nochmals den Kopf über die Aktualisierung gemacht. Das Resultat war ein einfaches Cron Script für vB das man im AdminCP unter zeitgesteuerte Aufgaben eintragen kann und dann zur gewünschten Zeit bzw. Intervall automatisch ausführen lassen kann.
Ich wollte bei mir die Aktualisierung nicht über den crontab realisieren da ich nicht möchte das es über 24 Stunden in zyklischen Intervallen ausgeführt wird. Es soll nur aktualisiert werden wenn auch Benutzer auf dem Board sind und das machen die zeitgesteuerten Aufgaben.
Anleitung zur Installation:
Script herunterladen, entpacken und ins Verzeichnis /includes/cron Eures Forums kopieren. Danach ins AdminCP wechseln und unter zeitgesteuerte Aufgaben, Aufgabe hinzufügen einen einen Eintrag für das Script machen.
hier ein Beispiel:
Titel: Benutzerkarte aktualisieren
Wochentag: *
Monatstag: *
Stunde: *
Minute: 18
Logeinträge: Ja
Dateiname: ./includes/cron/membermap_upd.php
In diesem Beispiel wird das Script jede Stunde zur 18 Minute ausgeführt und aktualisiert die Benutzerkarte.
Ihr könnt auch gerne Logeinträge: Nein auswählen da das Script sonst 24 Einträge pro Tag schreibt die kein Mensch braucht :D
Okay, das war's.
Konfigurieren müsst Ihr nix da ich alles aus der global.php hole was ich brauche.
Eins noch, sollte auf dem Server kein curl sein oder Ihr aus irgendeinem Grund keinen Zugriff darauf haben (shell etc.) könnt Ihr das Script leider nicht verwenden.
Probiert mal und gebt mir feedback ob es funzt ;)
Wird die Karte dann nur jede Stunde neu erstellt und nicht wie sonst bei jedem Aufruf?
Onkel_Tom
11.01.2005, 13:41
Ja, die letzte Version von Creasure (Download in diesem Beitrag (http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339) ist so geändert das die Aktualisierung über Cron läuft.
Hi,
kann denn nichtmal jemand eine aktualisierte Version incl. verständlicher Installanleitung zur verfügung stellen?
Denn erst durch 4 versch. Threads suchen, das bringt denke ich mal niemanden weiter :)
Denn wenn ich die Membermap von KK und creasure vergleiche, dann sind da übelste unterschiede drinne.
Sparkiller
13.01.2005, 20:45
Für mein bereits erwähntes Problem mit Benutzernamen welche ein ' enthalten, habe ich mir eine kleine Zwischenlösung ausgedacht.
In der Map.php nach
$user = $userdata[$i];
einfach noch
$user = str_replace("'", "\'", $user);
eintragen. Ist zwar etwas billig, aber es funzt.
Lässt sich natürlich auch auf andere Sonderzeichen anwenden, welche Probleme machen.
Odysseus
15.01.2005, 09:41
Woher kommen eigentlich die Daten für Österreich?
Ich habe da ein paar bestätigte Fehler in der Insbrucker Umgebung. Da scheinen ein paar PLZ durcheinandergewürfelt zu sein.
Ein Mitglied von mit wont z.B. in 6020 Insbruck, aber unter 6020 ist ein Ort namens Ampass eingetragen, der aber in Wirklichkeit die PLZ 6060 hat und einige km östlich von Innsbruck liegt. Unter 6060 steht dann die Ortschaft Ansam drinnen, die eigentlich die PLZ 6067 haven müsste.
Ob noch weitere Fehler in anderen Bezirken vorliegen, weß ich nicht. Es könnte gut sein, dass lediglich Innsbruck betroffen ist.
Onkel_Tom
15.01.2005, 10:07
Die Daten kommen alle aus dem "Sammelwerk" GeoDB. Das Problem mit Ampass und Insbruck wurde mir von einem Benutzer auf meinem Board auch schon mitgeteilt. Ich habe aber keine Lust die ganze Einträge in der GeoDB für Österreich zu überprüfen. Das ist ja ne Sträflingsarbeit :D
und ersetze es mit
$sql_q = "SELECT ".$dbname_prefix."userfield.userid, $fieldname_plz, ($fieldname_plz + 1) AS Dummy, $fieldname_country, username FROM ".$dbname_prefix."userfield LEFT JOIN ".$dbname_prefix."user ON ".$dbname_prefix."userfield.userid=".$dbname_prefix."user.userid WHERE $fieldname_plz != '' AND $fieldname_country != '' ORDER BY Dummy ASC";
Nur mal zur Sicherheit: Ich soll wirklich etwas mit "Dummy" dort einsetzen? Was tut das? Oder muss ich das durch irgendwas ersetzen?
Gruß
Claudia
Moin Claudia,Nur mal zur Sicherheit: Ich soll wirklich etwas mit "Dummy" dort einsetzen? Was tut das? Oder muss ich das durch irgendwas ersetzen?dachte, wir hätten es hingebracht bei Dir??
--
Gruss Thoki.
Hi Thoki,
ja, die Landkarte läuft - Danke Dir nochmal dafür.
Nur diese Geschichte, dass z.B. nur ein Hamburger angezeigt wird... dieses Fehlverhalten zeigt sich auch bei mir ;-)
Gruß
Claudia
Creasure
17.01.2005, 10:15
Das Problem bei Hamburg zB ist, dass die PLZ nicht unbedingt einander folgen. Daher ist die Sortierung leider nicht korrekt, und es treten Fehler auf.
Das lässt sich so einfach nicht beheben, und wir müssen vorerst damit leben, sorry.
Achja, das Dummy im Query ist so in Ordnung. Das Ergebnis wird ja nur so genannt. Am besten kein Kopf drum machen.
Robi_Kenobi
24.01.2005, 04:40
Hallo,
finde die Idee dieses Hacks super und habe versucht ihn einzubauen, aber leider klappt das bei mir nicht. Habe mir auch den ganzen Thread durchgelesen, aber keine Lösung gefunden.
ich bekomme einfach nur eine weiße Seite mit
<html><body></body></html>
Die usermap.png wird aber geändert und die Punkte sind auch drin, auch die imap.html ist ok. Nur wird nix angezeigt. Ich habe keine Ahnung warum.
Das Template "maphome" habe ich auch angelegt und es wird unter Eigene Templates im Style&Template Manager angezeigt. :confused: Trotzdem vermute ich das es irgendwas damit zu tun hat.
Hat jemand das Problem schon mal gehabt und kennt eine Lösung ?
Creasure
24.01.2005, 09:46
EIne komplett leere Seite ist eigentlich ein Hinweis darauf, dass irgendwas mit deinem Template nicht in Ordnung ist.
Schau mal, ob Du es auch wirklich korrekt geschrieben hast.
Sparkiller
24.01.2005, 12:39
Die Daten kommen alle aus dem "Sammelwerk" GeoDB. Das Problem mit Ampass und Insbruck wurde mir von einem Benutzer auf meinem Board auch schon mitgeteilt. Ich habe aber keine Lust die ganze Einträge in der GeoDB für Österreich zu überprüfen. Das ist ja ne Sträflingsarbeit :D
Ich habe zufällig diese Seite hier gefunden, wo es anscheinend eine aktuellere (und um einiges größere?!) Version der GeoDB gibt.
http://www.th-mack.de/opengeo/current.html
Könnte man damit etwas anfangen, beispielsweise wegen dem Hamburg-Problem? Bin da jetzt selber leider nicht so bewandert.
Robi_Kenobi
24.01.2005, 15:48
EIne komplett leere Seite ist eigentlich ein Hinweis darauf, dass irgendwas mit deinem Template nicht in Ordnung ist.
Schau mal, ob Du es auch wirklich korrekt geschrieben hast.
Ja habs korrekt geschrieben und schon sicher 10 mal von Null auf neugemacht.
Leider bekomme ich ja auch keinen Fehler und nichts, von daher weiss ich jetzt gar nicht wie ich das Problem einkreisen soll ?
Muss man beim erstellen des Templates auf etwas besonderes achten ?
Robi_Kenobi
24.01.2005, 19:27
Hallo,
habe das Problem gelöst, der html code der am anfang in der membermap.php steht
<html>
<head>
<title>Membermap für VB3</title>
<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
</head>
<body>
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
führt dazu das bei mir gar nichts angezeigt wird, nachdem ich das alles rausgeschmissen habe und die Sachen direkt ins Template kopiert, gehts.
http://forum.tweakpc.de/membermap.php?
Freu !!! :D
Creasure
25.01.2005, 21:45
Auwaia .. wo kommt denn das her .. *urgs*
Steht ja auch bei mir ... Dieser Mist MS Explorer, dass der die Fehler nicht anzeigt ....
Da muss ich ja mal in Kürze schauen ob ich den Fehler fabriziert habe, oder jemand anderes geschlampt .. sorry!
Schau mir das an, sobald ich ein paar Minuten Zeit habe!
Hi,
habe folgendes Prob mit dem Cronjob.
Habe von Onkel Tom das cron fürs VB genommen, komischerweise läuft das script aber in einer Schleife :(
Sprich es ist heute um 13 Uhr gestartet worden, und ich habs durch Zufall gemerkt, das es immer noch läuft.
Fast ne ganze Stunde lang :(
Hatte da natürlich ein paar Performance Probs.
Onkel_Tom
26.01.2005, 14:10
Habe von Onkel Tom das cron fürs VB genommen, komischerweise läuft das script aber in einer Schleife :(
Sprich es ist heute um 13 Uhr gestartet worden, und ich habs durch Zufall gemerkt, das es immer noch läuft.
Fast ne ganze Stunde lang :(
Hm, komisch, wie hast Du den gemerkt das es noch läuft ? ps-ef auf dem Server ?
Also bei mir funktioniertes wunderbar, ich hätte es sonst nicht hier zum download angeboten.
Hi
wie ich es gemerkt habe,
habe mir die logs angeschaut
Und 2 Seiten nur Membermap Aktualisierung, kann irgendwie nicht sein oder???
Onkel_Tom
26.01.2005, 14:50
Nee, eigentlich nicht !
Habe bei mir den Log abgeschalten aber als ich das Script getestet habe hat er mir jeweils einen Eintrag im Log generiert.
Hallo zusammen,
wie kann ich denn die farbe der eintragspunkte auf der Karte verändern ?
zZ. sind die ja schwarz, ich hätte sie lieber in Blau
Sparkiller
27.01.2005, 14:03
http://forum.tweakpc.de/membermap.php?
Freu !!! :D
Ich sehe gerade, bei Dir werden die Punkte größer dargestellt, wenn dort mehr Mitglieder wohnen. Hast Du das selber eingebaut, oder ist das eine neuere Version hier aus dem Topic?!
(Als Vergleich meine Karte:
http://www.projektstarwars.de/forum/membermap.php )
@Nergo: Ich hatte das damals, glaube ich, in der overlib.js eingestellt. Zeile 38, wenn ich mich recht erinnere.
Gibt es hier irgendwo eine Stelle, wo ich den Maphack herunter laden kann, ohne mich erst durch die 28 Seiten kämpfen zu müssen?
Ich meine also eine Version, wo alle hier angesprochenen Bugs schon behoben sind, oder muß ich von der ersten Seite downloaden und alle hier angesprochen Fehler per Hand beseitigen?
Gruß Retti
Mach das hier aus dem Beitrag:
http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339
Das ist meines wissens nach die Aktuellste Anleitung!
herzlichsten Dank meinerseits :D
mal ne ganze blöde frage geht das auch auf normalen webspace? habe leider keinen eigenen server?
Ja, solange PHP und MySQL hast geht das :)
http://www.vbulletin-germany.com/fo...6&postcount=339
Mach das dann so, wie da beschrieben.... musst auch nich alles aus dem ersten Post nehmen... siehste dann schon!
Bisher habe ich ja alles in den Griff bekommen, aber an dieser Stelle scheitere ich, weil ich es nicht finde:
Modify: Overwrite Class-Function getImageMap() with the following...
In welcher Datei steht denn das?
Gruß Retti
Ähm....
Ich meine, dass musst du nicht machen!
Wenn du die daten in der SQL hast, dann lad einfach mal die Daten von Creasure hoch...
Was muß ich nicht machen?
Die ganzen Dateimods...
Lad die Dinger in die Datenbank (aus KarateKids erstem Post...)
Und dann halt das, was Creasure geschrieben hat..
So, ich habe jetzt alles soweit durch, bekomme aber noch eine Fehlermeldung
Fatal error: Undefined class name 'db' in /home/www/doc/11280/happypainting.de/www/includes/sources/DB.php on line 87
und da steht das drinnen
$this->db = DB::connect($dsn);
kannst Du mir nochmal helfen. auf den 28 Seiten habe ich dazu nichts gefunden :confused:
Was hast du denn nun genau gemacht?
musste vielleicht doch alles ändern...
Ja, solange PHP und MySQL hast geht das :)
http://www.vbulletin-germany.com/fo...6&postcount=339
Mach das dann so, wie da beschrieben.... musst auch nich alles aus dem ersten Post nehmen... siehste dann schon!
hmm der link geht net :(
Sorry, der geht aber:
http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339
gute Frage,
Ich habe alles aus der complete-install.txt abgearbeitet.
Und jetzt bekomme ich diese Fehlermeldung.
Ich nehme an, dass ich einen Fehler beim Erstellen des String in der membermap.php zur Dns habe. Ich habe das so geschrieben:
define(DSN,'mysql://username:passwort@sql11.c.artfiles.de/datenbankname ');
dabei habe ich natürlich username,passwort und datenbankname von mir genommen.
In der Datenbank sind die Tabellen auch vorhanden.
Stell das wieder zurück, wie es vorher war, dann sollte es gehen! :)
ich sollte es wohl aufgeben :(
ich habe es wieder so wie es war
define(DSN,'mysql://username:password@servername/databasename');
hergestellt.
Es kommt aber wieder diese Fehlermeldung
Fatal error: Undefined class name 'db' in /home/www/doc/11280/happypainting.de/www/includes/sources/DB.php on line 87
und in dieser Zeile steht das
$this->db = DB::connect($dsn);
Ich weiss jetzt nicht mehr was ich machen soll, bin wohl doch zu blöd dazu
Gruß Retti
Cheertobi
06.02.2005, 22:22
@Retti,
bist Du sicher, dass Du die Version aus diesem Post: http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339 installiert hast?
Der sollte dich doch eigentlich alles Daten aus der global.php usw. holen, da musst Du die Daten für die Datenbank nicht nochmal angeben.
Das einzige was Du machen musst, ist nachher aus membermap.php ein paar Zeilen ins Template zu verschieben. Danach hat das bei mir wunderbar geklappt!
Tobias
@Retti,
bist Du sicher, dass Du die Version aus diesem Post: http://www.vbulletin-germany.com/forum/showpost.php?p=83406&postcount=339 installiert hast?
Der sollte dich doch eigentlich alles Daten aus der global.php usw. holen, da musst Du die Daten für die Datenbank nicht nochmal angeben.
Das einzige was Du machen musst, ist nachher aus membermap.php ein paar Zeilen ins Template zu verschieben. Danach hat das bei mir wunderbar geklappt!
Tobias
Ja hab ich gemacht. Zuvor hatte ich alles nochmal entfernt.
Jetzt mir die Map auch angezeigt :D
Zur Zeit habe ich das Problem, dass ich nicht alle Daten in die Datenbank bekomme. Die Datei ist wohl zu groß und ich bekommen ständig ein Timeout.
Muß morgen mit dem Provider reden, wie ich die Daten komplett in die Datenbank bekomme.
Gruß Retti
Geschafft. Dachte ich jedenfalls,
Ich habe alles erledigt und die Karte wird angezeigt. Leider aber nicht die Punkte für die Mitglieder. Die Karte ist leer. Irgendetwas muss ich vergessen haben :confused: Die Datenbank ist komplett vorhanden.
Bisher habe ich nur meine PLZ eingegeben. Die Member ziehen nach. Die PLZ ist in der Datenbank vorhanden, wird aber auf der Karte nicht angezeigt. (Berlin)
Hat jemand einen Tip?
Gruß Retti
Creasure
07.02.2005, 11:10
benutzt du die membermap.php von mir?
Dann musst du die mit einem Cronjob aktualisieren.
Achtung: Schreibrechte richtig gesetzt?
Nachtrag:
gerade gesehen ...
Fatal error: Cannot redeclare class pear in /*******/www/includes/PEAR.php on line 70
dann hast du nicht alles gemacht wie es in den 100 Anleitungen hier steht :(
wieso sucht der überhaupt in der includes .. kann es sein, dass Du die Modifikationen ein wenig zu sehr gemischt hast?
Was steht bei dir in Zeile 31 der membermap.php ?
ja, ich habe Deine membermap.php.
Cronjob habe ich nicht eingerichtet. Kannst Du mir sagen was ich im Admincp beim Einrichten genau wo eingeben muß? Was muß da bei Dateiname genau stehen?
Creasure
07.02.2005, 12:59
Nachtrag meines posts nicht gelesen? (dann einmal zurückblättern bitte ;) )
Hatte bereits einige einige vermutungen ... bitte erst darauf antworten ... denn crojob wird derzeit bei dir nicht gehen, da noch scheinbar einige fehler da sind ...
Ehrlich gesagt verstehe ich nur Bahnhof.
Ich bekomme keinerlei Fehlermeldungen mehr. Wenn ich die Membermap.php aufrufe, erscheint die Seite ordnungsgemäß. Es werden nur eben keine Punkte angezeigt. Gehe ich zur Mitgliedersuche über der Karten, funktionert auch alles problemlos. Es wird alles angezeigt.
In Zeile 31 der membermap.php steht folgendes:
<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
Den Cronjob habe ich eingerichtet und beim Starten wird angezeigt das er ornungsgemäß ausgeführt wurde. Auch da gibt es keine Fehlermeldungen.
Ich denke, dass ich alles nach Anleitung gemacht habe. Lediglich den Eintrag in der functions_online.php habe ich weggelassen. Und das kann doch nicht das Problem sein, oder irre ich da?
Wie gesagt, es fehlen mir nur die Punkte auf der Karte :eek:
und ich weiss nicht woran es liegt.
Gruß Retti
Mir schwirrt der Kopf :mad:
nun habe ich nochmals alles gemacht. Die Hinwiese von Karate Kid und die Install von hier
http://www.vbulletin-germany.com/fo...6&postcount=339
Ich habe Punkt für Punkt abgearbeitet.
Wenn ich die membermap.php aufrufe, wird die Karte aber ohne die einzelnen Punkte gezeigt und es kommt auch keine Fehlermeldung.
Hat denn wirklich keiner eine Idee?
Seht es Euch einfach mal an
http://www.happypainting.de/membermap.php
Du musst die Karte auch mit
/membermap.php?mm_action=c
Aufrufen, aber dann kommt bei mir, wenn ich das bei dir so mache folgendes:
Warning: main(/home/www/doc/11280/happypainting.de/www/map/includes/PEAR.php): failed to open stream: No such file or directory in /home/www/doc/11280/happypainting.de/www/map/geo/Geo.php on line 31
Fatal error: main(): Failed opening required '/home/www/doc/11280/happypainting.de/www/map/includes/PEAR.php' (include_path='.:/usr/local/lib/php') in /home/www/doc/11280/happypainting.de/www/map/geo/Geo.php on line 31
Also das steht bei mir in der Geo.php
http://www.happypainting.de/bilder/Geo
was ist daran falsch?
Nu helft mir doch mal bitte.
Wo kann ich ändern, das hier
Warning: main(/home/www/doc/XXXXX/happypainting.de/www/includes/PEAR.php):
statt includes pear steht. Ich suche und suche und finde es nicht :confused:
Creasure
08.02.2005, 17:13
dann steht es bei dir irgendwo bei Zeile 15 oder so .. schau mal nach dieser Zeile (in der membermap.php):
$mappath = "???????";
Was steht anstatt der ??????? bei dir ?
das steht da:
$mappath = "/home/www/doc/11280/happypainting.de/www/map"; // e
Creasure
08.02.2005, 17:51
in welchem Verzeichnis liegt dein PEAR Verzeichnis?
Creasure
08.02.2005, 18:03
schwer zu sagen was schief gegangen ist ... siehe PN
Dank Creasure wird die map nun richtig angezeigt und die Punkte sind auch richtig gesetzt. Einziges Problem ist nun noch, dass das Mousover nicht funktioniert. Wenn ich mit der Maus auf einen Punkt gehe, wird nur die Hand, aber keine Zuordnung angezeigt. Woran kann das liegen?
Für den Cronjob habe ich hier im Forum zwei Varianten gefunden:
1. aufruf : ./includes/cron/membermap_upd.php und
2. aufruf : ./includes/cron/membermap.php?mm_action=c
Bei 1. wird der Cron gestartet aber bei 2. bekomme ich eine Fehlermeldung
Warning: main(./includes/cron/membermap.php?mm_action=c): failed to open stream: No such file or directory in /home/www/doc/11280/happypainting.de/www/admincp/cronadmin.php on line 56
Fatal error: main(): Failed opening required './includes/cron/membermap.php?mm_action=c' (include_path='.:/usr/local/lib/php') in /home/www/doc/11280/happypainting.de/www/admincp/cronadmin.php on line 56
In Zeile 56 steht das: require_once($nextitem['filename']);
Weiter habe ich zwei Varianten des Aufrufes der Map gefunden:
1. forum.de/mempermap.php und
2. forum.de/membermap.php?mm_action=c
Unter 1 wird die map angezeigt, aber ohne funktionierenden Mousover und unter 2 wird eine leere Seite angezeigt.
Was ist nun richtig?
Cheertobi
09.02.2005, 13:05
Hi,
Einziges Problem ist nun noch, dass das Mousover nicht funktioniert. Wenn ich mit der Maus auf einen Punkt gehe, wird nur die Hand, aber keine Zuordnung angezeigt. Woran kann das liegen?
das steht hier im Thread, das Problem hatte schonmal jemand!
Lösch mal aus membermap.php folgende Zeilen:
?>
<html>
<head>
<title>Membermap für VB3</title>
<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
</head>
<body>
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<?php
Und im Template maphome sollte der Anfang so aussehen:
$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
$headinclude
<script type="text/javascript" src="http://www.pfadzudeinemforum.de/clientscript/overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
</head>
<body>
$header
$navbar
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<center>> <a href="memberlist.php?do=search">zur Mitgliedersuche</a></center>
Und aus dem KarateKit Paket noch die overlib.js ins clientscript Verzeichnis kopieren, die scheint in Creasures Paket zu fehlen?!
2. aufruf : ./includes/cron/membermap.php?mm_action=c
Mach da mal http://www.deinforum.de/membermap.php?mm_action=c draus, alles andere hat bei mir auch nicht geklappt. Und lern vielleicht mal Warnings zu lesen und nicht nur hier zu posten, die Antwort steht da eigentlich schon drin.
Tobias
Danke für Deine Antwort.
Das mit der Overlib wars. Steht bei creasure nicht drinn und deswegen hab ich es nicht gemacht :o
Die Map läuft aber bei mir mit dem Aufruf
http://www.happypainting.de/membermap.php
Mit Deiner Variante bekomme ich ein leere Seite.
Nochmals Danke
Gruß Retti
PS. Deinen Ansch...... versuche ich umzuse :o tzen
Cheertobi
09.02.2005, 13:34
Hi,
http://www.happypainting.de/membermap.php
Mit Deiner Variante bekomme ich ein leere Seite.
http://www.deinforum.de/membermap.php?mm_action=c ist ja auch scheinbar dafür da, die Karte zu aktualsieren, also würde ich das so dann auch in den Cronjob eintragen ;)
Tobias
ohne das ich jetzt fast 27 seiten durchlesen muss.. gibts nun eine version die auch shared webhoster das ermöglicht ohne meinen admin anzucallen ??
anzucallen ??
Was ist das denn für eine Sprache? :D
Creasure
22.02.2005, 09:30
ohne das ich jetzt fast 27 seiten durchlesen muss.. gibts nun eine version die auch shared webhoster das ermöglicht ohne meinen admin anzucallen ??
Ja, wenn du die 27 Seiten langsam durcharbeitest, dann wirst Du auch irgendwo lesen, dass es auf solchen Servern laufen sollte, ohne den admin zu belästigen. Allerdings wissen wir ja nicht wie der Server eingestellt ist, und was dein admin erlaubt ...
Viel Spass :)
Archimedes
24.02.2005, 17:00
Wie kann man eigentlich die Geodaten aktualisieren?
Archimedes
24.02.2005, 17:43
Ich hab das Cronscript von Onkel Tom etwas modifiziert.
Warum bekomme ich keine Fertig Nachricht wenn ich es manuell ausführe?
<?php
error_reporting(E_ALL & ~E_NOTICE);
if (!is_object($DB_site))
{
exit;
}
require_once('./global.php');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $vboptions['bburl'] . '/membermap.php?mm_action=c');
curl_setopt($ch, CURLOPT_MUTE, TRUE);
curl_exec($ch);
curl_close($ch);
log_cron_action('Membermap updated', $nextitem);
?>
Hi,
alos bei mir lüppt das Cron Script nicht, er fängt an, und legt dann irgendwann das Forum lahm, weil es kein ende findet.
Habe grad erst wieder 6 Seiten Logeinträge gelöscht.
Startzeit des Scriptes war 8 Uhr und als ich um 10:30 ins board gegangen bin, war es recht langsam.
Grund war der immer wiederkehrende cronjob des Mapscriptes.
patbrandy
04.03.2005, 11:52
Sorry, ich wollte hier im thread kein Alleinunterhalter werden aber mir kam gerade eine Idee...
ich möchte eigentlich feste Punkte in der Mitgliederkarte haben die z.B. die Großstädte in den jeweiligen Bundesländer kennzeichen bzw. den Namen der Stadt auf der Karte plazieren und einen andersfarbigen Punkt verwenden.
In der Datei Map.php werden die Ortschaften der Mitglieder generiert. Könnte man dort auch feste Punkte mit Namen, Postleitzahl etc. hinterlegen die dann auch auf der Karte ausgegeben werden ?
Nach dem Motto:
$fixpoint1 = "Stuttgart, PostleitzahlVonStuttgart,FarbeDesPunkts";
$fixpoint2 = "Frankfurt, PostleitzahlVonFrankfurt,FarbeDesPunkts";
usw.
Vielleicht hat jemand ne Idee wie man das umsetzen könnte...
Oder weiss zufällig jemand wo man die Punktfarbe der generierten Orte auf eine andere Farbe stellen kann (in meinem Falle auf Grün)?
Onkel_Tom
04.03.2005, 18:55
Jepp, jetzt habe ich auch ein Problem mit der Aktualisierung.
Da ich den Zugriff für Gäste in meiner Benutzerkarte durch die folgenden Zeilen unterbunden habe:
if (!($permissions['forumpermissions'] & CANVIEW))
{
print_no_permission();