Kod
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPDATE mapa SET nazwa = 'Koniec trasy', lat = 51.110420, lng = 17.050781 WHERE i' at line 1
Na moje oko to coś jest nie tak w zapisz.php, powinno być tam chyba inaczej to poukladane, tak więc proszę o pomoc

Poniżej kod 3 plików: (nie potrzebny syf jak divy logo itd usunięty)
mapa.php
<?php Przesuń znaczniki, aby zaznaczyć najważniejsze punkty twojej trasy.<br><br> <style type="text/css" media="all">@import "/style/Przyklad.css"; @import "/style/Przyklad.css";</style> <!--skrypty--> <script src='http://maps.google.com/maps?file=api&v=2.x&key=ABQIAAAAIsZYZaR4DWCdfqmlS6OCQBRYgIOWu4nSQX1k4hvOTkMM53XgTxRxqqc13C-7DIyPETB6KFwKNloRag' type='text/javascript'></script> <style type="text/css"> #marker_edycja { margin: 0; padding: 5px; font-family: Tahoma; font-size: 11px; } #opis { width: 270px; color: #656565; } .wspolrzedna { width: 200px; color: #656565; } </style> </head> <body onload='mapaStart()' onunload='GUnload()'> <table style="border: 0 collapse;"> <tr> <td style="width: 490px;"> <div id='mapka' style='width: 480px; height: 480px; border: 1px solid black; background: gray;'></div> <script type='text/javascript'> <!-- var mapa; var aktywny = null; var markery = []; // funkcja do auktualniania aktywnego markera function uaktualnijMarker() { if(!aktywny) // jeżeli żaden marker nie jest aktywny, to nie robimy nic return; // nowe parametry, pobrane z formularza: var nowaLat = parseFloat(document.getElementById('lat').value); var nowaLng = parseFloat(document.getElementById('lng').value); var nowyPunkt = new GLatLng(nowaLat,nowaLng); var nowyOpis = document.getElementById('opis').value; // sprawdzamy, co się zmieniło if(!aktywny.getPoint().equals(nowyPunkt)) aktywny.setPoint(nowyPunkt); if(aktywny.txt!=nowyOpis) aktywny.txt = nowyOpis; // jeżeli było otwarte okno infoWindow, to otwieramy je ponownie, by uwzględnić wprowadzone zmiany if(!mapa.getInfoWindow().isHidden()) aktywny.openInfoWindowHtml(aktywny.txt); aktywny.zmiana = true; // marker był zmieniany, zapamiętujemy ten fakt, by wykonać odpowiednie zapytanie uaktualniające bazę } // funkcja do wyboru aktywnego markera function ustawAktywnyMarker(marker) { if(marker) // jeżeli wybrano marker { aktywny = marker; // zapamiętujemy odwołanie // uaktualniamy pola w formularzu danymi markera document.getElementById('marker_edycja').style.display = 'block'; document.getElementById('lat').value = marker.getPoint().lat(); document.getElementById('lng').value = marker.getPoint().lng(); document.getElementById('opis').value = marker.txt; } else { aktywny = null; document.getElementById('marker_edycja').style.display = 'none'; } } function mapaStart() { if(GBrowserIsCompatible()) { mapa = new GMap2(document.getElementById('mapka'),{mapTypes: [G_NORMAL_MAP]}); mapa.addControl(new GLargeMapControl()); mapa.addControl(new GOverviewMapControl()); mapa.addControl(new GScaleControl()); mapa.setCenter(new GLatLng(52.281601868071434,18.91845703125),6); wczytajMarkery(); } } function dodajMarker(lat,lon,ikona_url,nazwa,id) { var ikona = new GIcon(); ikona.image = ikona_url; ikona.iconSize = new GSize(20, 34); ikona.iconAnchor = new GPoint(9, 33); ikona.shadow = ""; ikona.infoWindowAnchor = new GPoint(15,12); var marker = new GMarker(new GLatLng(lat,lon),{icon: ikona,draggable:true}); marker.txt = nazwa; marker.id = id; marker.zmiana = false; mapa.addOverlay(marker); GEvent.addListener(marker,"click",function() { marker.openInfoWindowHtml(marker.txt); ustawAktywnyMarker(marker); }); GEvent.addListener(marker,'dragstart',function() { ustawAktywnyMarker(marker); marker.closeInfoWindow(); }); GEvent.addListener(marker,'drag',function() { document.getElementById('lat').value = marker.getPoint().lat(); document.getElementById('lng').value = marker.getPoint().lng(); marker.zmiana = true; // marker był zmieniany, zapamiętujemy ten fakt, by wykonać odpowiednie zapytanie uaktualniające bazę }); markery.push(marker); return marker; } function wczytajMarkery() { GDownloadUrl('wczytaj.php', function(dane,kodOdpowiedzi) { if(kodOdpowiedzi==200) { var xml = GXml.parse(dane); var markery = xml.documentElement.getElementsByTagName("marker"); for(var i=0; i<markery.length; i++) { var id = parseInt(markery[i].getAttribute("id")); var lat = parseFloat(markery[i].getAttribute("lat")); var lon = parseFloat(markery[i].getAttribute("lon")); var ikona_url = markery[i].getAttribute("ikona"); var nazwa = markery[i].getAttribute("nazwa"); var marker = dodajMarker(lat,lon,ikona_url,nazwa,id); } } else { alert('Nie mogłem otworzyć pliku dane.php'); } }); } function zapiszMarkery() { var t = ''; for(var i=0; i<markery.length; i++) { if(markery[i].zmiana == true) { if(t.length!=0) t+='@@'; // znak oddzielenia markerów // zakładamy, że parametry markera oddzielone są separatorem | t+=markery[i].id+'|'+markery[i].txt.replace("|",' ')+'|'+markery[i].getPoint().lat()+'|'+markery[i].getPoint().lng(); } } GDownloadUrl('zapisz.php?dane='+t,function(dane,kodOdpowiedzi) { GLog.writeHtml(dane); },true); } --> </script> </td> <td style="width: 300px; border: 1px solid black; overflow: auto;"> <form id="marker_edycja" style="display: none;" onsubmit="alert('zapisano!'); return false;"> <p><input onkeyup="uaktualnijMarker()" id="lat" type="text" class="wspolrzedna" value="" /><br />długość geograficzna</p> <p><input onkeyup="uaktualnijMarker()" id="lng" type="text" class="wspolrzedna" value="" /><br />szerokość geograficzna</p> <p><textarea onkeyup="uaktualnijMarker()" id="opis" rows="9"></textarea><br />opis markera</p> </form> </td> </tr> </table> <a href="#" onclick="zapiszMarkery(); return false;">uaktualnij markery w bazie</a> ?>
wczytaj.php
<? include "conn.php"; $zapytanie = "SELECT id,nazwa,lat,lng,flaga FROM mapa ORDER BY id"; $i=0; { $i++; printf("\t<marker id=\"%d\" lat=\"%f\" lon=\"%f\" ikona=\"%s\" nazwa=\"%s\" />\n",$dane['id'],$dane['lat'],$dane['lng'],$dane['flaga'],$dane['nazwa']); } ?>
zapisz.php
<? include "conn.php"; $dane = $_GET['dane']; if(!$dane) exit; $zapytanie = "UPDATE mapa SET nazwa = '%s', lat = %f, lng = %f WHERE id = %d; "; $query = ''; for($i=0; $i<count($markery); $i++) { $id = (int) $dane_markera[0]; $lat = (float) $dane_markera[2]; $lng = (float) $dane_markera[3]; } ?>