>skal der fx så ligge en fil bagved, Excel eller noget?
jeg vil forslå du ligger det ind i en database.
jeg har downloadet
postnummerfil (xls) fra postnord se link i #2, og lagt den i en tabel, og tilføjet et felt mere der hedder
pris, og fjernet ca 1450 postnummer for eks skyld
kig på nedenstående code, og lad dig inspirere
test tabel
CREATE TABLE `tbl_postnummer` (
`postnr` varchar(4) DEFAULT NULL,
`bynavn` varchar(25) DEFAULT NULL,
`gade` varchar(33) DEFAULT NULL,
`firma` varchar(58) DEFAULT NULL,
`provins` varchar(6) DEFAULT NULL,
`land` int(1) DEFAULT NULL,
`pris` int(11) NOT NULL COMMENT 'angives i øre, alternativt brug decimal format'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tbl_postnummer` (`postnr`, `bynavn`, `gade`, `firma`, `provins`, `land`, `pris`) VALUES
('0800', 'Høje Taastrup', 'Girostrøget 1', 'BG-Bank A/S', 'True', 1, 20000),
('0877', 'København C', 'Havneholmen 33', 'Aller Press (konkurrencer)', 'False', 1, 15000),
('1001', 'København K', 'Postboks', NULL, 'False', 1, 17000),
('1002', 'København K', 'Postboks', NULL, 'False', 1, 0),
('970', 'Sumba', NULL, NULL, 'False', 3, 0);
request.php
<?php
function GetCityName($conn, $id){
$row = array("bynavn"=>"unknown", "pris"=>"kan ikke beregnes", "status" => 0 ) ;
$sql = "select * from tbl_postnummer where postnr = $id and land = 1";
$rs = $conn->query($sql);
if( $rs->num_rows>0){
$row = $rs->fetch_assoc();
$row['status']=1;
$rs->free();
}
return $row;
}
$conn = new mysqli("localhost", "root", "", "test");
if (!$conn) {
echo 'Der opstod en fejl.';
exit();
}
$conn->set_charset("utf8");
$id = $_GET['id'];
header("Content-type: text/html; charset=utf-8");
echo json_encode(GetCityName($conn, $id));
?>
html fil
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="
https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<script type="text/javascript">
$( document ).ready(function() {
function GetAjaxData(Val, OutputId){
var url = "request.php";
var params = "id=" + Val;
$.ajax({
type: "GET",
url: url,
data: params
}).done(function (msg) {
var ar = jQuery.parseJSON(msg);
if(ar['status']==1){
ar['pris']=ar['pris']/100;
}
txt = ar['bynavn'] + " koster " + ar['pris'];
$('#'+OutputId).html(txt);
});
}
$('#postnumber').blur(function() {
GetAjaxData(this.value, 'box2');
});
});
</script>
</head>
<body>
<form name="form1" action="#">
<span id="box1">
<input id = "postnumber" type="text">
</span>
</form>
<span id="box2">
<!-- place holder ajax data kommer her -->
</span>
</body>
</html>