Rolf B: javascript Werte nach HTML Formular

Beitrag lesen

Hallo Henrique Köhler,

Mein Verstand sagt: $name1 geht nicht verloren, ich müsste es auch im showMap abrufen können.

Vielleicht doch mit Formular?

Wenn Dein Verstand mal aufnehmen würde, was Du hier lesen kannst, dann würde er Dir sagen: Wenn $name1 in volksnav.php gesetzt wird, geht es in dem Moment verloren, wenn volksnav.php endet. Aufbewahren kannst Du es:

  1. In einer PHP Session. Dann muss showMap.html aber ein PHP Script sein, das die Session lesen kann.
  2. In der HTML Seite, die von volksnav.php ausgegeben wird. Hier gibt es unterschiedliche Möglichkeiten, weiter vorzugehen:
    1. PHP generiert Script, das die Treffer im localStorage unterbringt. In showMap.html ist JavaScript enthalten, das den localStorage ausliest und die Marker erzeugt.
    2. PHP generiert Script, das die Karte auf der von volksnav.php erzeugten HTML Ausgabe auf Knopfdruck einfügt.
    3. PHP generiert für den ShowMap-Link eine URL, die sämtliche Treffer als URL Parameter codiert. Das ist nicht trivial, dafür muss man sich eine Struktur überlegen. Der Link sähe dann bei 3 Treffern so aus: showMap.html?match=xxx&match=yyy&match=zzz. xxx, yyy und zzz sind codierte Treffer (Name und Ort). In showMap.html kannst Du mit dem folgenden Code alle Treffer als Array zurückbekommen. Aber das ist wirklich nicht trivial.
   let myUrl = new URL(location);
   let matches = myUrl.searchParams.getAll("match");

Geht alles. Variante 2.3 hätte den Vorteil, dass man eine URL hat, die man teilen kann und Treffer anzeigt. Ist aber mühsam zu bauen.

Ein Formular setzt voraus, dass serverseitig ein showMap.php läuft, nicht showMap.html. In dem Fall kämest Du damit weiter.

Rolf

--
sumpsi - posui - obstruxi