Rumah pangkalan data tutorial mysql Bagaimana untuk melaksanakan fungsi penanda peta mudah menggunakan MySQL dan JavaScript

Bagaimana untuk melaksanakan fungsi penanda peta mudah menggunakan MySQL dan JavaScript

Sep 22, 2023 am 08:10 AM
mysql javascript penanda peta

Bagaimana untuk melaksanakan fungsi penanda peta mudah menggunakan MySQL dan JavaScript

Cara menggunakan MySQL dan JavaScript untuk melaksanakan fungsi penandaan peta mudah

Fungsi penandaan peta sangat biasa dalam aplikasi web moden, ia boleh Digunakan untuk menandakan lokasi tertentu, memaparkan maklumat lokasi atau memaparkan data geografi, dsb. Dalam artikel ini, kami akan membincangkan cara menulis fungsi penanda peta mudah menggunakan pangkalan data MySQL dan JavaScript, dan menyediakan contoh kod khusus.

1. Persediaan
Sebelum kita mula, kita perlu menyediakan beberapa persekitaran dan alatan asas:

  1. Pangkalan data MySQL: digunakan untuk menyimpan peta Lokasi penanda maklumat.
  2. Beberapa alatan teknologi asas hadapan, seperti HTML, CSS dan JavaScript.
  3. Persekitaran pelayan asas, seperti Apache atau Nginx, digunakan untuk menjalankan kod kami.

2 Cipta pangkalan data dan jadual
Pertama, kita perlu mencipta jadual dalam pangkalan data MySQL untuk menyimpan maklumat lokasi penanda peta. Kita boleh menggunakan pernyataan SQL berikut untuk mencipta jadual bernama "penanda":

CREATE TABLE `markers` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(50) NOT NULL,
  `lat` FLOAT(10,6) NOT NULL,
  `lng` FLOAT(10,6) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
Salin selepas log masuk

Jadual ini mengandungi empat medan: id, nama, lat dan lng. Medan id ialah kunci utama yang ditambah secara automatik, medan nama digunakan untuk menyimpan nama teg, dan medan lat dan lng digunakan untuk menyimpan latitud dan longitud teg masing-masing.

3 Tulis kod bahagian hadapan
Seterusnya, kita boleh menulis kod HTML dan JavaScript bahagian hadapan untuk melaksanakan fungsi penandaan peta.

  1. Kod HTML
    Dalam kod HTML, kita memerlukan bekas peta untuk memaparkan peta dan menambah butang "Tambah Penanda" untuk menambah penanda baharu. Contohnya:
<div id="map"></div>

<button onclick="addMarker()">添加标记</button>
Salin selepas log masuk
  1. Kod JavaScript
    Dalam kod JavaScript, kita perlu menggunakan API peta untuk memuatkan peta dan melaksanakan fungsi menambah penanda. Di sini kami menggunakan API Peta Google untuk menunjukkan. Pertama, kita perlu menambah teg pada fail HTML yang mengandungi API Peta Google.
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap" async defer></script>
Salin selepas log masuk

Kemudian, dalam kod JavaScript, kita boleh menulis kod berikut:

// 初始化地图
function initMap() {
  // 创建地图对象
  var map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: 0, lng: 0},
    zoom: 2
  });
  
  // 加载标记
  loadMarkers(map);
}

// 加载标记
function loadMarkers(map) {
  // 发送异步请求获取标记数据
  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function() {
    if (xhr.readyState === 4 && xhr.status === 200) {
      // 解析并显示标记
      var markers = JSON.parse(xhr.responseText);
      for (var i = 0; i < markers.length; i++) {
        var marker = new google.maps.Marker({
          position: {lat: markers[i].lat, lng: markers[i].lng},
          map: map,
          title: markers[i].name
        });
      }
    }
  };
  xhr.open('GET', 'get_markers.php', true);
  xhr.send();
}

// 添加标记
function addMarker() {
  // 获取标记的名称、纬度和经度
  var name = prompt('请输入标记的名称:');
  var lat = parseFloat(prompt('请输入标记的纬度:'));
  var lng = parseFloat(prompt('请输入标记的经度:'));
  
  // 创建地图对象
  var map = new google.maps.Map(document.getElementById('map'));
  
  // 创建标记对象
  var marker = new google.maps.Marker({
    position: {lat: lat, lng: lng},
    map: map,
    title: name
  });
  
  // 将标记保存到数据库
  saveMarker(name, lat, lng);
}

// 保存标记
function saveMarker(name, lat, lng) {
  // 发送异步请求将标记保存到数据库
  var xhr = new XMLHttpRequest();
  xhr.open('POST', 'save_marker.php', true);
  xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
  xhr.send('name=' + name + '&lat=' + lat + '&lng=' + lng);
}
Salin selepas log masuk

Dalam kod di atas, kita mula-mula menggunakan fungsi initMap() untuk memulakan peta, dan panggil fungsi loadMarkers() untuk memuatkan penanda sedia ada. Fungsi loadMarkers() menghantar permintaan tak segerak ke pelayan, mendapatkan data penanda dan memaparkan penanda pada peta menggunakan API Peta Google.

Dalam fungsi addMarker(), kami menggunakan fungsi prompt() untuk mendapatkan nama penanda, latitud dan longitud yang dimasukkan oleh pengguna dan menggunakan API Peta Google untuk menambah penanda pada peta. Kemudian, panggil fungsi saveMarker() untuk menghantar permintaan tak segerak untuk menyimpan penanda ke pangkalan data.

4. Tulis kod sebelah pelayan
Akhir sekali, kita perlu menulis kod sebelah pelayan untuk mengendalikan permintaan pelanggan dan menyimpan data tag ke pangkalan data.

  1. Menyimpan Tag
    Kami boleh menggunakan PHP untuk menulis kod sebelah pelayan untuk menyimpan tag. Buat fail bernama "save_marker.php" dan tulis kod berikut:
<?php
// 获取标记的名称、纬度和经度
$name = $_POST['name'];
$lat = $_POST['lat'];
$lng = $_POST['lng'];

// 连接数据库
$mysqli = new mysqli('localhost', 'username', 'password', 'your_database_name');

// 插入数据到数据库
$query = "INSERT INTO markers (name, lat, lng) VALUES ('$name', '$lat', '$lng')";
$mysqli->query($query);

// 关闭数据库连接
$mysqli->close();
?>
Salin selepas log masuk
  1. Get Marker
    Begitu juga, kita boleh menggunakan PHP untuk menulis kod pelayan pada akhir untuk mendapatkan data tag. Buat fail bernama "get_markers.php" dan tulis kod berikut:
<?php
// 连接数据库
$mysqli = new mysqli('localhost', 'username', 'password', 'your_database_name');

// 查询数据库中的标记数据
$query = "SELECT * FROM markers";
$result = $mysqli->query($query);

// 构建标记数组
$markers = array();
while ($row = $result->fetch_assoc()) {
  $markers[] = $row;
}

// 返回标记数据
echo json_encode($markers);

// 关闭数据库连接
$mysqli->close();
?>
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menyambung ke pangkalan data MySQL, dan kemudian tulis "save_marker" masing-masing .php " dan "get_markers.php" untuk menyimpan penanda ke pangkalan data dan mendapatkan data penanda.

5 Ujian dijalankan
Selepas melengkapkan persediaan di atas, kami boleh menggunakan fail yang berkaitan ke pelayan dan mengakses fail HTML dalam pelayar untuk melihat halaman Fungsi penanda peta.

Anda boleh berjaya menambah penanda baharu pada peta dengan mengklik butang "Tambah Penanda" dan memasukkan nama, latitud dan longitud. Pada masa yang sama, data yang ditanda akan disimpan ke pangkalan data MySQL.

Ringkasan
Dalam artikel ini, kami memperkenalkan cara menulis fungsi penandaan peta mudah menggunakan pangkalan data MySQL dan JavaScript, dan memberikan contoh kod khusus. Melalui contoh ini, kita boleh belajar cara menggunakan MySQL untuk menyimpan data geografi, dan cara menggunakan JavaScript dan API Peta Google untuk melaksanakan fungsi penandaan peta. Saya harap ia akan membantu untuk membangunkan aplikasi berkaitan peta.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi penanda peta mudah menggunakan MySQL dan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Hubungan antara pengguna dan pangkalan data MySQL Hubungan antara pengguna dan pangkalan data MySQL Apr 08, 2025 pm 07:15 PM

Dalam pangkalan data MySQL, hubungan antara pengguna dan pangkalan data ditakrifkan oleh kebenaran dan jadual. Pengguna mempunyai nama pengguna dan kata laluan untuk mengakses pangkalan data. Kebenaran diberikan melalui perintah geran, sementara jadual dibuat oleh perintah membuat jadual. Untuk mewujudkan hubungan antara pengguna dan pangkalan data, anda perlu membuat pangkalan data, membuat pengguna, dan kemudian memberikan kebenaran.

MySQL: Kemudahan Pengurusan Data untuk Pemula MySQL: Kemudahan Pengurusan Data untuk Pemula Apr 09, 2025 am 12:07 AM

MySQL sesuai untuk pemula kerana mudah dipasang, kuat dan mudah untuk menguruskan data. 1. Pemasangan dan konfigurasi mudah, sesuai untuk pelbagai sistem operasi. 2. Menyokong operasi asas seperti membuat pangkalan data dan jadual, memasukkan, menanyakan, mengemas kini dan memadam data. 3. Menyediakan fungsi lanjutan seperti menyertai operasi dan subqueries. 4. Prestasi boleh ditingkatkan melalui pengindeksan, pengoptimuman pertanyaan dan pembahagian jadual. 5. Sokongan sokongan, pemulihan dan langkah keselamatan untuk memastikan keselamatan data dan konsistensi.

Bolehkah saya mengambil kata laluan pangkalan data di Navicat? Bolehkah saya mengambil kata laluan pangkalan data di Navicat? Apr 08, 2025 pm 09:51 PM

Navicat sendiri tidak menyimpan kata laluan pangkalan data, dan hanya boleh mengambil kata laluan yang disulitkan. Penyelesaian: 1. Periksa Pengurus Kata Laluan; 2. Semak fungsi "Ingat Kata Laluan" Navicat; 3. Tetapkan semula kata laluan pangkalan data; 4. Hubungi pentadbir pangkalan data.

Pengoptimuman pertanyaan di MySQL adalah penting untuk meningkatkan prestasi pangkalan data, terutama ketika berurusan dengan set data yang besar Pengoptimuman pertanyaan di MySQL adalah penting untuk meningkatkan prestasi pangkalan data, terutama ketika berurusan dengan set data yang besar Apr 08, 2025 pm 07:12 PM

1. Gunakan indeks yang betul untuk mempercepatkan pengambilan data dengan mengurangkan jumlah data yang diimbas memilih*frommployeesWherElast_name = 'Smith'; Jika anda melihat lajur jadual beberapa kali, buat indeks untuk lajur tersebut. Jika anda atau aplikasi anda memerlukan data dari pelbagai lajur mengikut kriteria, buat indeks komposit 2. Elakkan pilih * Hanya lajur yang diperlukan, jika anda memilih semua lajur yang tidak diingini, ini hanya akan memakan lebih banyak pelayan dan menyebabkan pelayan melambatkan pada masa yang tinggi atau kekerapan misalnya, jadual anda

Cara Membuat Premium Navicat Cara Membuat Premium Navicat Apr 09, 2025 am 07:09 AM

Buat pangkalan data menggunakan Navicat Premium: Sambungkan ke pelayan pangkalan data dan masukkan parameter sambungan. Klik kanan pada pelayan dan pilih Buat Pangkalan Data. Masukkan nama pangkalan data baru dan set aksara yang ditentukan dan pengumpulan. Sambung ke pangkalan data baru dan buat jadual dalam penyemak imbas objek. Klik kanan di atas meja dan pilih masukkan data untuk memasukkan data.

Cara Melihat MySQL Cara Melihat MySQL Apr 08, 2025 pm 07:21 PM

Lihat pangkalan data MySQL dengan arahan berikut: Sambungkan ke pelayan: MySQL -U Pengguna Nama -P Kata Laluan Run Show pangkalan data; Perintah untuk mendapatkan semua pangkalan data yang sedia ada Pilih pangkalan data: Gunakan nama pangkalan data; Lihat Jadual: Tunjukkan Jadual; Lihat Struktur Jadual: Huraikan nama jadual; Lihat data: pilih * dari nama jadual;

Bagaimana untuk melihat kata laluan pangkalan data di Navicat untuk MariaDB? Bagaimana untuk melihat kata laluan pangkalan data di Navicat untuk MariaDB? Apr 08, 2025 pm 09:18 PM

Navicat untuk MariaDB tidak dapat melihat kata laluan pangkalan data secara langsung kerana kata laluan disimpan dalam bentuk yang disulitkan. Untuk memastikan keselamatan pangkalan data, terdapat tiga cara untuk menetapkan semula kata laluan anda: Tetapkan semula kata laluan anda melalui Navicat dan tetapkan kata laluan yang kompleks. Lihat fail konfigurasi (tidak disyorkan, risiko tinggi). Gunakan alat baris perintah sistem (tidak disyorkan, anda perlu mahir dalam alat baris arahan).

Cara menyalin jadual di mysql Cara menyalin jadual di mysql Apr 08, 2025 pm 07:24 PM

Menyalin jadual di MySQL memerlukan membuat jadual baru, memasukkan data, menetapkan kunci asing, menyalin indeks, pencetus, prosedur tersimpan, dan fungsi. Langkah -langkah khusus termasuk: mewujudkan jadual baru dengan struktur yang sama. Masukkan data dari jadual asal ke dalam jadual baru. Tetapkan kekangan utama asing yang sama (jika jadual asal mempunyai satu). Buat indeks yang sama. Buat pencetus yang sama (jika jadual asal mempunyai satu). Buat prosedur atau fungsi yang disimpan yang sama (jika jadual asal digunakan).

See all articles