Hallo,
Ik heb een script die eerst gegevens uit een tabel haalt. Die gegevens
worden in textboxen geplaatst omdat ik deze moet kunnen wijzigen. Na de
'submit' moeten deze gegevens via een update in de tabel bijgewerkt
worden.
Probleem is dat er echter nit wordt bijgewerkt.
Ik heb het vermoeden dat het aan dit stukje code ligt:
$sql = "UPDATE ngb_inschrijvingen SET
Datum_inschrijving = '$Datum_inschrijving[$i]',
Categorie = '$Categorie[$i]',
Groep = '$Groep[$i]',
Subgroep = '$Subgroep[$i]',
Uur = '$Uur[$i]'
WHERE Lidnr = '$Lidnr[$i]'
AND Datum_inschrijving = 'oude_datum[$i]'";
Die 'and' is er misschien 'teveel aan'?
Die oude_datum heb ik omdat de primary key in die tabel bestaat uit
enerzijds het lidnummer en de datum. Probleem is natuurlijk dat als ik
die datum wil updaten ik de 'oude' ook nog nodig heb, omdat hij anders de
wijzigingen in alle rijen met hetzelfde lidnummer zou gaan doorvoeren,
volgens mij.
De structuur van de tabel zit er als volgt uit:
CREATE TABLE `ngb_inschrijvingen` (
`Lidnr` varchar(5) NOT NULL default '',
`Categorie` char(2) NOT NULL default '',
`Datum_inschrijving` date NOT NULL default '0000-00-00',
`Betaald` char(1) NOT NULL default '',
`Printen` char(1) NOT NULL default '',
`Bedrag` double NOT NULL default '0',
`Badmuts` char(3) NOT NULL default '',
`Groep` tinyint(4) NOT NULL default '0',
`Subgroep` tinyint(2) NOT NULL default '0',
`Uur` char(2) NOT NULL default '',
`Aanwezig` tinyint(4) NOT NULL default '0',
`Afwezig` tinyint(4) NOT NULL default '0',
`Verontschuldigd` tinyint(4) NOT NULL default '0',
`Betaal_datum` date NOT NULL default '0000-00-00',
`Betaal_wijze` varchar(20) NOT NULL default '',
`Opmerkingen_van_lesgevers` mediumtext NOT NULL,
`Deleted` char(1) NOT NULL default 'N',
PRIMARY KEY (`Lidnr`,`Datum_inschrijving`)
) TYPE=MyISAM;
Hieronder het volledige script.
---------------------------------
<?php
if (isset($_POST['Wijzigen']))
{
?>
<table cellpadding="5" cellspacing="10">
<tr>
<td class="secure_vet">Lidnr</td>
<td class="secure_vet">Datum <br /> Inschrijving</td>
<td class="secure_vet">Categorie</td>
<td class="secure_vet">Groep</td>
<td class="secure_vet">Subgroep</td>
<td class="secure_vet">Uur</td>
</tr>
<?php
for($i = 0; $i < $atl; $i++)
{
$sql = "UPDATE ngb_inschrijvingen SET
Datum_inschrijving = '$Datum_inschrijving[$i]',
Categorie = '$Categorie[$i]',
Groep = '$Groep[$i]',
Subgroep = '$Subgroep[$i]',
Uur = '$Uur[$i]'
WHERE Lidnr = '$Lidnr[$i]'
AND Datum_inschrijving = 'oude_datum[$i]'";
mysql_query($sql);
?>
<tr>
<td class="secure"><?php print($Lidnr[$i]); ?></td>
<td class="secure"><?php print($Datum_inschrijving[$i]); ?></td>
<td class="secure"><?php print($Categorie[$i]); ?></td>
<td class="secure"><?php print($Groep[$i]); ?></td>
<td class="secure"><?php print($Subgroep[$i]); ?></td>
<td class="secure"><?php print($Uur[$i]); ?></td>
</tr>
<?php
} // End for
?>
</table>
<?php
print("wijzigingen doorgevoerd! <br /><br />");
print("<a href=\"$PHP_SELF\">Nog een wijziging doorvoeren bij de
persoonlijke inschrijvingen</a> <br /><br />");
print("<a href=\"inschrijvingen_view1.php\">Persoonlijke
inschrijvingen bekijken</a>");
}
else
{
$gebruiker = $gebruiker = $_SESSION['sUser'];
$sql = "SELECT * FROM ngb_inschrijvingen WHERE Lidnr = '$gebruiker'
AND Deleted = 'N'";
$resultaat = mysql_query($sql);
$aantal = mysql_num_rows($resultaat);
if (mysql_num_rows($resultaat) == 0)
{
print("<b>Geen gegevens over inschrijvingen aanwezig in de
database!</b>");
}
else
{
?>
<table cellpadding="5" cellspacing="10">
<form action="<?php $PHP_SELF ?>" method="post">
<input class="secure_form" type="submit" name="Wijzigen"
value="Wijzigingen opnemen in database">
<input type="hidden" name="atl" value="<?php print($aantal); ?>">
<tr>
<td class="secure_vet">Lidnr</td>
<td class="secure_vet">Datum <br /> Inschrijving</td>
<td class="secure_vet">Categorie</td>
<td class="secure_vet">Groep</td>
<td class="secure_vet">Subgroep</td>
<td class="secure_vet">Uur</td>
</tr>
<?php
$i = 0;
while ($Rij = mysql_fetch_array($resultaat))
{
?>
<tr>
<td class="secure"><input class="secure_form"
type="text" size="5" DISABLED name="<?php print("Lidnr[$i]"); ?>"
value="<?=$Rij['Lidnr']; ?>"></td>
<input class="secure_form" type="hidden" name="<?php
print("Lidnr[$i]"); ?>" value="<?=$Rij['Lidnr']; ?>">
<td class="secure"><input class="secure_form"
type="text" size="20" name="<?php print("Datum_inschrijving[$i]"); ?>"
value="<?=$Rij['Datum_inschrijving']; ?>"></td>
<input class="secure_form" type="hidden" name="<?php
print("oude_datum[$i]"); ?>" value="<?=$Rij['Datum_inschrijving']; ?>">
<td class="secure"><input class="secure_form"
type="text" size="5" name="<?php print("Categorie[$i]"); ?>" value="<?=
$Rij['Categorie'] ?>"></td>
<td class="secure"><input class="secure_form"
type="text" size="5" name="<?php print("Groep[$i]"); ?>" value="<?=$Rij
['Groep'] ?>"></td>
<td class="secure"><input class="secure_form"
type="text" size="5" name="<?php print("Subgroep[$i]"); ?>" value="<?=
$Rij['Subgroep'] ?>"></td>
<td class="secure"><input class="secure_form"
type="text" size="5" name="<?php print("Uur[$i]"); ?>" value="<?=$Rij
['Uur'] ?>"></td> </tr>
<?php
$i++;
} // End while
print("</form></table>");
} // End if zijn er rijen om af te beelden
} // End if is set wijzigen
?>
--
Groeten,
StriKe
http://www.internetfreakz.be

Likes:

Quote