I’m writing a small application that will write the contents of a csv file to a database in CodeIgniter, but I’m having difficulty checking for dupes before write. Since this is a fairly common task, I was wondering how some of the professionals (you) do it. For context and comparison, here is my (currently non-working) code:
$sql = "SELECT * FROM salesperson WHERE salesperson_name='" . $csvarray['salesperson_name'][$i] . "'";
$already_exists = $this->db->query($sql);
if (sizeof($already_exists) > 0) {
//add to database
}
Any input at all short of “You suck!” (I already hear that from my own brain twice an hour at this point) will be greatly appreciated. Thanks.
What you’re doing will work, but as above the comparison should be “== 0” not “> 0”.
You can also use CodeIgniters built in num_rows method instead of using sizeof, like so:
As a side note, if you’re using CodeIgniter then it’s worthwhile to use Active Record to build your queries instead of writing SQL. You can learn more about it here: CodeIgniter – Active Record