Możesz uwzględnić w swojej pętli mysql_ping()
funkcjonować. Ta funkcja sprawdza, czy połączenie jest otwarte, a jeśli nie, łączy się ponownie.
Korzystając z własnego przykładu, możesz zrobić coś takiego:
foreach($array as $value) {
mysql_ping($dbconn);
$sql="insert into collected values('".$value."')";
$res=mysql_query($sql);
//then some extra code.
}
Edytuj :Należy zauważyć, że zgodnie z dokumentacją po MySQL 5.0.14 PHP nie łączy się automatycznie. Jeśli używasz nowszej wersji MySQL, będziesz musiał wprowadzić własną logikę połączenia, może tak (nie testowałem):
function check_dbconn($connection) {
if (!mysql_ping($connection)) {
mysql_close($connection);
$connection = mysql_connect('server', 'username', 'password');
mysql_select_db('db',$connection);
}
return $connection;
}
foreach($array as $value) {
$dbconn = check_dbconn($dbconn);
$sql="insert into collected values('".$value."')";
$res=mysql_query($sql, $dbconn);
//then some extra code.
}