Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/12/2002, 16:48
Avatar de batvampire
batvampire
 
Fecha de Ingreso: noviembre-2002
Mensajes: 87
Antigüedad: 22 años
Puntos: 0
Especial para CLUSTER,el defensor de las sesiones

Me dijiste q utilizara sesiones q era lo mejor del mundo y llevo 2 dias desesperado intentando saber porque se me produce el siguiente error:

Warning: Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\programacion\asignacion\asignacio n2.php:1) in c:\apache\htdocs\programacion\asignacion\asignacio n2.php on line 2

no se q pasa,pero me stoy volviendo loco.Te mando todo el codigo haber si me ayudas porque estoy desquiciado:

asignacion0.php

Código PHP:
<html>
<
body>

codigo html:mando por formulario estas variables:
"zx","mini","dim","a","m","y","pasoa","a1","b1","b2"  
<
</
body>
</
html

asignacion1.php
Código PHP:
<?
 session_start
(); 
 
session_register("zx","mini","dim","a","m","y","pasoa","a1","b1","b2");  
?>
<html>
<body>

codigo html

</body>
</html>
asignacion2.php

Código PHP:
<?
 session_start
();
 
session_destroy(); 
?>

<html>
<body>

codigo html

</body>
</html>


No obstante el problema se produce en asignacion2.php que es este:

Código PHP:
<?
 session_start
();
 
session_destroy(); 
?>


<html>
<head>
<title>Problema de asignaci&oacute;n</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>



<body bgcolor="#97B7D7" text="#FFFFFF" link="#0000CC">

<table width="100%" border="0" bgcolor="#000000" height="10%">
  <tr> 
    <td>
      <div align="center"><b><font color="#FF0000" size="5">Problema de asignaci&oacute;n</font></b></div>
    </td>
  </tr>
</table>
<table width="100%" border="0">
    <tr> 
      <td width="94%">&nbsp;</td>
      <td bgcolor="#66FF66" width="6%"> 
        <div align="right"><b><font size="4" color="#0000FF"><a href="javascript:openwindow('ayudaa0.htm')">Ayuda</a></font></b></div>
      </td>
    </tr>
  </table>

<?
  
for($i=0;$i<$dim;++$i){
    for(
$j=0;$j<$dim;++$j){
        
      
$a[$i*$dim+$j]=$da3[$i*$dim+$j];
      
settype($a[$i*$dim+$j],"double");  

      
$soluc[$i*$dim+$j]=$da3[$i*$dim+$j];
      
settype($soluc[$i*$dim+$j],"double"); 
        
    }
  }

      if (!
$mini) {
      
transformas($dim,&$a);
      }

      
$zx=$zx+1;
      if (
$pasoa==1mostrar_fas($dim,&$a,&$m,&$zx);

      
$con=0;      
      while(
$con<2){
          
          for(
$i=0;$i<$dim;++$i){
            
$l=$i;
            
$y[$l]=1000000;
            
            for (
$j=0;$j<$dim;++$j){
              if(
$con){
               
$acon=$j;
               
$j=$i;
               
$i=$acon;
              }
              if(
$a[$i*$dim+$j]<$y[$l]) $y[$l]=$a[$i*$dim+$j];

              if(
$con){
               
$acon=$j;
               
$j=$i;
               
$i=$acon
              } 
            }
          }
      
          for(
$i=0;$i<$dim;++$i){
            
$l=$i;
            for(
$j=0;$j<$dim;++$j){
              if(
$con){
               
$acon=$j;
               
$j=$i;
               
$i=$acon;
              }
              
              
$a[$i*$dim+$j]=$a[$i*$dim+$j] -($y[$l]);

              if(
$con){
               
$acon=$j;
               
$j=$i;
               
$i=$acon;
              }
            }
          }

          
$con=$con+1;
          if(
$pasoa==1) {
           
$zx=$zx+1;
           
mostrar_fas($dim,&$a,&$m,&$zx);
          }
      }

      
$final=0;
      while(!
$final){
          
inicializar($dim,&$segu,&$m);
          
$con2=0;
          
$segal=1;
          
          while(
$con2<$dim && $segal){
              
$b=200;              
              for(
$i=0;$i<$dim;++$i){
                
$h[$i]=0;
                for(
$j=0;$j<$dim;++$j){
                  if (!
$a[$i*$dim+$j]  && !$m[$i*$dim+$j]) $h[$i]=$h[$i]+1;
                }
                if(
$h[$i]<$b && $h[$i]){
                 
$x=$i;
                 
$b=$h[$i];
                }
              }
              if(
$b==200$segal=0;
               if(
$segal){
                
$con2=$con2+1;
                
$salir=0;
                
$j=0;
                while(!
$salir){
                    if(!
$m[$x*$dim+$j] && !$a[$x*$dim+$j]){
                     
$m[$x*$dim+$j]=1;
                     
$l=$j;
                     
$salir=1;
                    }
                    
$j=$j+1;
                }
                for(
$j=0;$j<$dim;++$j){
                  if(
$m[$x*$dim+$j]!=1$m[$x*$dim+$j]=2;
                  if(
$m[$j*$dim+$l]!=1$m[$j*$dim+$l]=2;
                }
               }
           }
           
           
$u=0;
           for(
$i=0;$i<$dim;++$i){
             for(
$j=0;$j<$dim;++$j){
               if(
$m[$i*$dim+$j]==&& $a[$i*$dim+$j]==0$u=$u+1;
             }
           }

           if(
$pasoa==1) {
            
$zx=$zx+1;
            
mostrar_fas($dim,&$a,&$m,&$zx);
           }

           if(
$u==$dim){
            
$final=1;
           }

           if(!
$final){
            for(
$i=0;$i<$dim;++$i){
              
$f[$i]=0;
              
$caca[$i]=1;
              for(
$j=0;$j<$dim;++$j){
                if(
$m[$i*$dim+$j]==1$f[$i] =1;
              }
            }
            
            
$p=0;
            while (
$p<$dim+1){
                for(
$i=0;$i<$dim;++$i){
                  for(
$j=0;$j<$dim;++$j){
                    if (!
$f[$i] && $m[$i*$dim+$j]==&& !$a[$i*$dim+$j]) $caca[$j]=0;
                  }
                }
                
                for(
$j=0;$j<$dim;++$j){
                  for(
$i=0;$i<$dim;++$i){
                    if(!
$caca[$j] && $m[$i*$dim+$j]==1$f[$i]=0;
                  }
                }
                
$p=$p+1;
            }

            for(
$i=0;$i<$dim;++$i){
              for(
$j=0;$j<$dim;++$j){
                if(
$f[$i]==1$m[$i*$dim+$j]=5;
                if(!
$caca[$j]) $m[$i*$dim+$j]=5;
              }
            }
            
            
$w=1000000;
            for(
$i=0;$i<$dim;++$i){
              for(
$j=0;$j<$dim;++$j){
                if (
$m[$i*$dim+$j]!=&& $a[$i*$dim+$j]<$w$w=$a[$i*$dim+$j];
              }
            }

            for(
$i=0;$i<$dim;++$i){
              for(
$j=0;$j<$dim;++$j){
                if(!
$f[$i] && $caca[$j]==$a[$i*$dim+$j]=$a[$i*$dim+$j]-$w;
                if(
$f[$i]==&& !$caca[$j] ) $a[$i*$dim+$j]=$a[$i*$dim+$j]+$w;
              }
            }

           }
       }

       
$resul=0;
       for(
$i=0;$i<$dim;++$i){
         for(
$j=0;$j<$dim;++$j){
           if (
$m[$i*$dim+$j]==&& $a[$i*$dim+$j]==0$resul=$resul+$soluc[$i*$dim+$j];
         }
       }

       
$suma=0;
?>    
<p>&nbsp;</p><P>
<table width="90%" border="5" bgcolor="#CC0000" bordercolor="#000000" align="center">
  <tr> 
    <td width="49%" bgcolor="#CCCCCC"> 
      <div align="center"><b><font color="#000000">Coste (o beneficio) de la asignaci&oacute;n 
        &oacute;ptima </font></b><font color="#000000">:</font></div>
    </td>
    <td width="51%">
      <div align="center"><font color="#000000"><b><?echo $resul?></b></font></div>
    </td>
  </tr>
  <tr bgcolor="#CCCCCC"> 
    <td colspan="2"> 
      <div align="center"><font color="#000000"><b>Asignaci&oacute;n &oacute;ptima</b></font></div>
    </td>
  </tr>
  <tr> 
    <td colspan="2"> 
      <div align="center"><font color="#000000"><b><?
       
for($i=0;$i<$dim;++$i){
         for(
$j=0;$j<$dim;++$j){
           if(
$m[$i*$dim+$j]==&& $a[$i*$dim+$j]==0) {
           echo 
"O";
           echo 
$i+1;
           echo 
"-T";
           echo 
$j+1;
           echo 
"<br>";
            
           }
         }
       }
    
    
?></b></font></div>
    </td>
  </tr>
</table>
         
<?   
 
function inicializar($a1,$b1,$b2){

    for(
$i=0;$i<$a1;++$i){
      for(
$j=0;$j<$a1;++$j){
        
$b1[$i*$a1+$j]=0;
        
$b2[$i*$a1+$j]=0
      }
    }
 }


 function 
iniciar($a1,$b1){

    for(
$i=0;$i<$a1;++$i){
      
$b1[$i]=0;
    }
 }
 function 
transformas($a1,$a2){
    
$maximo=0;
    
settype($maximo,"double");
    for(
$i=0;$i<$a1;++$i){
      for(
$j=0;$j<$a1;++$j){
        if(
$a2[$a1*$i+$j]>$maximo){
         
$maximo=$a2[$a1*$i+$j];
         
$k=$i;
         
$l=$j;
        } 
      }
    }
    
$m=$a2[$a1*$k+$l];

    for(
$i=0;$i<$a1;++$i){
      for(
$j=0;$j<$a1;++$j){
        
$a2[$a1*$i+$j]=$m-$a2[$a1*$i+$j];
      }
    }
 }

function 
mostrar_fas($a1,$a2,$a3,$l1){
?>
<table width="50%" border="1" align="center" bgcolor="#CC0000">
  <tr bgcolor="#CCCCCC"> 
    <td><?if (!$l1){?> 
      <div align="center"><b><font color="#000000">Tabla inicial</font></b><?}?> 
        <?if ($l1){?> </div>
      <div align="center"><font color="#000000"><b>Iteracion</b></font><b><font color="#000000"><?echo $l1;?></font></b><?}?> 
      </div>
    </td>
  </tr>
  <tr> <?if($a1<4){?> <?}?> <?if($a1>3){?> <?}?> 
    <td> 
      <div align="center"> 
        <table width="100%" border="0" bgcolor="#CC0000">
          <?for($i=0;$i<$a1;++$i){?> 
          <tr> <?for($j=0;$j<$a1;++$j){?> 
            <td height="35"> 
              <center>
                <b><font color="#000000"><?
                $rr
=$a2[$i*$a1+$j];
                
settype($rr,"double");
        
                
$ll=$a3[$i*$a1+$j];
                
settype($ll,"integer");
        
                if(
$ll==&& !$rr){?></font></b> 
                <table width="4%" bgcolor="#FFFFFF">
                  <tr> 
                    <td><font color="#000000"><b><?echo $rr;?></b></font></td>
                  </tr>
                </table>
                <b><font color="#000000"><?}
                else{
                 echo 
$rr;
                 }
                
?></font></b> 
              </center>
            </td>
            <?}?> </tr>
          <?}?> 
        </table>
      </div>
    </td>
  </tr>
</table>
<br>

  <?  
 
}
?> </p>

</body>
</html>
__________________
:pirata: