Hallo,
Ik heb volgende code en die werkt perfect.
Maar mijn probleem is dat de weergave gebeurd in een ID (<div id="gcCodeIdDiv"></div>)
Ik zou graag de omrekening hebben in een php variable $idcode.

Kan iemand hiermee helpen AUB ?

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>GC Code Converter</title>
  
  <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
<div id="gcCodeIdDiv"></div>
  <script>
  <?php
      
      $methode = "gcCode2Id";
      $code = "GCA84W5";
    ?> 

    var method = <?php echo json_encode($methode); ?>;
    var code = <?php echo json_encode($code); ?>;
 
    function convertGCCode(method, chars) {
      if (chars.length > 0) {
        var newDiv = '<b>Result:</b><br>';
      } else {
        $('#gcCodeIdDiv').html('');
		
        return;
      }

      var splitChars = chars.split(' ');

      for (var i = 0; i < splitChars.length; i++) {
        var input = splitChars[i];
        if (method == 'gcCode2Id') {
          input = input.substring(2);
          var srcAlphabet = '0123456789ABCDEFGHJKMNPQRTVWXYZ';
          var dstAlphabet = '0123456789';
        } else {
          var srcAlphabet = '0123456789';
          if (parseInt(input, 10) + 411120 < 476656) {
            var dstAlphabet = '0123456789ABCDEF';
          } else {
            var dstAlphabet = '0123456789ABCDEFGHJKMNPQRTVWXYZ';
            input = (parseInt(input, 10) + 411120).toString();
          }
        }

        var output = convertGC(input, srcAlphabet, dstAlphabet);

        if (method == 'gcCode2Id') {
          if (parseInt(output, 10) < 476656) {
            var srcAlphabet = '0123456789ABCDEF';
            output = convertGC(input, srcAlphabet, dstAlphabet);
          } else {
            output = (parseInt(output, 10) - 411120).toString();
          }
          if (output != 0) {
            newDiv += output + ' ';
          }
        } else {
          if (output != 0) {
            newDiv += 'GC' + output + ' ';
          }
        }
      }

      
      $('#gcCodeIdDiv').html(newDiv);
      
    }

    function convertGC(src, srcAlphabet, dstAlphabet) {
      var srcBase = srcAlphabet.length;
      var dstBase = dstAlphabet.length;
      var wet = src;
      var val = 0;
      var mlt = 1;

      while (wet.length > 0) {
        var digit = wet.charAt(wet.length - 1);
        var digVal = srcAlphabet.indexOf(digit);
        if (digVal > -1) {
          val += mlt * digVal;
          mlt *= srcBase;
        }
        wet = wet.substring(0, wet.length - 1);
      }

      wet = val;
      var ret = "";

      while (wet >= dstBase) {
        var digitVal = wet % dstBase;
        var digit = dstAlphabet.charAt(digitVal);
        ret = digit + ret;
        wet /= dstBase;
      }

      var digit = dstAlphabet.charAt(wet);
      ret = digit + ret;

      return ret;
    }
	convertGCCode(method, code);
</script>

</head>
</html>
Met welke reden wil je dit in PHP gebruiken?
om daarna mijn mysql bestand aan te vullen met $id_code.
ga er dan een lus van maken om mijn bestand af te lopen en de id_code in te vullen ...
Dan moet je de waarde met AJAX naar een PHP-script doorsturen.
$('#gcCodeIdDiv').html(newDiv); dit is de huidige waarde.
Hoe geef ik die dan door ? dat is mijn vraag aan specialisten.
Ariën,

Ik heb een klein stukje gemaakt met uw aanbeveling AJAX doorsturen, hieronder mijn code index.html(java) script en process_location.php waar het zou moeten gebeuren ???
Maar blijkbaar omdat er in het java script met een ID gewerkt wordt , worden de cords doorgegeven maar keert het terug naar de index, en dit zou niet mogen het zou in het php gedeelte moeten blijven.
Is er hier iemand die mij kan helpen hiermee ????

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Locatie weergeven</title>
</head>
<body>
    <h1>Uw huidige locatie</h1>
    <p id="location"></p>

    <script>
        
        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(showPosition);
        } else {
            document.getElementById("location").innerHTML = "Geolocatie wordt niet ondersteund door uw browser.";
        }

        
        function showPosition(position) {
            var latitude = position.coords.latitude;
            var longitude = position.coords.longitude;
            document.getElementById("location").innerHTML = "Latitude: " + latitude + "<br>Longitude: " + longitude;

           
            var xhr = new XMLHttpRequest();
            xhr.open("POST", "process_location.php", true);
            xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            xhr.send("latitude=" + latitude + "&longitude=" + longitude);
			
        }
    </script>
</body>
</html>

process_location.php

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);


file_put_contents('log.txt', date('Y-m-d H:i:s') . " - Script uitgevoerd\n", FILE_APPEND);


$latitude = $_POST['latitude'];
$longitude = $_POST['longitude'];


file_put_contents('log.txt', "Latitude: " . $latitude . ", Longitude: " . $longitude . "\n", FILE_APPEND);


echo "Ontvangen locatie: Latitude " . $latitude . ", Longitude " . $longitude;
exit();
?>


Het probleem is de echo wordt dus niet weergeven op scherm, de ID wel ???

Je doet wel een request, maar je doet niks met de output in xhr.responseText.


if (xhr.status >= 200 && xhr.status < 300) {
    // Toon de respons in de console of op een webpagina
    alert(xhr.responseText); // Output naar alert
    // Als je de output op een webpagina wilt tonen, kun je deze bijvoorbeeld in een HTML-element plaatsen met document.getElementById() en innerHTML gebruiken
    // document.getElementById('output').innerHTML = xhr.responseText; // Output naar een HTML-element met id "output"
  } else {
    // Als het verzoek niet succesvol was, toon dan een foutmelding
    alert('Het verzoek is mislukt met statuscode: ' + xhr.status);
  }


Bij AJAX problemen kan het ook geen kwaad om de AJAX-debugger van je browser eens ander te bekijken.
Arien,

Begrijp het niet goed , die java is ook mijn ding niet.
Begrijp niet als je in java verwijst naar een php , dat het dan terug keert naar java ???


[size=xsmall]Toevoeging op 28/12/2023 17:02:30:[/size]

zoals je ziet doe ik een log file en in die log file is alles juist, waarom blijft het dan niet in deze php
Dit heeft niks met Java te maken, maar met JavaScript.
Dat is totaal wat anders, en enkel de naam lijkt erop.

Als je mijn code toevoegt, dan moet je een alert zien met je response. Een console.log() kan ook, en die kan je dan in de debug-console van je browser terugvinden.

Reageren