Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] problema con php despues de reinstalar appserv

Estas en el tema de problema con php despues de reinstalar appserv en el foro de PHP en Foros del Web. hola. a todos. estoy desarrollado un proyecto con CI . recientemente instalé la utima version de appserv. 9.3 que trae la version 7.3 de php. ...
  #1 (permalink)  
Antiguo 19/05/2020, 20:55
 
Fecha de Ingreso: noviembre-2015
Mensajes: 58
Antigüedad: 4 años, 6 meses
Puntos: 0
problema con php despues de reinstalar appserv

hola. a todos. estoy desarrollado un proyecto con CI . recientemente instalé la utima version de appserv. 9.3 que trae la version 7.3 de php. el proyecto funcionaba bien. lo tome de la carpeta www de la versión antigua de appser y lo copie normalmente en la carpeta www de la nueva instalación.
el problema es que al cargar las vistas las variables que les paso no las reconoce.
Código PHP:

$dat
['result'] = $result;    
$dat['author'] = $author;    
$view =  ConfigServices::renderer();
$view->setData($dat);
$out $view->render('tools/previews'); 
esto es es código especifico de codeigniter pero es la misma logica puro php. en el archivo previews.php deberian reconocerse una variable $result y otra $author, lo cual no ocurre.
no pasa solo en esa llamada a la vista sino a cualquier vista del proyecto.
solo se me ocurre pensar que sea alguna configuracion del php(o apache) de mi nueva instalación pues en el código de mi proyecto no cambie nada.
para estar seguro tomé una instalacion vacía de codeigniter e hice un llamado a una vista sencilla y pasa exactamente lo mismo.

siguiendo el código de codeigniter en la parte que llama a las vistas...
Código PHP:
       // Make our view data available to the view.
    
extract($this->data);
        
    
ob_start();
    include(
$file); // PHP will be processed
    
$output ob_get_contents();
    @
ob_end_clean(); 
lo cual segun investigué es para no enviar hasta el final todo el código que se genera guardándolo en el buffer de salida hasta que se termina de ejecutar.
mi duda es si para usar el buffer de salida se necesita alguna configuración que pueda estar incorrecta en mi nueva instalación.

es solo una teoría , no digo que el problema este relacionado con esto.
ayuda por favor.
gracias de antemano
  #2 (permalink)  
Antiguo 20/05/2020, 22:50
 
Fecha de Ingreso: noviembre-2015
Mensajes: 58
Antigüedad: 4 años, 6 meses
Puntos: 0
Respuesta: problema con php despues de reinstalar appserv

amigos creo que el problema no tiene nada que ver con el buffer de salida.
descubri que en el codigo html no son solo las variables sino cualquier codigo no es interpretado

Código:
<? if(condicion){?>         
	  <div >
          	Imprimir
	</div>
<?}
en condicion no importa lo que compare , lo mismo 1==1 o 1==2 o lo que sea, sigue mostrando imprimir. Es como si el codigo php no lo interpretara .

alguna sugerencia
  #3 (permalink)  
Antiguo 21/05/2020, 08:30
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.064
Antigüedad: 11 años, 9 meses
Puntos: 2215
Respuesta: problema con php despues de reinstalar appserv

Revisa que la directiva short_open_tag está activa: https://www.php.net/manual/es/ini.co...short-open-tag

Aunque lo ideal es que siempre uses la forma completa <?php
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 21/05/2020, 08:31
 
Fecha de Ingreso: abril-2011
Mensajes: 123
Antigüedad: 9 años, 1 mes
Puntos: 43
Respuesta: problema con php despues de reinstalar appserv

Se te está almacenando el HTML en el buffer de salida, pero no lo vacías nunca. Para ello debes llamar en el final de tu script a:

Código PHP:
Ver original 

o en tu caso:

Código PHP:
Ver original
  1. echo $output;

Última edición por prueba230683; 21/05/2020 a las 08:37
  #5 (permalink)  
Antiguo 22/05/2020, 12:01
 
Fecha de Ingreso: noviembre-2015
Mensajes: 58
Antigüedad: 4 años, 6 meses
Puntos: 0
Respuesta: problema con php despues de reinstalar appserv

Gracias a todos x responder. Sobre todo a Triby. Exactamente con habilitar short-open-tag en mi php.ini se soluciono el problema.



La zona horaria es GMT -6. Ahora son las 15:45.