ik vroeg me af hoe ik 20 arrays in 1x update, ik kan namenlijk alleen vinden met WHERE maar dan kan je maar op 1 id of zie ik dat fout? zonder WHERE werkt het ook niet. Inserten met foreach werkt wel.
mysql_query("UPDATE Doden SET Naam= '{$val['name']['value']}' WHERE id = '$i'");
//mysql_query("INSERT INTO `Doden` (`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('{$val['name']['value']}', '{$val['time']['value']}', '{$val['rank']['value']}', '{$val['family']['value']}')") or die (mysql_error());
}
}
kheb t nu zo, die insert heb ik ff tussen // gedaan die werkt wel. de UPDATE nog niet
Daiben, jouw manier is fout ;) Het zal werken, maar 20 queries worden daar uitgevoerd. Stel je hebt 100 users, dan schiet het lekker op.
Als je meerdere rijgen in een INSERT wil doen, kan dat zo:
WHERE id=123
WHERE id=123 OR 321
WHERE id>=123 AND id<=321
WHERE id=123
WHERE id=123OR321
WHERE id>=123AND id<=321
en je kunt zoveel AND en OR achter elkaar zetten als je wilt (al als je er veel condities aan toevoegt je toch even moet gaan nadenken of je misschien een betere database indeling moet kiezen)
edit:
Je kunt ook de IN functie gebruiken. Stel je hebt een array met id's.
Dan moet je zorgen dat het een string word, gescheiden door komma en daarna kan het in je query via IN:
mysql_query("UPDATE Doden SET (`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('{$val['name']['value']}', '{$val['time']['value']}', '{$val['rank']['value']}', '{$val['family']['value']}')") or die (mysql_error());
mysql_query("UPDATE Doden SET (`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('{$val['name']['value']}', '{$val['time']['value']}', '{$val['rank']['value']}', '{$val['family']['value']}')") or die(mysql_error());
Waarom doet mn hl het niet?xD
dan hoort dit gewoon te werken, vreemd genoeg krijg ik dan
Citaat:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('Roflcopters', '1261999910', 'Thief'' at line 1
mysql_query("UPDATE Doden SET (`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('{$val['name']['value']}', '{$val['time']['value']}', '{$val['rank']['value']}', '{$val['family']['value']}')") or die(mysql_error());
}
dat is de update, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`Naam`, `Tijd`, `Rank`, `Familie`) VALUES ('Sam', '1262002868', 'Thief', '')' at line 1
dat is de error die ik krijg.