Ben bu yolu gidiş eneded:
HTML kodu
<script type="text/javascript">
$(document).ready(function() {
$("#save").click(function(e) { openDialog() } );
});
</script>
<button id="save" >Send for processing.</button>
Javascript kodu:
function openDialog() {
$("#addEditDialog").dialog("destroy");
$("#Name").val('');
$("#addEditDialog").dialog({
modal: true,
width: 600,
zIndex: 3999,
resizable: false,
buttons: {
"Done": function () {
var XMLname = $("#Name").val();
var XML = dumpXMLDocument(XMLname,geomInfo);
var filename = new Date().getTime();
$.get('sendTo.php?' + filename,{'XML':XML}, function() {
addListItem(XMLname, filename + ".XML");
});
$(this).dialog('close');
},
"Cancel": function () {
$("#Name").val('');
$(this).dialog('close');
//var XMLname = null;
}
}
});
}
PHP kodu, sadece bir dizine dışarı dosyayı yazmaya karar verdim. Ben javascript dosya oluşturulan ve PHP geçti bu yana, dosya olduğunu ve nerede olduğunu biliyordu, bu yüzden dosyasına bir bağlantı ile bir yan panel nüfuslu.
<?php
if(count($_GET)>0)
{
$keys = array_keys($_GET);
// first parameter is a timestamp so good enough for filename
$XMLFile = "./data/" . $keys[0] . ".kml";
echo $XMLFile;
$fh = fopen($XMLFile, 'w');
$XML = html_entity_decode($_GET["XML"]);
$XML = str_replace( '\"', '"', $XML );
fwrite($fh, $XML);
fclose($fh);
}
//echo "{'success':true}";
echo "XMLFile: ".$XMLFile;
?>
Nedenini bilmiyorum, ama benim php dosyasına XML göndermek zaman içeriğini withs tüm qoutes ve çift tırnak üzerinde kiralamada kaçış yazdı. Yani düzgün bir xml dosyasını biçimlendirmek için bir str_replace yapmak zorunda. Bu durumda neden herkes biliyor musun?