In the below query I am using the str_replace function to strip out '"' from some data I am parsing. I am getting this error. Any ideas on how I can fix this? Note that line 24 has the str_replace funtion
Fatal error: Only variables can be passed by reference in /public_html/Offices/update_db.php on line 24
Query:
$i = 0;
while (($data = fgetcsv($handle, 0, $separator)) !== FALSE) {
if ($i == $first_row_offset) {
$fields = [];
foreach ($data as $key => $item) {
$fields[$item] = $key;
}
} elseif ($i > $first_row_offset) {
$query = 'SELECT * FROM offices_empty_locations WHERE address="' . str_replace('"', '\"',$data[$fields['addres']], 0, 250)) . '" AND zip="' . $data[$fields['zip']] . '"';
$result = mysqli_query($mysqli, $query);
while ($tmp_data = mysqli_fetch_assoc($result)) {
if (isset($tmp_data['latitude']) && $tmp_data['latitude'] > 0) {
$query = 'UPDATE offices_main SET field_value="' . $data[$fields['lat']] . '" WHERE id=' . $tmp_data['latitude'] . ' AND field_value=""';
mysqli_query($mysqli, $query);
}
if (isset($tmp_data['longitude']) && $tmp_data['longitude'] > 0) {
$query = 'UPDATE offices_main SET field_value="' . $data[$fields['lon']] . '" WHERE id=' . $tmp_data['longitude'] . ' AND field_value=""';
mysqli_query($mysqli, $query);
}
}
}
$i++;
}