alles gaat goed en als ik op de verwijderknop druk dan wordt een bericht verwijderd alleen steeds de bovenste in de lijst. het script geeft ook alleen hetzelfde id terug voor elke rij terwijl deze uniek moet zijn.
wat ik dus zou willen is dat ik de berichten kan verwijderen aan de hand van het ($row['UNIQ']) uit de database.
heeft iemand een tip en/of idee hoe ik dit kan oplossen ??
mysqli_query ($con,"UPDATE berichten SET status = 'Verwijdert' WHERE UNIQ = '$uniq' ") or die ('De dienst is tijdelijk niet beschikbaar. Probeer het later nog eens');
mysqli_query ($con,"UPDATE berichten SET gelezen = '0' WHERE UNIQ = '$uniq' ") or die ('De dienst is tijdelijk niet beschikbaar. Probeer het later nog eens');
echo"<center>Het bericht is succesvol verwijdert.";
Waarom heb je regel 5 nodig? Je kan prima in je query's je $_POST['id'] gebruiken.
Let er dan wel op dat je [php]mysqli_real_escape_string[/php] gebruikt om SQL-injection te voorkomen.
Verder mist er een goede foutafhandeling. Dus je weet nooit welke querie de boosdoener kan zijn, als je een foutmelding krijgt. Je zou dit kunnen loggen in een speciaal bestand.
klopt dat is ook het probleem zeg maar. in de database is het wel uniek maar als ik het verwijder niet.
als de functie aanroep en het ID in een alert(''); zet geeft hij voor elk bericht hetzelfde ID terug. dit zou niet zo moeten zijn natuurlijk.
Toevoeging op 20/12/2015 16:43:02:
klopt dat is ook het probleem zeg maar. in de database is het wel uniek maar als ik het verwijder niet.
als de functie aanroep en het ID in een alert(''); zet geeft hij voor elk bericht hetzelfde ID terug. dit zou niet zo moeten zijn natuurlijk.
Toevoeging op 20/12/2015 16:47:23:
alles werkt wel alleen het id: <input type='hidden' id ='deleteRow' value='".($row['UNIQ'])."'> die ik aan de verwijderknop koppel is niet uniek. in de database is hij wel uniek.
maar wat er gebeurt is dat hij bijvoorbeeld dit id: 5676b5719f9bb (uit de database) nu aan iedere knop hangt.
dus als ik dan in het midden van de lijst een bericht wil verwijderen verwijdert hij alleen maar de bovenste uit de lijst.
Daarnaast zou jQuery "unobtrusive" moeten zijn, dus ik snap ook niet helemaal waarom je enerzijds werkt met jQuery en anderzijds met onclick (events). Je zou dynamisch aan elementen click-events kunnen koppelen die trouwens afgevangen zouden moeten worden met preventDefault(). Gebruik bijvoorbeeld een data-attribuut met als waarde het id, aan de hand vand het geklikte element kun je makkelijk herleiden wat het bijbehorende id is.
Quotes in je (de topicstarter zijn) code zijn rommelig. Ook lijk je deze forumfunctionaliteit nog niet helemaal door te hebben? Besteed s.v.p. wat aandacht aan je code en je berichten/reacties, dan kun je van ons hetzelfde verwachten in onze reacties.
Een return false na een AJAX-call snijdt ook geen hout omdat dit een asynchrone aanroep is. Dat wil zeggen dat JavaScript de AJAX-call uitvoert maar niet wacht op het resultaat. De uitvoer van de code "gaat gewoon verder".
Ook hoeft dit niet middels een formulier en ook niet via POST, dit kan via een hyperlink en GET.
Tot slot heb je waarschijnlijk (nogmaals, ten overvloede) slechts een deel van je broncode / HTML-output geplaatst. Hoe moeten wij dan komen tot een fatsoenlijke analyse?