Ayuda con código PHP

Hola, necesito ayuda con un trozo de código php con el que estoy trasteando.

Puede que la solucion sea muy simple, no lo se pero mis conocimientos de php son 0 y me voy nutriendo de ejemplos y de ensayo y error.

Este codigo lo utilizaba para ordenar, articulos en html que se iban haciendo desde un formulario. Me costó lo suyo encontrarlo y adaptarlo pero era fenomenal cuando los articulos se contenían en la carpeta articulos, ahora necesito que haga lo mismo pero en el root donde se encuentra el archivo con el código, puede ser una tonteria pero me estoy volviendo loco y no encuentro nada googleando.

Por favor explicaciones nivel 3 años, que en PHP como decía a lo único que llego es a reciclar ejemplos.

Un saludo y gracias.

codigo escribió:<?

$dir= "articulos";

$directorio=opendir($dir);

$i=0;

while ($archivo = readdir($directorio)) {

if ($archivo=="." || $archivo==".."){

echo " ";

}else{

$i++;

$entradas[$archivo] = filemtime($dir."/".$archivo);


} }

arsort ($entradas);

closedir;

$i=0;

foreach ($entradas as $archivo => $timestamp) {

if ( $i < 1 )
{


include ($dir."/".$archivo);

}


$i++;


}
?>
¿Qué tal así?

<?
     $dir = getcwd();
     $directorio = opendir($dir);
     ...


Saludos.
JAPosti escribió:¿Qué tal así?

<?
     $dir = getcwd();
     $directorio = opendir($dir);
     ...


Saludos.


Algo falla, me sale la pantalla en blanco.

De todos modos gracias por la ayuda.
No te rindas aun hombre, comprueba si getcwd() está dando el directorio en el que tienes el archivo PHP. No lo he probado, pero yo creo que funciona.

<?
     $dir = getcwd();
     print($dir);
     $directorio = opendir($dir);
     ...

Evidentemente tendrías que tener los archivos que me cuentas en el mismo directorio (como me has dicho) y NO en otros directorios contenido en él. Si necesitas esto, dímelo. La solución es algo mas compleja pero se puede conseguir. Si tienes localizado el directorio en el que está los archivos (en la misma carpeta donde está el PHP y se llama, por ejemplo, archivos), entonces la solución es mas fácil:

<?
     $dir = getcwd() . "/archivos";
     $directorio = opendir($dir);
     ...

SAludos.
$dir = "." con eso apuntará al directorio actual digo yo.
EDITO....

Bueno finalmente ya lo conseguí, modifique otras partes del código varias veces de forma parecida hasta que cuajo una.

Ahora tengo un problema, se crean a la vez un archivo y se modifica otro, por lo que me suele salir el modificado que es fijo, voy a ver si hay alguna forma para que en el código de abajo me ignore el archivo fijo del que hablaba y me ordene el resto.

Un saludo y gracias por los consejos.

El código que me sirve:
<?

$dir= ".";

$directorio=opendir($dir);

$i=0;

while ($archivo = readdir($directorio)) {
   
if ($archivo=="." || $archivo==".."){

echo " ";

}else{

$i++;

$entradas[$archivo] = filemtime($archivo);


} }

arsort ($entradas);

closedir;

$i=0;

foreach ($entradas as $archivo => $timestamp) {

if ( $i < 1) {
   
include ($archivo);

}$i++;}


?>
5 respuestas