Ciao a tutti, sto avendo un problemino con un ciclo FOR. In pratica mi esegue il ciclo una sola volta mentre, per come lo sto testando dovrebbe farlo due.
Codice PHP:
public function f_db_update($table, $data, $col_name, $id)
{
//Questo var_dump mi da 2
var_dump(count($id));
//Genero la stringa SQL
for($i=0; $i<count($id); $i++)
{
$sql = "";
$sql .= "UPDATE ".$table. " SET " ;
$c = 0;
foreach($data as $key => $val)
{
$sql .= $key . " = '" . addslashes($val) . "'";
if($c != count($data) - 1)
{
$sql .= ", ";
}
$c++;
}
//Termino la stringa SQL
$sql .= " WHERE ".$col_name." = ".$id[$i];
//STRING SQL TEST
print "<br><br>".$sql."<br><br>";
//Eseguo la query
if(!$this->_link->query($sql))
{
print_r($this->_link->errorInfo());
return false;
exit;
}
else
{
return true;
}
}//for end
}//Method end
Lo sto testando passandogli $id che ha 2 elementi quindi dovrebbe fare il ciclo 2 volte mentre invece me lo fa una sola volta, (e mi esegue l' upload di una sola riga) infatti mi stampa la stringa una sola volta, questo è il risultato a video:
int(2)
UPDATE t_jobs SET id_summary_of_work = '1419', id_jobs_status = '9' WHERE id_jobs = 1
Cosa potrebbe causare ciò? Grazie a tutti