Foros del Web » Programando para Internet » PHP »

Ahora si tratamiento de ficheros en php ayuda masters

Estas en el tema de Ahora si tratamiento de ficheros en php ayuda masters en el foro de PHP en Foros del Web. Estoy por terminar un sistema e news usando como almacenamiento texto plano pero a la hora de hacer Código PHP: include( "news.new" );  me pone ...
  #1 (permalink)  
Antiguo 16/11/2002, 12:19
Avatar de HIa
HIa
 
Fecha de Ingreso: noviembre-2002
Ubicación: Cartago
Mensajes: 121
Antigüedad: 15 años, 1 mes
Puntos: 0
Ahora si tratamiento de ficheros en php ayuda masters

Estoy por terminar un sistema e news usando como almacenamiento texto plano pero a la hora de hacer

Código PHP:
include("news.new"); 

me pone las noticias en el index del web pero lo que quiero es alguna manera de guardar dentro del archivo las noticias mas nuevas al inicio del archi or ejemplo


citar:
--------------------------------------------------------------------------------
noticia 1
noticia 2
noticia 3
etc
--------------------------------------------------------------------------------



pero la realidad no se como el metodo de escritura que uso es a+
que pone el puntero al final, si uso a el puntero va al inicio pero escribe sobre las cosas viejas NO LAS BORRA las sobre escribe, alq}guien me ayuda.........
aqui les dejo el codigo fuente de la pagina que procesa los datos........
----------------------------------
Código PHP:
<?
//ARRAY DE VARIABLES DE FORMULARIO
$subject2      =  $_POST['subject2'];
$subject     =  $_POST['subject'];
$message     =  $_POST['message'];
$SMILES      =  $_POST['SMILES'];
$BBcode      =  $_POST['BBcode'];
$vprevia     =  $_POST['vprevia'];
//?
$message     nl2br($message);
//CONVERSION DE BBCODE USANDO IF
if ($BBcode == "SI")
{
$strong1 '<strong>';
$strong2 '</strong>';
$i1      '<em>';
$i2      '</em>';
$sub1    '<u>';
$sub2    '</u>';
$listad1 '<ul><li>';
$listad2 '</ul></li>';
$listao1 '<ol><li>';
$listao2 '</ol><li>';
$url     '<a href="';
$url2    '">link</a>';
$img1    '<img src="';
$img2    '">';
$quote1  ='<table width="75%" border="2" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000" bgcolor="#CCCCCC"><tr><td>';
$quote2  ='</td></tr></table>';
$message str_replace(""$strong1$message);
$message str_replace(""$strong2$message);
$message str_replace(""$i1$message);
$message str_replace(""$i2$message);
$message str_replace(""$sub1$message);
$message str_replace(""$sub2$message);
$message str_replace("<ul>"$listad1$message);
$message str_replace("</ul>"$listad2$message);
$message str_replace("<ul>"$listao1$message);
$message str_replace("</ul>"$listao2$message);
$message str_replace("[url]"$url$message);
$message str_replace("[/url]"$url2$message);
$message str_replace("[img]"$img1$message);
$message str_replace("[/img]"$img2$message);
$message str_replace("[quotes]"$quote1$message);
$message str_replace("[/quotes]"$quote2$message);
}
//CONVERSIONDE EMOTIKONS USANDO IF
if ($SMILES == "SI")
{
$cry '<IMG src="imagenes/emotikons/icon_cry.gif">';
$eek ='<IMG src="imagenes/emotikons/icon_eek.gif">';
$evil ='<IMG src="imagenes/emotikons/icon_evil.gif">';
$exclaim ='<IMG src="imagenes/emotikons/icon_exclaim.gif">';
$frown ='<IMG src="imagenes/emotikons/icon_frown.gif">';
$idea ='<IMG src="imagenes/emotikons/icon_idea.gif">';
$lol ='<IMG src="imagenes/emotikons/icon_lol.gif">';
$mad ='<IMG src="imagenes/emotikons/icon_mad.gif">';
$mrgreen ='<IMG src="imagenes/emotikons/icon_mrgreen.gif">';
$neutral ='<IMG src="imagenes/emotikons/icon_neutral.gif">';
$question ='<IMG src="imagenes/emotikons/icon_question.gif">';
$razz ='<IMG src="imagenes/emotikons/icon_razz.gif">';
$surprised ='<IMG src="imagenes/emotikons/icon_surprised.gif">';
$twisted ='<IMG src="imagenes/emotikons/icon_twisted.gif">';
$wink ='<IMG src="imagenes/emotikons/icon_wink.gif">';
$smile ='<IMG src="imagenes/emotikons/icon_smile.gif">';
$redface ='<IMG src="imagenes/emotikons/icon_redface.gif">';
$rolleyes ='<IMG src="imagenes/emotikons/icon_rolleyes.gif">';
$arrow ='<IMG src="imagenes/emotikons/icon_arrow.gif">';
$biggrin ='<IMG src="imagenes/emotikons/icon_biggrin.gif">';
$confused ='<IMG src="imagenes/emotikons/icon_confused.gif">';
$cool ='<IMG src="imagenes/emotikons/icon_cool.gif">';
$sad ='<IMG src="imagenes/emotikons/icon_sad.gif">';
$XS ='<IMG src="imagenes/emotikons/icon11.gif">';
$alien ='<IMG src="imagenes/emotikons/icon1.gif">';
$ok ='<IMG src="imagenes/emotikons/icon14.gif">';
$nubes ='<IMG src="imagenes/emotikons/icon4.gif">';
$_ ='<IMG src="imagenes/emotikons/icon8.gif">';
$Zzz ='<IMG src="imagenes/emotikons/icon6.gif">';
//AQUI SE REMPLAZA EL TEXTO, POR LA VARIABLE $subject2 EN EL TEXTO DEL message
$message str_replace(":cry:"$cry$message);
$message str_replace(":eek:"$eek$message);
$message str_replace(":evil:"$evil$message);
$message str_replace(":!:"$exclaim$message);
$message str_replace(":frown:"$frown$message);
$message str_replace(":idea:"$idea$message);
$message str_replace(":lol:"$lol$message);
$message str_replace(":mad:"$mad$message);
$message str_replace(":mrgreen:"$mrgreen$message);
$message str_replace(":neutral:"$neutral$message);
$message str_replace(":?:"$question$message);
$message str_replace(":razz:"$razz$message);
$message str_replace(":surpriced:"$surprised$message);
$message str_replace(":twisted:"$twisted$message);
$message str_replace(":wink:"$wink$message);
$message str_replace(":smile:"$smile$message);
$message str_replace(":redface:"$redface$message);
$message str_replace(":roll:"$rolleyes$message);
$message str_replace(":arrow:"$arrow$message);
$message str_replace(":biggrin:"$biggrin$message);
$message str_replace(":confused:"$confused$message);
$message str_replace("<img src="images/smilies/cool.gif" border="0" alt="">"$cool$message);
$message str_replace(":XS:"$XS$message);
$message str_replace(":nubes:"$nubes$message);
$message str_replace(":...:"$_$message);
$message str_replace("<img src="images/smilies/durmiendo.gif" border="0" alt="">"$Zzz$message);
$message str_replace(":ok:"$ok$message);
$message str_replace(":alien:"$alien$message);
} else
{
$cry =NULL;
$eek =NULL;
$evil =NULL;
$exclaim =NULL;
$frown =NULL;
$idea =NULL;
$lol =NULL;
$mad =NULL;
$mrgreen =NULL;
$neutral =NULL;
$question =NULL;
$razz =NULL;
$surprised =NULL;
$twisted =NULL;
$wink =NULL;
$smile =NULL;
$redface =NULL;
$rolleyes =NULL;
$arrow =NULL;
$biggrin =NULL;
$confused =NULL;
$cool =NULL;
$sad =NULL;
}
//Comandos para la fecha del mensaje en formato lejible


$MESmessage Date("m-y");
$DATE        Date("D-M-Y");
$fnews "<p><strong><font size=4>#TITLE#</font></strong><BR><small><font color=gray>#USER#  |  #DATE#  |   </font><br><br></small> #message#</p><br><br>";
$fnews str_replace("#TITLE#"$subject$fnews);
$fnews str_replace("#USER#"$subject2$fnews);
$fnews str_replace("#message#"$message$fnews);
$fnews str_replace("#DATE#"$DATE$fnews);
//ABRIMOS EL ARCHIVO O CREAMOS EL ARCHIVO DONDE IRAN LAS NEWS
//$fnews = sprintf("$newshtml", $title,$user,$date,$message); //talvez solo sea un comentario
//formato de las news que seran puestas en a pagina
$file fopen("$MESmessage" ".news","a+");
if (
$vprevia "SI") { $file2 fopen("temp/$DATE" ".temp","a+"); }
fputs ($file$fnews);
if (
$vprevia "SI") { fputs ($file2$fnews); }
if(
$file){   //este if me permite agregar otra noticia al mismo archivo de texto <img src="images/smilies/smile.gif" border="0" alt=""> TANKS ELITENEWS
fputs($file"\n\n");
if (
$vprevia "SI") { fputs ($file2"\n\n"); }
}
fclose ($file);
if (
$vprevia "SI") { fclose ($file2); }
?>
<FORM name=post action="mensaje.php" method="post">

          <TABLE cellSpacing=2 cellPadding=2 width="100%" align=center border=0>
          <TBODY>
          <TR>
          <TD align=left><SPAN class=nav><A class=nav href="http://emudojo.cjb.net">emudojo.cjb.net </A> -&gt; <A class=nav  href="http://emudojo.cjb.net/index.php">POST NEW <font color="#006699">-&gt; PREVIEW</font><font color="#CCCCCC">(Powered by POST-A-NEW-PHP ver 0.2aSilver)</font></A></SPAN></TD>
          </TR></TBODY></TABLE>

<TABLE class=forumline cellSpacing=1 cellPadding=3 width="100%" border=0>
<TBODY>
<TR background="imagenes/cellpic3.gif">
<TH height=25 colSpan=2 class=thHead><B>::Vista Previa del mensaje::</B></TH>
</TR>
<TR>
<TD colspan="2" class=row1><div align="center"><SPAN class=gen> </SPAN><SPAN class=gen></SPAN><SPAN class=gen><br>
            <br>
            <? if ($vprevia "SI") { include("temp/$DATE.temp"); } ?>
            <? if ($vprevia "SI") { echo "Posteo exitoso en temp"; } else { echo "ERROR POSTEANDO"; } ?>
            <br>
            <br>
            <br>
            </SPAN> </div></TD>
      </TR>
    </TBODY>
  </TABLE>
      <TABLE cellSpacing=2 cellPadding=2 width="100%" align=center border=0>
      <TBODY>
      <TR><? echo "Son las " Date("H") , " horas del mes  " Date("M") , " día " Date ("D") ,"  ",  Date("Y"); ?>

          <TD vAlign=top align=right><p align="center"> ::EL CONTENIDO DE LA CARPETA 
            TEMP SER&Aacute; ELIMINADO AL HACER ENVIAR::<br>
            <br>
            <input name="ENVIAR" type="submit" id="ENVIAR" value="::Enviar::">
          </p>
          <p align="left"></p><p></TD></TR></TBODY></TABLE></FORM></body></html>

ahora bien vean la pagina funcionando
emudodojo/mipost ;)

ahora como hago para ponberlas en orden 3-2-1, talvez con un ararray__

despues del proceeso simplemente voy al inde.php y ago un unclude dedl archivo

Código PHP:
include("$MESmessage" ".news"

lo hago de esta manera para que al pasar el mes se cambie de archivo por el dedl otro mes....


ayuda :cantar:
__________________
Siempre hay algo nuevo que aprender
  #2 (permalink)  
Antiguo 16/11/2002, 13:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Lee tu fichero a un array y ordena el array al reves:

Código PHP:
$fichero=file("elnombre_que_corresponda.new"); // aquí ya lo tienes en un array ...
$fichero=array_reverse($fichero); // ya está en orden inverso 
ahora .. solo lee ese array $fichero con un bucle linea a linea .. un foreach() mismo serviria ...

Un saludo,
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 17:11.