Foros del Web » Programando para Internet » PHP »

ejecutar iisap con php

Estas en el tema de ejecutar iisap con php en el foro de PHP en Foros del Web. hola buenos dias, ayuda muy urgente, resulta que necesito hacer como una especie de panel de control para lo siguiente: Tengo que crear un campo ...
  #1 (permalink)  
Antiguo 29/07/2010, 10:22
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 8 meses
Puntos: 1
ejecutar iisap con php

hola buenos dias, ayuda muy urgente, resulta que necesito hacer como una especie de panel de control para lo siguiente:

Tengo que crear un campo donde me liste los procesos q se estan corriendo en una maquina, me dicen que necesito usar sytem de php para que me los liste, este system es un string y debo descomponer ese string con una expresion regular, de esa expresion regular necesito dos campos que son el nombre y el numero, la expresion regular es
(.*):\ espacio(\d*)\espacio AppPoolId:\espacio(\w*)

debe existir un boton que se llame Reiniciar, para que cuando seleccione algun proceso de la lista pueda reiniciarlo, este boton reiniciar debe ejecutar el comando iisap/p#(aqui el numero del proceso)/r , para el proceso que se haya seleccionado.

El comando iisap se componde de un nombre y un numero que son los que necesito.

alguien que me ayude tengo un dia para entregar esto y no tengo idea
  #2 (permalink)  
Antiguo 29/07/2010, 10:54
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: ejecutar iisap con php

Holas,

Desconosco el comando iisap. Por comando por consola puedes obtener los numeros de IDs y nombres de procesos que se ejecutan por ejemplo con system:

Cita:
$ultima_linea = system('ls', $retval);
Y usar la variabla $retval para dumpearlo con var_dump($retval), y usar los valores para mostrarlos en HTML
en:

Cita:
<select name="procesos">
Luego con el boton por un lado obtienes los valores (que son los Id de procesos) y harias otro comando:

Cita:
system("kill ".$numero_de_proceso);
Y hasta por nombre tambien podrias matar el proceso:

Cita:
system("kill -9 ".$nombre_del_proceso);

Nos avisas como te fue.

Saludos
Gildus
__________________
.: Gildus :.
  #3 (permalink)  
Antiguo 30/07/2010, 18:46
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: ejecutar iisap con php

bueno les cuento que logre sacarlo y es de la siguiente manera, ademas le puse que me inserte en una base de datos quien hizo el reinicio:

Código PHP:
<form id="form1" name="form1" method="post" action="panelcontrol.php">

if( 
$_POST['procesos'] ) 
{
    
$procesos=$_POST['procesos'];
    
$cmd "iisapp /p ".$procesos." /r"
    
$result system($cmd);         
    
$insertar="insert into reinicio (usuario_reinicio, fecha_reinicio) values ('$nombre_usuario', '$fecha_reinicio')";
    
$resultado=mysql_query($insertar,$link);
}
else{
    
$cmd "iisapp"
    
$lineas = array();
    
exec($cmd$lineas); 
    
echo 
"<table width='358' border='0' align='center'>";    
    echo 
"<tr>";
    echo 
"<td align='center' width='287' class='Estilo1' >Panel de control <br>Internet Information Services</td>";
    echo
"</tr>";
    echo 
"<tr>";
    echo 
"<td colspan='2'>";
    echo 
"<table width='357' border='0' align='center'>";
    echo 
"<td width='206'><div align='center' class='Estilo2'>Seleccione el proceso a reiniciar:</td>";
    echo 
"<td width='141'>";
    echo 
"<select name='procesos' id='procesos'>";    

foreach (
$lineas as $linea)
    {
    echo 
$linea."<br>\r\n";
    
$exprCI="/(.*)\:\s(\d*)\sAppPoolId\:\s(\w*)/";
        if ( 
preg_match ($exprCI$linea,$match) )
        {
             echo 
"<option value='$match[2]'>$match[3]</option>";
         }          
    } 
    echo 
"</select>";
    echo 
"</td>";
echo 
"</table>";

    echo 
"</td>";
    echo 
"</tr>";
    echo 
"<tr>";
    echo 
"<td colspan='2'>&nbsp;</td>";
    echo 
"</tr>";
    echo 
"<tr>";
    echo 
"<td colspan='2' align='center'>
<input type='submit' name='Submit' value='Reiniciar' /></td>"
;
    echo 
"</tr>";
echo 
"</table>";

}
?>
  </p>
</form> 
  #4 (permalink)  
Antiguo 30/07/2010, 18:50
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: ejecutar iisap con php

resulta que ahora me pidieron incluir ahi un boton para poder reiniciar todo a la vez, eso lo pude sacar de la siguiente forma, con el comando iisreset.

Código PHP:
$res "iisreset" 
$output system $res ); 
creo que mi problema ahora es mas de logica, necesito incluir esto en el codigo anterior, es decir que exista un boton adicional que diga Reiniciar todo y haga este codigo nuevo, pero la verdad nose como hacerlo agradezco la ayuda es para mi trabajo y nose como unir las dos cosas
  #5 (permalink)  
Antiguo 30/07/2010, 20:12
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: ejecutar iisap con php

bueno el tema lo llevo asi, puse dentro del primer codigo es decir donde esta el campo <select> otro form asi

Código HTML:
<form id="form2" name="form2" method="post" action="controlreset">
  <div align="center">
  <input type='hidden' name='tipo_reinicio' id='tipo_reinicio' value='iisreset'/>
    <input type="submit" name="button" id="button" value="iisreset" />
  </div>
</form> 
y en controlreset.php, hago lo siguiente:
Código PHP:
if( $_POST['nombre'] ) $nombre=$_POST['nombre'];
$fecha_reinicio = date("Y-m-d H:i:s"); 
if( $_POST['tipo_reinicio'] ) $tipo_reinicio=$_POST['tipo_reinicio'];

<form id="form1" name="form1" method="post" action="controlreset.php">
<?php 
$res 
"iisreset" 
$output system $res ); 

$insertar="insert into reinicio (usuario_reinicio, tipo_reinicio, fecha_reinicio) values ('$nombre', '$tipo_reinicio','$fecha_reinicio')";
    
$resultado=mysql_query($insertar,$link);
?>
</form>
esto me funciona perfecto, ahora necesito meterle antes de que ejecute ese iisreset, supongo qu eun javascript para que pregunte si esta seguro que desea hacer esa operacion, lo he intentado pero no me sale. Cualquier colaboracion es bien recibida
  #6 (permalink)  
Antiguo 01/08/2010, 19:22
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: ejecutar iisap con php

bueno lo hice de la siguiente manera pero me hubiera gustado que el mensaje del segundo boton hubiera salido en php pero no pude inlcuirlo dentro de javascript, pero si alguien me dice si se puede o no agradeceria para salir de la duda

Código PHP:
<?php 
if( $_POST['tipo_reinicio'] ) 
{
$tipo_reinicio=$_POST['tipo_reinicio'];
echo 
$tipo_reinicio;
$res "iisreset" 
?>
<script language="javaScript">
    function existe()
    {
        if (!confirm(" <?php echo $filas[3]; ?> <?php echo $filas[4]; ?>, esta seguro que desea realizar el iisreset?"))
        {
            history.go(-1);
            return " "
        }
        else
        {
            <?php 
            $output 
system $res );
            
$insertar="insert into reinicio (usuario_reinicio, tipo_reinicio, fecha_reinicio) values ('$nombre_usuario', '$tipo_reinicio','$fecha_reinicio')"
            
$resultado=mysql_query($insertar,$link);

            if(
mysql_affected_rows($link)) 
            {  
?>
                alert("<?php echo "Reinicio Correcto" ?>");
                document.location ='panelcontrol.php';
            <?php 
            
}        
            
?>
        }
    }
document.writeln(existe())
</script> 
<?php 
}
?>
__________________
paty :adios:

Etiquetas: ejecutar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:48.