Zoals de titel aangeeft werkt mijn SQL update via een formulier niet. Als ik dit formulier submit dan geef de db terug dat de gegevens succesvol zijn bijgewertkt. Als ik daarna het record oproep dan blijkt er niets te zijn aangepast. Wie schijnt voor mij het licht in deze donkere materie?
En gebruik eens " in plaats van ' in het vervolg. Waarom sluit je ook telkens de PHP-tags af om ze dan meteen weer te openen zonder er ook maar iets tussen te zetten?!
En gebruik eens " in plaats van ' in het vervolg. Waarom sluit je ook telkens de PHP-tags af om ze dan meteen weer te openen zonder er ook maar iets tussen te zetten?!
De php tag's worden afgesloten doordat ik wat geknipt en geplakt heb om de code wat overzichtelijker te maken. (de html ertussen uit)
Dank voor het plaatsen van de code op plaatscode.be. Zal ik in het vervolg doen
Voor de goede orde, het script werkt prima. Het ophalen van de data gaat goed, alleen het onderdeel update werkt dus nog niet naar behoren.
Je ontdenkt veel eerder (kleine) foutjes in je SQL
2; Voeg tijdens het ontwikkelen or die($sql) toe (uitgaand dat $sql de query bevat), plak deze in je PHPMyAdmin window, meestal krijg je hier iets meer informatie terug
mysql_query("UPDATE wishlist SET Cat_ID='$sudcat', Omschrijving='$sudoms', Merk='$sudmerk', Type='$sudtype', Prijs='$sudprijs' WHERE listID=$id") or die(mysql_error());
echo'Je gegevens zijn succesvol in de database bijgewerkt';
}
else
{
?>
Citaat:
Zet je SQLcode onder elkaar (Bijv:
[..code..]
Je ontdenkt veel eerder (kleine) foutjes in je SQL
2; Voeg tijdens het ontwikkelen or die($sql) toe (uitgaand dat $sql de query bevat), plak deze in je PHPMyAdmin window, meestal krijg je hier iets meer informatie terug
Mischien een rare vraag maar hoe doe ik dit?
Ik blijf me er over verbazen dat de update query succesvol teruggeeft maar dat er geen daadwerkelijke update plaats vind
Ik heb je script even bekeken en heb eerst wat algemene opmerkingen.
1. Je begint bovenaan je script netjes met <?php vervolgens gebruik je verder in het script: <?. Wees hier duidelijk in. Ik raad je aan overal <?php te gebruiken, waarschijnlijk wordt in php6 de short_open_tag eruit gehaald en zal je code niet meer werken. 2. Je opent en sluit je constant je php terwijl en verder niets tussen staat dat hoef je je php ook niet af te sluiten. 3. Je sluit je niet alle td's in je tabel. 4. Ik ga ervan uit dat je listID een type INT is. Als dat zo is, is het beter om je '' erom heen weg te halen, dit is voor mysql niet nodig en dit is ook sneller in je mysql.
Dan is het ook op zich niet heel gek dat die de nieuwe gegevens niet laat zien. Lees dit goed, en zie je fout.
1. Je haalt de gegevens op boven aan je pagina. 2. De gegevens worden geplaatst in $result 3. Je update je gegevens 4. Je laat de gegevens uit $result zien
Mocht je het niet kunnen vinden:
Update je record bovenaan je pagina en haal dan pas je gegevens op uit de database. Dan weet je zeker dat je de gegevens die je aanroept ook zijn geupdate.
Ik heb je code even aangepast, en het klopt dat ik op de selectQuery geen controle heb staan, geen zin meer in gehad. Ik heb het script verder niet getest dus kijk maar eens of die werkt.