Waarden in database met 1 verhogen bij klikken op button

Status
Niet open voor verdere reacties.

Renee123

Gebruiker
Lid geworden
8 feb 2009
Berichten
65
Ik heb een database met daarin een aantal velden, waaronder 'Naam' en 'Aantal'. De gegevens van alle namen en bijbehorende aantallen worden weergegeven in een tabel op mijn website via deze code:

PHP:
<?php
include 'naam_aantal_ophalen.php';
?>

<table class="bottom">

<?php
while($row=mysql_fetch_array($result)){
echo "</td><td>";
echo $row['Naam'];
echo "</td><td>";
echo $row['Aantal'];
echo "</td></tr>";
}

echo "</table>";

?>

Nu wil ik in die tabel nog een derde kolom toevoegen met daarin een drukknop/button, zodat als iemand op de button achter een bepaalde naam klikt de waarde van 'Aantal' met 1 verhoogd wordt.

Dus:
1) Hoe krijg ik die buttons toegevoegd aan de tabel (mag gewoon standaard tekstje zijn met daaronder dus een link, daar klus ik later wel een mooie button voor :p)?
2) Hoe krijg ik het voor elkaar dat als ik op een bepaalde button/tekst met link klik, het aantal in diezelfde rij met 1 verhoogd wordt?
 
Je kunt een button toevoegen door een extra <td> op te nemen met een <form> erin met daarin een submit button en een hidden field met de naam van het veld dat je wil verhogen, of een linkje gebruiken naar een pagina waar je het ophoogt. Als je een form hebt moet je die met een action naar dezelfde pagina sturen, of een andere pagina als je dat praktischer vindt.

Op de andere pagina moet je uitlezen welke knop de gebruiker indrukte of welke link gekozen werd (je geeft de naam van het veld mee in $_GET of $_POST met de link/het formulier)
Nadat je weet welke knop het was, kun je een UPDATE query draaien die het gekozen veld ophoogt ->

PHP:
$query = "UPDATE tabel SET aantal = aantal + 1 WHERE naam = " . $rijnaam
 
juist... ik heb nu wel die extra kolom toegevoegd waarin de buttons komen te staan en daar een nieuwe .php pagina aangekoppeld. Zo dus:
PHP:
echo "<a href='verhoog_aantal.php'><img src='button.JPG'></a>";

Alleen kom ik er niet uit hoe ik dan dat verhoog_aantal.php moet opbouwen. Ik heb nu dit:
PHP:
<?php
include 'connect.php';

mysql_query("UPDATE tabel SET Aantal = 'Aantal + 1' WHERE Naam=XXX");

mysql_close($connectie)
?>

Hoe kan ik er voor zorgen dat de Naam in verhoog_aantal.php (bij WHERE) hetzelfde is als de naam die bij de button hoort waarop geklikt is?

Kan je dit oplossen door
PHP:
echo "<a href='verhoog_aantal.php?Naam=" . $row['Naam'] . "'><img src='button.JPG'></a>";
Dan zie je als je over de button gaat precies welke Naam er bij die rij hoort. Alleen kom ik er niet uit hoe je dat dan weer uit kan lezen en gebruiken in verhoog_aantal.php op de plek van de WHERE. Of linkt ie dan niet meer naar de verhoog_aantal.php, maar naar bijv. verhoog_aantal.php?Naam=Henk
 
Als je die URL gebruikt met ?Naam= dan kun je in PHP de naam uitlezen in de variabele $_GET['Naam']. Die kun je vervolgens in de WHERE plaatsen.

(En ja, hij linkt dan nog gewoon naar de file verhoog_aantal.php, want alles na de ? is niet van invloed op welke pagina aangeroepen wordt)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan