PHP tiene bastantes límites en cuanto a tiempo de ejecución (por defecto 30 segundos si no cabiastes nada en tu configuración) .. de memoria consumida por tu script (unos cuantos Mb por defecto ...).
El problema principal en tu caso es que metes en tu bucle la conexión a la BBDD .. NO DEBES HACERLO ASÍ, .. saca la conexión a tu BBDD de tu bucle .. conectate -fuera- de el ..
Código PHP:
$con17 = mysql_connect("localhost",$usuario,$pass) or die (mysql_error());
mysql_select_db($base,$con17) or die (mysql_error());
for ($i=0;$i<20;$i++){
$contador2=$id[$i];
$sql = "UPDATE info set categoriapropia='Anime' where id_interno='$contador2'";
$result4 = mysql_query($sql,$con17);
// mysql_free_result($result4); <-- NO es necesario .. un UPDATE no genera resultado .. es útil si haces SELECT sólo ...
}
mysql_close($con17);
No entiendo mucho el cometido de ese bucle .. fijando por un n° de ID una actualización de ciertos campos de una tabla .. En SQL de Mysql tienes la función:
Cita: UPDATE tabla SET campo='valor' WHERE id_interno IN (lista de valores separados por comas)
Un saludo,