Dublicate entry
Hej experter,jeg har lavet et en side til mit fodboldhold hvor man kan opdatere statestik for hver kamp. Problemet er når jeg vil opdatere statestikken får jeg fejlmeddelesen;
"Duplicate entry '35' for key 1".
Nogen der kan hjælpe mig med at rette denne fejl?
Min kode ser således ud:
<?php
include_once('../inc.config.php');
//connect til databaseb
mysql_connect($cfg['mysql']['host'],$cfg['mysql']['username'],$cfg['mysql']['password']);
mysql_select_db($cfg['mysql']['database']);
//Opretter en form med indenholden tidligere statestik.
echo '<form method="post" action="stats.edit.php"><input type="hidden" name="referer" value="edit_stats">';
$query = mysql_query("SELECT * FROM stats ORDER BY nummer") or die(mysql_error());
$count = 0;
while ($row = mysql_fetch_assoc($query)) {
echo '<input type="hidden" name="id' . $count . '" value="'.$row['id'].'" style="width: 45px">';
echo '<input type="hidden" name="navn' . $count . '" value="'.$row['navn'].'" style="width: 45px">';
echo '<input type="hidden" name="nummer' . $count . '" value="'.$row['nummer'].'" style="width: 45px">';
echo '<table width="150" border="0" cellspacing="0" cellpadding="0"><tr><th scope="col"><strong>'.$row['nummer'].' '.$row['navn'].'</strong></th></tr></table>';
echo 'Kampe <input type="text" name="kampe' . $count . '" value="'.$row['kampe'].'" style="width: 25px"> ';
echo ' Mål <input type="text" name="maal' . $count . '" value="'.$row['maal'].'" style="width: 25px"> ';
echo ' Assist <input type="text" name="assist' . $count . '" value="'.$row['assist'].'" style="width: 25px"> ';
echo ' Gulekort <input type="text" name="gulkort' . $count . '" value="'.$row['gulkort'].'" style="width: 25px"> ';
echo ' Rødekort <input type="text" name="rodkort' . $count . '" value="'.$row['rodkort'].'" style="width: 25px"> ';
echo ' MoM <input type="text" name="mom' . $count . '" value="'.$row['mom'].'" style="width: 25px"> ';
echo '<br><br>';
$count++;
}
echo '<input type="submit" value="Opdater stats"></form>';
?>
<?php
//sætter opdateret statestik ind i tabellen (tror det er her et sted det fejler?)
if ($_POST['referer'] == 'edit_stats') {
$iter = 0;
while ($iter < $count ) {
mysql_query("UPDATE stats SET
id='".$_POST['id' . $iter]."',
navn='".$_POST['navn' . $iter]."',
kampe='".$_POST['kampe' . $iter]."',
maal='".$_POST['maal' . $iter]."',
assist='".$_POST['assist' . $iter]."',
gulkort='".$_POST['gulkort' . $iter]."',
rodkort='".$_POST['rodkort' . $iter]."',
mom='".$_POST['mom' . $iter]."'
WHERE nummer = '".$_POST['nummer' . $iter]."' ")or die(mysql_error());
$iter++;
}
echo '<br><br>'.'statestik er nu opdateret!'.' <strong><a href="stats.edit.php">Refresh for at se resultat</a></strong><br><br>';
}
?>
Min tabel ser således ud:
CREATE TABLE `stats` (
`id` int(11) NOT NULL auto_increment,
`navn` varchar(60) NOT NULL default '',
`nummer` int(11) NOT NULL default '0',
`kampe` int(11) NOT NULL default '0',
`maal` int(11) NOT NULL default '0',
`assist` int(11) NOT NULL default '0',
`gulkort` int(11) NOT NULL default '0',
`rodkort` int(11) NOT NULL default '0',
`mom` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=37 ;
