Problemmer med insert update funktion
Jeg har denne kode som skriver værdien af 3 varer ned i en mysql database.Det virker faktisk næsten perfekt, men når der allerede står en post i databasen og jeg kommer med 2 eller 3 poster som skal skrives opdatere den kun den post som allerede står i databasen. Det gør den fordi jeg her (if(mysql_num_rows($query) != 0) spørger om der allerede er noget i databasen og hvis der er det skal den opdatere den post.
Hvordan gør jeg sådan at jeg kan opdatere den ene post der allerede er der og insætter de nye poster som ikke er der? Håber at det er godt nok beskrevet.
Min kode!
$conn = mysql_connect("$dbname","$username","$password");
mysql_select_db($database,$conn) or die ("Kunne ikke åbne database");
$query = mysql_query("SELECT * FROM hardware WHERE username='$UID'");
if(mysql_num_rows($query) != 0) {
$row = mysql_fetch_array($query);
echo "DER ER NOGET I DATABASEN!"; ?><br><br><?
for ($i=0;$i<count($query);$i++){
mysql_query("UPDATE hardware SET antal=$varer_antal[$i], dato='$varer_dato[$i]', subtotal='$varer_subtotal[$i]' WHERE username='$varer_bruger[$i]' and varenummer=$varer_varenr[$i]");
}
echo "<font color=\"darkgreen\">UPDATE"; ?><br><?
} else {
echo "DER ER INGENTING I DATABASEN!"; ?><br><br><?
for ($i=0;$i<count($query);$i++){
mysql("hardware","INSERT INTO hardware VALUES ('$varer_dato[$i]','$varer_bruger[$i]','$varer_type[$i]','$varer_varenr[$i]','$varer_antal[$i]','$varer_pris[$i]','$varer_subtotal[$i]')");
}
echo "<font color=\"darkgreen\">INSERT"; ?><br><?
}
mysql_close($conn);
Lige et dump!
# MySQL-Front Dump 2.2
#
# Host: localhost Database: hardware
#--------------------------------------------------------
# Server version 3.23.52-nt
#
# Table structure for table 'hardware'
#
CREATE TABLE `hardware` (
`dato` varchar(100) NOT NULL default '',
`username` varchar(100) NOT NULL default '',
`navn` varchar(100) NOT NULL default '',
`varenummer` varchar(100) NOT NULL default '',
`antal` varchar(100) NOT NULL default '',
`pris` varchar(100) NOT NULL default '',
`subtotal` varchar(100) NOT NULL default '',
PRIMARY KEY (`varenummer`)
) TYPE=MyISAM;
#
# Dumping data for table 'hardware'
#
INSERT INTO hardware VALUES("13-05-03","thn","Printer","2345","5","500","2500");
INSERT INTO hardware VALUES("13-05-03","thn","Netkort","3456","5","50","250");
INSERT INTO hardware VALUES("13-05-03","thn","IBM PC","1234","5","1000","5000");
