drop-downlijst direct opslaan
Pagina: « vorige 1 2 3 volgende »
Het is geen gevoelige informatie, maar de link deel ik niet graag in het openbaar.
Gewijzigd op 10/10/2023 23:04:57 door - Ariën -
Wat is een testcase link? Is dat wat ik je eigenlijk al wilde geven?
Hoe kan ik testen of dat ajax iets doet?
Om te testen of AJAX iets doet, is gebruik te maken van de netwerk-tab van de browser. Als je AJAX-request wordt uitgevoerd, dan zie je die URL daar verschijnen, met een tabblad met daarin wat de request is, en wat je als response terug krijgt van je AJAX-script.
Zo ziet als voorbeeld de AJAX-request van mijn eigen site eruit die elke 30 seconden de actuele vertrekdata van de treinen ophaalt.
station_departures.php wordt opgevraagd, en de uitvoer is uiteindelijk een lap HTML met daarin de actuele vertrektijden. Dit komt uit de debugtool van Firefox. Met Edge heb ik geen ervaring maar het zal niet veel afwijken, vermoed ik.
Gewijzigd op 10/10/2023 23:32:55 door - Ariën -
https://geschenkenlaantje.nl/necessary_packaging.php
Ik was ondertussen ook doorgegaan met zoeken op internet, maar nog geen resultaat.
De bedoeling is dat als ik de keuze heb gemaakt, dat er een SQL UPDATE gedaan wordt, zodat als ik de pagina refresh, Ik de ingevulde wardes nog steeds zie.
AJAX heeft niks te maken met het handmatig verversen van je site. Maar als een UPDATE query uitvoert, dan is dat het enige wat je moet doen. En natuurlijk enige foutafhandeling.
Dus ik wil dat het direct gebeurt als de keuze is gemaakt.
Maar voor vanavond is het even genoeg geweest. Ik ga mijn bed maar eens opzoeken.
Fijne avond
Gewijzigd op 11/10/2023 00:09:02 door Frits van Leeuwen
Dan moet je zorgen dat je direct een UPDATE-query uitvoert in dat script.
Vervangt dat dan deze code?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
if(isset($_POST['verpakkingen'])){
$id = $_POST['id'];
$id_packing_choosen=$_POST['verpakkingen'];
$query_update_necessary_packaging = "UPDATE prstshp_collect_productstype_packing SET id_packing='$value' WHERE id = '$id';";
// Voer de query uit
$result_update_necessary_packaging = mysqli_query($con, $query_update_necessary_packaging);
$id = "";
$value = "";
$query_update_necessary_packaging = "";
}
$id = $_POST['id'];
$id_packing_choosen=$_POST['verpakkingen'];
$query_update_necessary_packaging = "UPDATE prstshp_collect_productstype_packing SET id_packing='$value' WHERE id = '$id';";
// Voer de query uit
$result_update_necessary_packaging = mysqli_query($con, $query_update_necessary_packaging);
$id = "";
$value = "";
$query_update_necessary_packaging = "";
}
Gewijzigd op 11/10/2023 13:58:29 door - Ariën -
Ik kwam er achter dat hij alleen het ajax deel doorloopt als ik in de eerste regel van de html-tabel de drop-down wijzig.
Bij iedere andere regel doet hij niets met het ajax deel.
En dan gebruik je ook dit:
$('.selectbox') in plaats van een #
Gewijzigd op 11/10/2023 14:43:11 door - Ariën -
Heb je een voorbeeld? Want je gebruikt nu termen bij elkaar, waardoor ik het niet meer volg.
Lijn 2: $('.verpakkingen').change(function() {
Anders is een basis-tutorial jQuery misschien handig om even door te lezen.
Gewijzigd op 11/10/2023 21:44:09 door - Ariën -
Met de volgende code krijg ik een waarde in de alert, (dat wil ik nu voor de test)
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<script>
$(document).ready(function() {
$('#verpakkingen').change(function() {
var selectedValue = $(this).val();
alert(selectedValue);
});
});
</script>
$(document).ready(function() {
$('#verpakkingen').change(function() {
var selectedValue = $(this).val();
alert(selectedValue);
});
});
</script>
Dit zou hij bij alle regels van de HTML tabel moeten doen. Maar hij doet het alleen bij de bovenste regel. Ergens moet er dus nog iets anders fout zitten.
Kijk eens goed naar mijn vorige post. ;-)
CLASS kan wel vaker voorkomen (.verpakkingen)
Bedankt voor de uitleg.
- Ariën -,
Ik had jouw suggestie gezien, maar het werkte niet. Nu met de uitleg van Ivo P begrijp ik er weer meer van.
Als ik het goed begrijp moet ik in de regel van <SELECT> de id="verpakkingen" weglaten en daar class="verpakkingen" van maken. (en natuurlijk de suggestie van - Ariën -)
En nu ik dit heb geprobeerd, krijg ik per regel de gevraagde waarde. Nu ga ik verder experimenteren om de MYSQLi UPDATE opdracht er in te krijgen.
Gewijzigd op 12/10/2023 10:22:52 door Frits van Leeuwen