tiempo maximo de conexion en include

tgp
20 de Julio del 2005
Que tal a todos, por custiones de compatibilidad y de permisos me veo obligado a ejecutar un unico proceso en un servidor externo a donde tengo hospedada mi pagina, pero el problema es que este otro servidor no esta disponible todo el dia y quisiera poner un tiempo maximo permitido de conexion con este servidor, por ejemplo 3 segundo y si no esta disponible entonces que el script ejecute la opcion 2. Les posteo el codigo que utilizo actualmente:

//$scriptnecesario = @include 'http://ip_servidortemporal/archivos/scriptnecesario.php';
if(!$scriptnecesario)
{
$data = mysql_db_query("$DBName","insert into mytable (mover,word,hecho)
values('$mover','$word','0')");
}
if($scriptnecesario)
{
$data = mysql_db_query("$DBName","insert into mytable (mover,word,hecho)
values('$mover','$word','1')");
}

Esto es solo para llevar un control de si se ejecuto el proceso o no... notaran que en el include he puesto una @ antes del archivo a incluir ya que de no estar si el servidor no esta disponible se quedaba pensando un buen tiempo hasta que marcaba error

saludos

webmasterfrank
20 de Julio del 2005
Para realizar eso que dices has de modificar el php.ini de tu programade php , ahi puede poner el tiempo maximo de ejecución para los scripts pero recuerda no poner poco tiempo porque si el servicio de internet de los que consultan la pagina o tu server no es rapido , no cargara nada , hay que dejar un tiempo un poco generoso como 40 o 30 segundos , hasta pronto , webmasterfrank , españa

Loop
20 de Julio del 2005
Wow webmasterfrank, me dejaste sorprendido :| jejeje


pues ........

podrías hacer algo como

<?php

$fopen=fopen("http://",'r');
if($fopen){
fclose($fopen);
include("http//"); // por razones obvias debe funcionar
}

?>

Loop
20 de Julio del 2005
Jaja chale yo y mis incoherencias :p

el script para saber esto en un tiempo de ejecución máximo establecido por el programador debe ser así por ejem....

<?php
$puerto=25; // Puerto en el que se hará la conexión
$url="[email protected]"; // IMPORTANTE Sin http://www etc
$maxTimeExecution=5; // máximo de tiempo de espera

$fgv = gethostbyname($url);

#; Abrimos la conexión mediante fsockopen();
$foo = fsockopen($fgv,$puerto,$strerror,$errno,$maxTimeExecution);
if($foo){
include("el archivo.php");
} else {
include("otra cosa.php");
}
?>


Bueno ahora sí :p saludos !