Hoi,
Ik ben hier al eerder mee bezig geweest, maar het is niet gelukt om dat aan de praat te krijgen.
Na verder zoeken op internet kwam ik dit script tegen die zou moeten doen wat ik nodig heb, maar het werkt niet.

Wat ik dus wil is de waarde van het listmenu wijzigen in de database zonder dat de pagina opnieuw geladen wordt.

Wie wil me helpen om dit werkend te krijgen, ik zou er erg mee geholpen zijn.


<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>

    <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script type="text/javascript">

        $(document).ready(function() {
            
			var selectValue = $('#selectBoxID').val();

            // post to php script
            $.ajax({
                type: 'POST',
                url: 'insertdetailed.php',
                data: { selectValueBox: selectValue }
            });
        });

    </script>
</head>
<body>
	<form id="update_db" name="update_db" method="post">
    	<select id="selectBoxID" onselect="saveToDatabase()">
       		<option value="1">Value 1</option>
       		<option value="2">Value 2</option>
    	</select>
		<input type="hidden" name="id" id="1">
	</form>
</body>
</html>



<?php
if(isset($_POST['selectValueBox'])){

$connectie = new mysqli("localhost", "xxxxxx", "xxxxxx", "xxxxxx");

// update de score
$sql_update = "UPDATE obs_scores SET score = '".$_POST['selectValueBox']."' WHERE id= '".$_POST['id']."'";

if (mysqli_query($connectie, $sql_update)) {
echo 'SUCCESS';
print $sql_update;
} else {
echo 'FAILED';
print $sql_update;
}
}
?>
- Ariën -
Ja ik denk het wel want in de network-tab staan alleen de jquery.min.js en de menu.php
Als ik bijvoorbeeld value2 kies gebeurt er niets en komt er ook niet bij in de network-tab te staan.
Dan wordt je ajax-request niet uitgevoerd.

<?HTML bovenin klopt trouwens ook niet echt.
Tenzij je het voor de mark-up hier in het forum bedoelt, want dan hebben we de [code] en [/code]-tags die je voor code-blokken kan gebruiken.

Zo te zien moet je de OnReady function gebruiken om je jQuery-script:
https://learn.jquery.com/using-jquery-core/document-ready/


$(document).ready(function() {
    // doe iets!
});
- Ariën -

Ik heb de begincode even aangepast, die was inderdaad voor de mark-up bedoelt.
Ik heb de de code van de files geupdate naar wat ik nu heb.

Kun je me exact uitleggen wat ik nu moet aanpassen zodat het werkt want mijn javascript en jquery reikt niet zover dat ik het kan aanpassen.
Lijn 11 t/m 18 even in die ready functie zetten, daar waar het commentaar staat.
Met andere woorden: Dus verpakken in die ready-functie.
- Ariën -

Nu staat inderdaad de insertdetailed.php erbij, maar bij een selectwissel nog steeds geen uitvoer.
Adoptive Solution

Klopt, maar dat was een ander script die niet wilde werken.

Hoe kan ik dan de id value meesturen met een vaiabele value?
Je moet even gaan listenen op een change event ook.

       
$(document).ready(function() {
    $('#selectBoxID').change(function() {
        const selectValue = $(this).val();

        // post to php script
        $.post('insertdetailed.php', { selectValueBox: selectValue });
    });
});
Jelle DNW

Dat werkt inderdaad.
Heb je ook nog een oplossing om de id mee te sturen?

Reageren